]> git.saurik.com Git - wxWidgets.git/blobdiff - src/gtk/slider.cpp
revert last commit, it re-introduces the first problem
[wxWidgets.git] / src / gtk / slider.cpp
index 6440262ee46dad1a5d2fd161d6a9914e1268c1e5..e620468043db971b2d1d1632f94c964fdcfe3ef7 100644 (file)
@@ -304,9 +304,10 @@ bool wxSlider::Create(wxWindow *parent,
     }
 
     if (style & wxSL_VERTICAL)
-        m_widget = gtk_vscale_new( (GtkAdjustment *) NULL );
+        m_widget = gtk_vscale_new( NULL );
     else
-        m_widget = gtk_hscale_new( (GtkAdjustment *) NULL );
+        m_widget = gtk_hscale_new( NULL );
+    g_object_ref(m_widget);
 
     gtk_scale_set_draw_value(GTK_SCALE (m_widget), (style & wxSL_LABELS) != 0);
     // Keep full precision in position value
@@ -357,6 +358,8 @@ void wxSlider::GTKSetValue(int value)
 void wxSlider::SetRange( int minValue, int maxValue )
 {
     m_blockScrollEvent = true;
+    if (minValue == maxValue)
+       maxValue++;
     gtk_range_set_range(GTK_RANGE (m_widget), minValue, maxValue);
     gtk_range_set_increments(GTK_RANGE (m_widget), 1, (maxValue - minValue + 9) / 10);
     m_blockScrollEvent = false;