]> git.saurik.com Git - wxWidgets.git/blobdiff - src/osx/carbon/combobox.cpp
keeping opaqueness and backgroundcolor in synch with bgstyle
[wxWidgets.git] / src / osx / carbon / combobox.cpp
index f8223c9108a79cc04d3c43045c6b802ac8e3c570..2662bb8bd0ef2aa8a532c58df99ee4c1befdd7f6 100644 (file)
@@ -11,7 +11,7 @@
 
 #include "wx/wxprec.h"
 
 
 #include "wx/wxprec.h"
 
-#if wxUSE_COMBOBOX
+#if wxUSE_COMBOBOX && wxOSX_USE_CARBON
 
 #include "wx/combobox.h"
 
 
 #include "wx/combobox.h"
 
@@ -25,8 +25,6 @@
 
 #include "wx/osx/private.h"
 
 
 #include "wx/osx/private.h"
 
-IMPLEMENT_DYNAMIC_CLASS(wxComboBox, wxControl)
-
 WX_DELEGATE_TO_CONTROL_CONTAINER(wxComboBox, wxControl)
 
 BEGIN_EVENT_TABLE(wxComboBox, wxControl)
 WX_DELEGATE_TO_CONTROL_CONTAINER(wxComboBox, wxControl)
 
 BEGIN_EVENT_TABLE(wxComboBox, wxControl)
@@ -59,10 +57,6 @@ public:
         m_cb = cb;
     }
 
         m_cb = cb;
     }
 
-    void ForwardEnableTextChangedEvents(bool enable)
-    {
-        EnableTextChangedEvents(enable);
-    }
 protected:
     void OnChar( wxKeyEvent& event )
     {
 protected:
     void OnChar( wxKeyEvent& event )
     {
@@ -234,17 +228,8 @@ wxComboBox::~wxComboBox()
     // delete the controls now, don't leave them alive even though they would
     // still be eventually deleted by our parent - but it will be too late, the
     // user code expects them to be gone now
     // delete the controls now, don't leave them alive even though they would
     // still be eventually deleted by our parent - but it will be too late, the
     // user code expects them to be gone now
-    if (m_text != NULL)
-    {
-        delete m_text;
-        m_text = NULL;
-    }
-
-    if (m_choice != NULL)
-    {
-        delete m_choice;
-        m_choice = NULL;
-    }
+    wxDELETE(m_text);
+    wxDELETE(m_choice);
 }
 
 // ----------------------------------------------------------------------------
 }
 
 // ----------------------------------------------------------------------------
@@ -475,10 +460,9 @@ void wxComboBox::SetEditable(bool editable)
     {
         m_text = new wxComboBoxText( this );
     }
     {
         m_text = new wxComboBoxText( this );
     }
-    else if ( ( m_text != NULL ) && !editable )
+    else if ( !editable )
     {
     {
-        delete m_text;
-        m_text = NULL;
+        wxDELETE(m_text);
     }
 
     int currentX, currentY;
     }
 
     int currentX, currentY;
@@ -686,4 +670,12 @@ bool wxComboBox::OSXHandleClicked( double WXUNUSED(timestampsec) )
     return true ;
 }
 
     return true ;
 }
 
-#endif // wxUSE_COMBOBOX
+wxTextWidgetImpl* wxComboBox::GetTextPeer() const
+{
+    if (m_text)
+        return m_text->GetTextPeer();
+
+    return NULL;
+}
+
+#endif // wxUSE_COMBOBOX && wxOSX_USE_CARBON