]> git.saurik.com Git - wxWidgets.git/blobdiff - src/gtk/slider.cpp
Fox around a bug in GTK's GtkNotebook
[wxWidgets.git] / src / gtk / slider.cpp
index 0fa63e404e4a713fdd57bd7820d146e74617ea9d..e7f36d0c4ce00226eb5ddbceb887c2ce9fb0f890 100644 (file)
@@ -102,15 +102,38 @@ bool wxSlider::Create(wxWindow *parent, wxWindowID id,
     m_oldPos = 0.0;
 
     if (style & wxSL_VERTICAL)
-        m_widget = gtk_hscale_new( (GtkAdjustment *) NULL );
-    else
         m_widget = gtk_vscale_new( (GtkAdjustment *) NULL );
+    else
+        m_widget = gtk_hscale_new( (GtkAdjustment *) NULL );
     
     if (style & wxSL_LABELS)
+    {
         gtk_scale_set_draw_value( GTK_SCALE( m_widget ), TRUE );
+       
+       /* labels need more space and too small window will
+          cause junk to appear on the dialog */
+        if (style & wxSL_VERTICAL)
+       {
+           wxSize sz( size );
+           if (sz.x < 35)
+           {
+               sz.x = 35;
+               SetSize( sz );
+           }
+       }
+        else
+       {
+           wxSize sz( size );
+           if (sz.y < 35)
+           {
+               sz.y = 35;
+               SetSize( sz );
+           }
+       }
+    }
     else
         gtk_scale_set_draw_value( GTK_SCALE( m_widget ), FALSE );
-  
+
     m_adjust = gtk_range_get_adjustment( GTK_RANGE(m_widget) );
   
     gtk_signal_connect( GTK_OBJECT(m_adjust),