forked from AuroraMiddleware/gtk
Added wrapping capabilities to GtkSpinButton. New function :
Sun Mar 29 22:29:00 1998 Tim Janik <timj@gtk.org> * gtk/gtkspinbutton.[ch] gtk/testgtk.c (gtk_spin_button_set_wrap): Added wrapping capabilities to GtkSpinButton. New function : gtk_spin_button_set_wrap (Lars Hamann and Stefan Jeske).
This commit is contained in:
parent
93e1585614
commit
2f5621e566
@ -1,3 +1,9 @@
|
||||
Sun Mar 29 22:29:00 1998 Tim Janik <timj@gtk.org>
|
||||
|
||||
* gtk/gtkspinbutton.[ch] gtk/testgtk.c (gtk_spin_button_set_wrap):
|
||||
Added wrapping capabilities to GtkSpinButton. New function :
|
||||
gtk_spin_button_set_wrap (Lars Hamann and Stefan Jeske).
|
||||
|
||||
Sat Mar 28 21:18:42 1998 Owen Taylor <owt1@cornell.edu>
|
||||
|
||||
* gtk/gtkcombo.c (gtk_combo_disable_activate):
|
||||
|
@ -1,3 +1,9 @@
|
||||
Sun Mar 29 22:29:00 1998 Tim Janik <timj@gtk.org>
|
||||
|
||||
* gtk/gtkspinbutton.[ch] gtk/testgtk.c (gtk_spin_button_set_wrap):
|
||||
Added wrapping capabilities to GtkSpinButton. New function :
|
||||
gtk_spin_button_set_wrap (Lars Hamann and Stefan Jeske).
|
||||
|
||||
Sat Mar 28 21:18:42 1998 Owen Taylor <owt1@cornell.edu>
|
||||
|
||||
* gtk/gtkcombo.c (gtk_combo_disable_activate):
|
||||
|
@ -1,3 +1,9 @@
|
||||
Sun Mar 29 22:29:00 1998 Tim Janik <timj@gtk.org>
|
||||
|
||||
* gtk/gtkspinbutton.[ch] gtk/testgtk.c (gtk_spin_button_set_wrap):
|
||||
Added wrapping capabilities to GtkSpinButton. New function :
|
||||
gtk_spin_button_set_wrap (Lars Hamann and Stefan Jeske).
|
||||
|
||||
Sat Mar 28 21:18:42 1998 Owen Taylor <owt1@cornell.edu>
|
||||
|
||||
* gtk/gtkcombo.c (gtk_combo_disable_activate):
|
||||
|
@ -1,3 +1,9 @@
|
||||
Sun Mar 29 22:29:00 1998 Tim Janik <timj@gtk.org>
|
||||
|
||||
* gtk/gtkspinbutton.[ch] gtk/testgtk.c (gtk_spin_button_set_wrap):
|
||||
Added wrapping capabilities to GtkSpinButton. New function :
|
||||
gtk_spin_button_set_wrap (Lars Hamann and Stefan Jeske).
|
||||
|
||||
Sat Mar 28 21:18:42 1998 Owen Taylor <owt1@cornell.edu>
|
||||
|
||||
* gtk/gtkcombo.c (gtk_combo_disable_activate):
|
||||
|
@ -1,3 +1,9 @@
|
||||
Sun Mar 29 22:29:00 1998 Tim Janik <timj@gtk.org>
|
||||
|
||||
* gtk/gtkspinbutton.[ch] gtk/testgtk.c (gtk_spin_button_set_wrap):
|
||||
Added wrapping capabilities to GtkSpinButton. New function :
|
||||
gtk_spin_button_set_wrap (Lars Hamann and Stefan Jeske).
|
||||
|
||||
Sat Mar 28 21:18:42 1998 Owen Taylor <owt1@cornell.edu>
|
||||
|
||||
* gtk/gtkcombo.c (gtk_combo_disable_activate):
|
||||
|
@ -1,3 +1,9 @@
|
||||
Sun Mar 29 22:29:00 1998 Tim Janik <timj@gtk.org>
|
||||
|
||||
* gtk/gtkspinbutton.[ch] gtk/testgtk.c (gtk_spin_button_set_wrap):
|
||||
Added wrapping capabilities to GtkSpinButton. New function :
|
||||
gtk_spin_button_set_wrap (Lars Hamann and Stefan Jeske).
|
||||
|
||||
Sat Mar 28 21:18:42 1998 Owen Taylor <owt1@cornell.edu>
|
||||
|
||||
* gtk/gtkcombo.c (gtk_combo_disable_activate):
|
||||
|
@ -1,3 +1,9 @@
|
||||
Sun Mar 29 22:29:00 1998 Tim Janik <timj@gtk.org>
|
||||
|
||||
* gtk/gtkspinbutton.[ch] gtk/testgtk.c (gtk_spin_button_set_wrap):
|
||||
Added wrapping capabilities to GtkSpinButton. New function :
|
||||
gtk_spin_button_set_wrap (Lars Hamann and Stefan Jeske).
|
||||
|
||||
Sat Mar 28 21:18:42 1998 Owen Taylor <owt1@cornell.edu>
|
||||
|
||||
* gtk/gtkcombo.c (gtk_combo_disable_activate):
|
||||
|
@ -162,6 +162,7 @@ gtk_spin_button_init (GtkSpinButton *spin_button)
|
||||
spin_button->timer_calls = 0;
|
||||
spin_button->digits = 0;
|
||||
spin_button->numeric = 0;
|
||||
spin_button->wrap = 0;
|
||||
}
|
||||
|
||||
void
|
||||
@ -759,21 +760,41 @@ gtk_spin_button_spin (GtkSpinButton *spin_button,
|
||||
gfloat step)
|
||||
{
|
||||
gfloat new_value = 0.0;
|
||||
|
||||
|
||||
g_return_if_fail (spin_button != NULL);
|
||||
g_return_if_fail (GTK_IS_SPIN_BUTTON (spin_button));
|
||||
|
||||
if (direction == GTK_ARROW_UP)
|
||||
{
|
||||
new_value = MIN (spin_button->adjustment->value + step,
|
||||
spin_button->adjustment->upper);
|
||||
new_value = spin_button->adjustment->value + step;
|
||||
if (spin_button->wrap)
|
||||
{
|
||||
if (spin_button->adjustment->value == spin_button->adjustment->upper)
|
||||
new_value = spin_button->adjustment->lower;
|
||||
else if (new_value > spin_button->adjustment->upper)
|
||||
new_value = spin_button->adjustment->upper;
|
||||
}
|
||||
else
|
||||
{
|
||||
new_value = MIN (new_value, spin_button->adjustment->upper);
|
||||
}
|
||||
}
|
||||
else if (direction == GTK_ARROW_DOWN)
|
||||
{
|
||||
new_value = MAX (spin_button->adjustment->value - step,
|
||||
spin_button->adjustment->lower);
|
||||
new_value = spin_button->adjustment->value - step;
|
||||
if (spin_button->wrap)
|
||||
{
|
||||
if (spin_button->adjustment->value == spin_button->adjustment->lower)
|
||||
new_value = spin_button->adjustment->upper;
|
||||
else if (new_value < spin_button->adjustment->lower)
|
||||
new_value = spin_button->adjustment->lower;
|
||||
}
|
||||
else
|
||||
{
|
||||
new_value = MAX (new_value, spin_button->adjustment->lower);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (new_value != spin_button->adjustment->value)
|
||||
gtk_adjustment_set_value (spin_button->adjustment, new_value);
|
||||
}
|
||||
@ -1100,3 +1121,13 @@ gtk_spin_button_insert_text (GtkEditable *editable,
|
||||
GTK_EDITABLE_CLASS (parent_class)->insert_text (editable, new_text,
|
||||
new_text_length, position);
|
||||
}
|
||||
|
||||
void
|
||||
gtk_spin_button_set_wrap (GtkSpinButton *spin_button,
|
||||
gint wrap)
|
||||
{
|
||||
g_return_if_fail (spin_button != NULL);
|
||||
g_return_if_fail (GTK_IS_SPIN_BUTTON (spin_button));
|
||||
|
||||
spin_button->wrap = (wrap != 0);
|
||||
}
|
||||
|
@ -11,7 +11,7 @@
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Library General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Library General Public
|
||||
@ -31,40 +31,40 @@
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif /* __cplusplus */
|
||||
|
||||
|
||||
#define GTK_SPIN_BUTTON(obj) GTK_CHECK_CAST (obj, gtk_spin_button_get_type (), GtkSpinButton)
|
||||
|
||||
|
||||
#define GTK_SPIN_BUTTON(obj) GTK_CHECK_CAST (obj, gtk_spin_button_get_type (), GtkSpinButton)
|
||||
#define GTK_SPIN_BUTTON_CLASS(klass) GTK_CHECK_CLASS_CAST (klass, gtk_spin_button_get_type (), GtkSpinButtonClass)
|
||||
#define GTK_IS_SPIN_BUTTON(obj) GTK_CHECK_TYPE (obj, gtk_spin_button_get_type ())
|
||||
|
||||
|
||||
#define GTK_IS_SPIN_BUTTON(obj) GTK_CHECK_TYPE (obj, gtk_spin_button_get_type ())
|
||||
|
||||
|
||||
typedef enum
|
||||
{
|
||||
GTK_UPDATE_ALWAYS = 1 << 0,
|
||||
GTK_UPDATE_IF_VALID = 1 << 1,
|
||||
GTK_UPDATE_ALWAYS = 1 << 0,
|
||||
GTK_UPDATE_IF_VALID = 1 << 1,
|
||||
GTK_UPDATE_SNAP_TO_TICKS = 1 << 2
|
||||
} GtkSpinButtonUpdatePolicy;
|
||||
|
||||
|
||||
typedef struct _GtkSpinButton GtkSpinButton;
|
||||
|
||||
|
||||
typedef struct _GtkSpinButton GtkSpinButton;
|
||||
typedef struct _GtkSpinButtonClass GtkSpinButtonClass;
|
||||
|
||||
|
||||
struct _GtkSpinButton
|
||||
{
|
||||
GtkEntry entry;
|
||||
|
||||
|
||||
GtkAdjustment *adjustment;
|
||||
|
||||
|
||||
GdkWindow *panel;
|
||||
|
||||
|
||||
guint32 timer;
|
||||
|
||||
|
||||
gfloat climb_rate;
|
||||
gfloat timer_step;
|
||||
|
||||
|
||||
guint8 update_policy;
|
||||
|
||||
|
||||
guint in_child : 2;
|
||||
guint click_child : 2;
|
||||
guint button : 2;
|
||||
@ -72,6 +72,7 @@ struct _GtkSpinButton
|
||||
guint timer_calls : 3;
|
||||
guint digits : 3;
|
||||
guint numeric : 1;
|
||||
guint wrap : 1;
|
||||
};
|
||||
|
||||
struct _GtkSpinButtonClass
|
||||
@ -79,42 +80,47 @@ struct _GtkSpinButtonClass
|
||||
GtkEntryClass parent_class;
|
||||
};
|
||||
|
||||
guint gtk_spin_button_get_type (void);
|
||||
guint gtk_spin_button_get_type (void);
|
||||
|
||||
void gtk_spin_button_construct (GtkSpinButton *spin_button,
|
||||
void gtk_spin_button_construct (GtkSpinButton *spin_button,
|
||||
GtkAdjustment *adjustment,
|
||||
gfloat climb_rate,
|
||||
gint digits);
|
||||
gfloat climb_rate,
|
||||
gint digits);
|
||||
|
||||
GtkWidget* gtk_spin_button_new (GtkAdjustment *adjustment,
|
||||
gfloat climb_rate,
|
||||
gint digits);
|
||||
GtkWidget* gtk_spin_button_new (GtkAdjustment *adjustment,
|
||||
gfloat climb_rate,
|
||||
gint digits);
|
||||
|
||||
void gtk_spin_button_set_adjustment (GtkSpinButton *spin_button,
|
||||
void gtk_spin_button_set_adjustment (GtkSpinButton *spin_button,
|
||||
GtkAdjustment *adjustment);
|
||||
|
||||
GtkAdjustment* gtk_spin_button_get_adjustment (GtkSpinButton *spin_button);
|
||||
GtkAdjustment* gtk_spin_button_get_adjustment (GtkSpinButton *spin_button);
|
||||
|
||||
void gtk_spin_button_set_digits (GtkSpinButton *spin_button,
|
||||
gint digits);
|
||||
void gtk_spin_button_set_digits (GtkSpinButton *spin_button,
|
||||
gint digits);
|
||||
|
||||
gfloat gtk_spin_button_get_value_as_float (GtkSpinButton *spin_button);
|
||||
|
||||
gint gtk_spin_button_get_value_as_int (GtkSpinButton *spin_button);
|
||||
|
||||
void gtk_spin_button_set_value (GtkSpinButton *spin_button,
|
||||
gfloat value);
|
||||
void gtk_spin_button_set_value (GtkSpinButton *spin_button,
|
||||
gfloat value);
|
||||
|
||||
void gtk_spin_button_set_update_policy (GtkSpinButton *spin_button,
|
||||
GtkSpinButtonUpdatePolicy policy);
|
||||
|
||||
void gtk_spin_button_set_numeric (GtkSpinButton *spin_button,
|
||||
gint numeric);
|
||||
void gtk_spin_button_set_numeric (GtkSpinButton *spin_button,
|
||||
gint numeric);
|
||||
|
||||
void gtk_spin_button_spin (GtkSpinButton *spin_button,
|
||||
guint direction,
|
||||
gfloat step);
|
||||
|
||||
guint direction,
|
||||
gfloat step);
|
||||
|
||||
void gtk_spin_button_set_wrap (GtkSpinButton *spin_button,
|
||||
gint wrap);
|
||||
|
||||
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
@ -2346,6 +2346,7 @@ create_spins ()
|
||||
adj = (GtkAdjustment *) gtk_adjustment_new (1.0, 1.0, 31.0, 1.0,
|
||||
5.0, 0.0);
|
||||
spinner = gtk_spin_button_new (adj, 0, 0);
|
||||
gtk_spin_button_set_wrap (GTK_SPIN_BUTTON (spinner), TRUE);
|
||||
gtk_box_pack_start (GTK_BOX (vbox2), spinner, FALSE, TRUE, 0);
|
||||
|
||||
vbox2 = gtk_vbox_new (FALSE, 0);
|
||||
@ -2358,6 +2359,7 @@ create_spins ()
|
||||
adj = (GtkAdjustment *) gtk_adjustment_new (1.0, 1.0, 12.0, 1.0,
|
||||
5.0, 0.0);
|
||||
spinner = gtk_spin_button_new (adj, 0, 0);
|
||||
gtk_spin_button_set_wrap (GTK_SPIN_BUTTON (spinner), TRUE);
|
||||
gtk_box_pack_start (GTK_BOX (vbox2), spinner, FALSE, TRUE, 0);
|
||||
|
||||
vbox2 = gtk_vbox_new (FALSE, 0);
|
||||
@ -2370,6 +2372,7 @@ create_spins ()
|
||||
adj = (GtkAdjustment *) gtk_adjustment_new (1998.0, 0.0, 2100.0,
|
||||
1.0, 100.0, 0.0);
|
||||
spinner = gtk_spin_button_new (adj, 0, 0);
|
||||
gtk_spin_button_set_wrap (GTK_SPIN_BUTTON (spinner), TRUE);
|
||||
gtk_widget_set_usize (spinner, 55, 0);
|
||||
gtk_box_pack_start (GTK_BOX (vbox2), spinner, FALSE, TRUE, 0);
|
||||
|
||||
@ -2393,6 +2396,7 @@ create_spins ()
|
||||
adj = (GtkAdjustment *) gtk_adjustment_new (0.0, -10000.0, 10000.0,
|
||||
0.5, 100.0, 0.0);
|
||||
spinner1 = gtk_spin_button_new (adj, 1.0, 2);
|
||||
gtk_spin_button_set_wrap (GTK_SPIN_BUTTON (spinner1), TRUE);
|
||||
gtk_widget_set_usize (spinner1, 100, 0);
|
||||
gtk_spin_button_set_update_policy (GTK_SPIN_BUTTON (spinner1),
|
||||
GTK_UPDATE_ALWAYS);
|
||||
@ -2407,6 +2411,7 @@ create_spins ()
|
||||
|
||||
adj = (GtkAdjustment *) gtk_adjustment_new (2, 1, 5, 1, 1, 0);
|
||||
spinner2 = gtk_spin_button_new (adj, 0.0, 0);
|
||||
gtk_spin_button_set_wrap (GTK_SPIN_BUTTON (spinner2), TRUE);
|
||||
gtk_signal_connect (GTK_OBJECT (adj), "value_changed",
|
||||
GTK_SIGNAL_FUNC (change_digits),
|
||||
(gpointer) spinner2);
|
||||
@ -2467,7 +2472,6 @@ create_spins ()
|
||||
gtk_widget_destroy (window);
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Cursors
|
||||
*/
|
||||
|
@ -2346,6 +2346,7 @@ create_spins ()
|
||||
adj = (GtkAdjustment *) gtk_adjustment_new (1.0, 1.0, 31.0, 1.0,
|
||||
5.0, 0.0);
|
||||
spinner = gtk_spin_button_new (adj, 0, 0);
|
||||
gtk_spin_button_set_wrap (GTK_SPIN_BUTTON (spinner), TRUE);
|
||||
gtk_box_pack_start (GTK_BOX (vbox2), spinner, FALSE, TRUE, 0);
|
||||
|
||||
vbox2 = gtk_vbox_new (FALSE, 0);
|
||||
@ -2358,6 +2359,7 @@ create_spins ()
|
||||
adj = (GtkAdjustment *) gtk_adjustment_new (1.0, 1.0, 12.0, 1.0,
|
||||
5.0, 0.0);
|
||||
spinner = gtk_spin_button_new (adj, 0, 0);
|
||||
gtk_spin_button_set_wrap (GTK_SPIN_BUTTON (spinner), TRUE);
|
||||
gtk_box_pack_start (GTK_BOX (vbox2), spinner, FALSE, TRUE, 0);
|
||||
|
||||
vbox2 = gtk_vbox_new (FALSE, 0);
|
||||
@ -2370,6 +2372,7 @@ create_spins ()
|
||||
adj = (GtkAdjustment *) gtk_adjustment_new (1998.0, 0.0, 2100.0,
|
||||
1.0, 100.0, 0.0);
|
||||
spinner = gtk_spin_button_new (adj, 0, 0);
|
||||
gtk_spin_button_set_wrap (GTK_SPIN_BUTTON (spinner), TRUE);
|
||||
gtk_widget_set_usize (spinner, 55, 0);
|
||||
gtk_box_pack_start (GTK_BOX (vbox2), spinner, FALSE, TRUE, 0);
|
||||
|
||||
@ -2393,6 +2396,7 @@ create_spins ()
|
||||
adj = (GtkAdjustment *) gtk_adjustment_new (0.0, -10000.0, 10000.0,
|
||||
0.5, 100.0, 0.0);
|
||||
spinner1 = gtk_spin_button_new (adj, 1.0, 2);
|
||||
gtk_spin_button_set_wrap (GTK_SPIN_BUTTON (spinner1), TRUE);
|
||||
gtk_widget_set_usize (spinner1, 100, 0);
|
||||
gtk_spin_button_set_update_policy (GTK_SPIN_BUTTON (spinner1),
|
||||
GTK_UPDATE_ALWAYS);
|
||||
@ -2407,6 +2411,7 @@ create_spins ()
|
||||
|
||||
adj = (GtkAdjustment *) gtk_adjustment_new (2, 1, 5, 1, 1, 0);
|
||||
spinner2 = gtk_spin_button_new (adj, 0.0, 0);
|
||||
gtk_spin_button_set_wrap (GTK_SPIN_BUTTON (spinner2), TRUE);
|
||||
gtk_signal_connect (GTK_OBJECT (adj), "value_changed",
|
||||
GTK_SIGNAL_FUNC (change_digits),
|
||||
(gpointer) spinner2);
|
||||
@ -2467,7 +2472,6 @@ create_spins ()
|
||||
gtk_widget_destroy (window);
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Cursors
|
||||
*/
|
||||
|
Loading…
Reference in New Issue
Block a user