]> git.saurik.com Git - wxWidgets.git/blobdiff - src/mac/carbon/combobxc.cpp
use wxID_ANY for internal controller control instead of wxID_CHOICE/LIST/TOOLBAR...
[wxWidgets.git] / src / mac / carbon / combobxc.cpp
index fff4f2e43a18771a68343335469a6759cc415dfb..9a63c93e7094571e1fa775542edc53d37cdcff4d 100644 (file)
@@ -147,14 +147,10 @@ protected:
                 // This will invoke the dialog default action, such
                 // as the clicking the default button.
 
-                wxWindow *parent = GetParent();
-                while( parent && !parent->IsTopLevel() && parent->GetDefaultItem() == NULL ) {
-                    parent = parent->GetParent();
-                }
-                if ( parent && parent->GetDefaultItem() )
+                wxTopLevelWindow *tlw = wxDynamicCast(wxGetTopLevelParent(this), wxTopLevelWindow);
+                if ( tlw && tlw->GetDefaultItem() )
                 {
-                    wxButton *def = wxDynamicCast(parent->GetDefaultItem(),
-                                                          wxButton);
+                    wxButton *def = wxDynamicCast(tlw->GetDefaultItem(), wxButton);
                     if ( def && def->IsEnabled() )
                     {
                         wxCommandEvent event(wxEVT_COMMAND_BUTTON_CLICKED, def->GetId() );
@@ -403,9 +399,7 @@ bool wxComboBox::Create(wxWindow *parent, wxWindowID id,
         (EventHandlerRef *)&comboEventHandler);
 #else
     m_choice = new wxComboBoxChoice(this, style );
-
-    m_choice = new wxComboBoxChoice(this, style );
-    m_choice->SetSizeHints( wxSize( POPUPWIDTH , POPUPHEIGHT ) );
+    m_choice->SetMinSize( wxSize( POPUPWIDTH , POPUPHEIGHT ) );
 
     wxSize csize = size;
     if ( style & wxCB_READONLY )
@@ -426,7 +420,7 @@ bool wxComboBox::Create(wxWindow *parent, wxWindowID id,
     {
         m_choice->DoAppend( choices[ i ] );
     }
-    SetBestSize(csize);   // Needed because it is a wxControlWithItems
+    SetInitialSize(csize);   // Needed because it is a wxControlWithItems
 #endif
 
     return true;