diff options
author | Havoc Pennington <hp@redhat.com> | 2001-06-05 20:07:02 +0000 |
---|---|---|
committer | Havoc Pennington <hp@src.gnome.org> | 2001-06-05 20:07:02 +0000 |
commit | b32e7c9bb82396e4930957bb649a2e1cd57f00c1 (patch) | |
tree | b95893653c899c31699a91803eebeb1e934e7f1e /gtk/gtkspinbutton.c | |
parent | 451b224324864047842dfe009834a0fe53728147 (diff) | |
download | gdk-pixbuf-b32e7c9bb82396e4930957bb649a2e1cd57f00c1.tar.gz |
clamp the value to the range that was set
2001-06-05 Havoc Pennington <hp@redhat.com>
* gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value
to the range that was set
* gtk/gtkrange.c: add value_changed signal, primarily
intended for use with GtkScale
(gtk_range_set_increments): new function
(gtk_range_set_range): new function with weird name
(gtk_range_set_value): new function
(gtk_range_get_value): new function
* gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename
from gtk_spin_button_get_value_as_float(). Compat #define
added for get_value_as_float.
* gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
* gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
2001-06-05 Havoc Pennington <hp@redhat.com>
* test-loaders.c (main): use putenv not setenv, reported by
Armin Theissen
Diffstat (limited to 'gtk/gtkspinbutton.c')
-rw-r--r-- | gtk/gtkspinbutton.c | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/gtk/gtkspinbutton.c b/gtk/gtkspinbutton.c index d1605a827..76cea643e 100644 --- a/gtk/gtkspinbutton.c +++ b/gtk/gtkspinbutton.c @@ -1685,22 +1685,33 @@ gtk_spin_button_set_range (GtkSpinButton *spin_button, gdouble min, gdouble max) { + gdouble value; + g_return_if_fail (GTK_IS_SPIN_BUTTON (spin_button)); spin_button->adjustment->lower = min; spin_button->adjustment->upper = max; + + value = CLAMP (spin_button->adjustment->value, + spin_button->adjustment->lower, + (spin_button->adjustment->upper - spin_button->adjustment->page_size)); + + if (value != spin_button->adjustment->value) + gtk_spin_button_set_value (spin_button, value); + + gtk_adjustment_changed (spin_button->adjustment); } /** - * gtk_spin_button_get_value_as_float: + * gtk_spin_button_get_value: * @spin_button: a #GtkSpinButton * - * Get the value @spin_button represented as a floating point number. + * Get the value in the @spin_button. * * Return value: the value of @spin_button **/ gdouble -gtk_spin_button_get_value_as_float (GtkSpinButton *spin_button) +gtk_spin_button_get_value (GtkSpinButton *spin_button) { g_return_val_if_fail (GTK_IS_SPIN_BUTTON (spin_button), 0.0); |