summaryrefslogtreecommitdiff
path: root/gtk/gtkspinbutton.c
diff options
context:
space:
mode:
authorOwen Taylor <otaylor@redhat.com>2002-09-24 10:39:23 +0000
committerOwen Taylor <otaylor@src.gnome.org>2002-09-24 10:39:23 +0000
commit3a93889c3cd3fa1a91d30255f840015b92018660 (patch)
treedf758e9d24770a0e10917f41993c8ec82ada32cc /gtk/gtkspinbutton.c
parent9fac16e36603935a2bb8d4cb9718ec74ccf5564f (diff)
downloadgtk+-3a93889c3cd3fa1a91d30255f840015b92018660.tar.gz
Remove the check for editable. (Reported by Brent Fox)
Thu Aug 8 16:58:22 2002 Owen Taylor <otaylor@redhat.com> * gtk/gtkspinbutton.c (gtk_spin_button_real_change_value): Remove the check for editable. (Reported by Brent Fox)
Diffstat (limited to 'gtk/gtkspinbutton.c')
-rw-r--r--gtk/gtkspinbutton.c138
1 files changed, 70 insertions, 68 deletions
diff --git a/gtk/gtkspinbutton.c b/gtk/gtkspinbutton.c
index ac12478a16..d9922f997c 100644
--- a/gtk/gtkspinbutton.c
+++ b/gtk/gtkspinbutton.c
@@ -1220,81 +1220,83 @@ static void
gtk_spin_button_real_change_value (GtkSpinButton *spin,
GtkScrollType scroll)
{
- if (GTK_ENTRY (spin)->editable)
+ /* We don't test whether the entry is editable, since
+ * this key binding conceptually corresponds to changing
+ * the value with the buttons using the mouse, which
+ * we allow for non-editable spin buttons.
+ */
+ switch (scroll)
{
- switch (scroll)
- {
- case GTK_SCROLL_STEP_BACKWARD:
- case GTK_SCROLL_STEP_DOWN:
- case GTK_SCROLL_STEP_LEFT:
- gtk_spin_button_real_spin (spin, -spin->timer_step);
-
- if (spin->climb_rate > 0.0 && spin->timer_step
- < spin->adjustment->page_increment)
+ case GTK_SCROLL_STEP_BACKWARD:
+ case GTK_SCROLL_STEP_DOWN:
+ case GTK_SCROLL_STEP_LEFT:
+ gtk_spin_button_real_spin (spin, -spin->timer_step);
+
+ if (spin->climb_rate > 0.0 && spin->timer_step
+ < spin->adjustment->page_increment)
+ {
+ if (spin->timer_calls < MAX_TIMER_CALLS)
+ spin->timer_calls++;
+ else
{
- if (spin->timer_calls < MAX_TIMER_CALLS)
- spin->timer_calls++;
- else
- {
- spin->timer_calls = 0;
- spin->timer_step += spin->climb_rate;
- }
+ spin->timer_calls = 0;
+ spin->timer_step += spin->climb_rate;
}
- break;
-
- case GTK_SCROLL_STEP_FORWARD:
- case GTK_SCROLL_STEP_UP:
- case GTK_SCROLL_STEP_RIGHT:
- gtk_spin_button_real_spin (spin, spin->timer_step);
-
- if (spin->climb_rate > 0.0 && spin->timer_step
- < spin->adjustment->page_increment)
+ }
+ break;
+
+ case GTK_SCROLL_STEP_FORWARD:
+ case GTK_SCROLL_STEP_UP:
+ case GTK_SCROLL_STEP_RIGHT:
+ gtk_spin_button_real_spin (spin, spin->timer_step);
+
+ if (spin->climb_rate > 0.0 && spin->timer_step
+ < spin->adjustment->page_increment)
+ {
+ if (spin->timer_calls < MAX_TIMER_CALLS)
+ spin->timer_calls++;
+ else
{
- if (spin->timer_calls < MAX_TIMER_CALLS)
- spin->timer_calls++;
- else
- {
- spin->timer_calls = 0;
- spin->timer_step += spin->climb_rate;
- }
+ spin->timer_calls = 0;
+ spin->timer_step += spin->climb_rate;
}
- break;
-
- case GTK_SCROLL_PAGE_BACKWARD:
- case GTK_SCROLL_PAGE_DOWN:
- case GTK_SCROLL_PAGE_LEFT:
- gtk_spin_button_real_spin (spin, -spin->adjustment->page_increment);
- break;
-
- case GTK_SCROLL_PAGE_FORWARD:
- case GTK_SCROLL_PAGE_UP:
- case GTK_SCROLL_PAGE_RIGHT:
- gtk_spin_button_real_spin (spin, spin->adjustment->page_increment);
- break;
-
- case GTK_SCROLL_START:
- {
- gdouble diff = spin->adjustment->value - spin->adjustment->lower;
- if (diff > EPSILON)
- gtk_spin_button_real_spin (spin, -diff);
- break;
- }
-
- case GTK_SCROLL_END:
- {
- gdouble diff = spin->adjustment->upper - spin->adjustment->value;
- if (diff > EPSILON)
- gtk_spin_button_real_spin (spin, diff);
- break;
- }
-
- default:
- g_warning ("Invalid scroll type %d for GtkSpinButton::change-value", scroll);
- break;
- }
+ }
+ break;
+
+ case GTK_SCROLL_PAGE_BACKWARD:
+ case GTK_SCROLL_PAGE_DOWN:
+ case GTK_SCROLL_PAGE_LEFT:
+ gtk_spin_button_real_spin (spin, -spin->adjustment->page_increment);
+ break;
+
+ case GTK_SCROLL_PAGE_FORWARD:
+ case GTK_SCROLL_PAGE_UP:
+ case GTK_SCROLL_PAGE_RIGHT:
+ gtk_spin_button_real_spin (spin, spin->adjustment->page_increment);
+ break;
+
+ case GTK_SCROLL_START:
+ {
+ gdouble diff = spin->adjustment->value - spin->adjustment->lower;
+ if (diff > EPSILON)
+ gtk_spin_button_real_spin (spin, -diff);
+ break;
+ }
- gtk_spin_button_update (spin);
+ case GTK_SCROLL_END:
+ {
+ gdouble diff = spin->adjustment->upper - spin->adjustment->value;
+ if (diff > EPSILON)
+ gtk_spin_button_real_spin (spin, diff);
+ break;
+ }
+
+ default:
+ g_warning ("Invalid scroll type %d for GtkSpinButton::change-value", scroll);
+ break;
}
+
+ gtk_spin_button_update (spin);
}
static gint