]> git.saurik.com Git - wxWidgets.git/blobdiff - src/gtk/combobox.cpp
added our own implementation of strto[u]ll() if the system doesn't have one (patch...
[wxWidgets.git] / src / gtk / combobox.cpp
index 32123f67cc985df473d1772921aa980cb3d97cfa..1a4e40ce0f180a690c82d40264e2dd2b7fffbc50 100644 (file)
@@ -190,6 +190,9 @@ gtkcombobox_changed_callback( GtkWidget *WXUNUSED(widget), wxComboBox *combo )
 
     if (!combo->m_hasVMT) return;
 
+    if (combo->GetSelection() == -1)
+        return;
+
     wxCommandEvent event( wxEVT_COMMAND_COMBOBOX_SELECTED, combo->GetId() );
     event.SetInt( combo->GetSelection() );
     event.SetString( combo->GetStringSelection() );
@@ -197,6 +200,7 @@ gtkcombobox_changed_callback( GtkWidget *WXUNUSED(widget), wxComboBox *combo )
     combo->GetEventHandler()->ProcessEvent( event );
 }
 }
+
 #endif
 
 //-----------------------------------------------------------------------------
@@ -247,7 +251,6 @@ bool wxComboBox::Create( wxWindow *parent, wxWindowID id, const wxString& value,
 {
     m_ignoreNextUpdate = false;
     m_needParent = true;
-    m_acceptsFocus = true;
     m_prevSelection = 0;
 
     if (!PreCreation( parent, pos, size ) ||
@@ -345,6 +348,7 @@ bool wxComboBox::Create( wxWindow *parent, wxWindowID id, const wxString& value,
 
         g_signal_connect_after (m_widget, "changed",
                             G_CALLBACK (gtkcombobox_changed_callback), this);
+
     }
     else
 #endif
@@ -368,15 +372,9 @@ bool wxComboBox::Create( wxWindow *parent, wxWindowID id, const wxString& value,
                             this);
         g_signal_connect_after (entry, "changed",
                             G_CALLBACK (gtkcombo_text_changed_callback), this);
-
-        // This is required for tool bar support
-        // Doesn't currently work
-//        wxSize setsize = GetSize();
-//        gtk_widget_set_size_request( m_widget, setsize.x, setsize.y );
     }
 
-    SetBestSize(size); // need this too because this is a wxControlWithItems
-
+    SetInitialSize(size); // need this too because this is a wxControlWithItems
 
     return true;
 }