]> git.saurik.com Git - wxWidgets.git/blobdiff - src/gtk/button.cpp
add code for debugging sizers/window sizes; it may be very useful for other purposes...
[wxWidgets.git] / src / gtk / button.cpp
index 331298c3833a507b2aa83f0b87dfbf814d54f778..086159189ad1dbdf40149bde8b7f78d3b6ac9369 100644 (file)
@@ -216,11 +216,18 @@ void wxButton::SetLabel( const wxString &lbl )
 
 bool wxButton::Enable( bool enable )
 {
+    bool isEnabled = IsEnabled();
+
     if ( !wxControl::Enable( enable ) )
         return false;
 
     gtk_widget_set_sensitive(GTK_BIN(m_widget)->child, enable);
 
+    if (!isEnabled && enable)
+    {
+        GTKFixSensitivity();
+    }
+
     return true;
 }
 
@@ -242,9 +249,11 @@ void wxButton::DoApplyWidgetStyle(GtkRcStyle *style)
         GtkWidget *box = GTK_BIN(child)->child;
         if ( GTK_IS_BOX(box) )
         {
-            GList *items = gtk_container_get_children(GTK_CONTAINER(box));
-            for ( GList *item = items; item; item = item->next )
-                gtk_widget_modify_style(GTK_WIDGET(item->data), style);
+            for (GList* item = GTK_BOX(box)->children; item; item = item->next)
+            {
+                GtkBoxChild* boxChild = static_cast<GtkBoxChild*>(item->data);
+                gtk_widget_modify_style(boxChild->widget, style);
+            }
         }
     }
 }