]> git.saurik.com Git - wxWidgets.git/blobdiff - src/gtk/spinctrl.cpp
Store menus titles in menus themselves in wxOSX.
[wxWidgets.git] / src / gtk / spinctrl.cpp
index bae8e7ea5b27b68dd9e4b3d26c9359591a5cfc11..d84c02d39d8332aa960a4a0db4ee8881c18d0631 100644 (file)
@@ -185,7 +185,7 @@ double wxSpinCtrlGTKBase::DoGetIncrement() const
     wxCHECK_MSG( (m_widget != NULL), 0, wxT("invalid spin button") );
 
     double inc = 0;
     wxCHECK_MSG( (m_widget != NULL), 0, wxT("invalid spin button") );
 
     double inc = 0;
-    gtk_spin_button_get_increments( GTK_SPIN_BUTTON(m_widget), NULL, &inc);
+    gtk_spin_button_get_increments( GTK_SPIN_BUTTON(m_widget), &inc, NULL);
     return inc;
 }
 
     return inc;
 }
 
@@ -218,9 +218,6 @@ void wxSpinCtrlGTKBase::DoSetValue( double value )
 {
     wxCHECK_RET( (m_widget != NULL), wxT("invalid spin button") );
 
 {
     wxCHECK_RET( (m_widget != NULL), wxT("invalid spin button") );
 
-    if (wxIsKindOf(this, wxSpinCtrl))
-        value = wxRound( value );
-
     GtkDisableEvents();
     gtk_spin_button_set_value( GTK_SPIN_BUTTON(m_widget), value);
     GtkEnableEvents();
     GtkDisableEvents();
     gtk_spin_button_set_value( GTK_SPIN_BUTTON(m_widget), value);
     GtkEnableEvents();
@@ -260,7 +257,12 @@ void wxSpinCtrlGTKBase::DoSetIncrement(double inc)
     wxCHECK_RET( m_widget, "invalid spin button" );
 
     GtkDisableEvents();
     wxCHECK_RET( m_widget, "invalid spin button" );
 
     GtkDisableEvents();
-    gtk_spin_button_set_increments( GTK_SPIN_BUTTON(m_widget), inc, 10*inc);
+
+    // Preserve the old page value when changing just the increment.
+    double page = 10*inc;
+    gtk_spin_button_get_increments( GTK_SPIN_BUTTON(m_widget), NULL, &page);
+
+    gtk_spin_button_set_increments( GTK_SPIN_BUTTON(m_widget), inc, page);
     GtkEnableEvents();
 }
 
     GtkEnableEvents();
 }