From 2c91f15f6d20ec6087729fb4eafc8e882545869b Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Sun, 12 Aug 2018 03:26:35 +0200 Subject: spinbutton: Port bindings to use shortcuts --- gtk/gtkspinbutton.c | 32 ++++++++++++++------------------ 1 file changed, 14 insertions(+), 18 deletions(-) (limited to 'gtk/gtkspinbutton.c') diff --git a/gtk/gtkspinbutton.c b/gtk/gtkspinbutton.c index 548bac5f16..0176797f1e 100644 --- a/gtk/gtkspinbutton.c +++ b/gtk/gtkspinbutton.c @@ -30,7 +30,6 @@ #include "gtkspinbutton.h" #include "gtkadjustment.h" -#include "gtkbindings.h" #include "gtkbox.h" #include "gtkbutton.h" #include "gtkcssstylepropertyprivate.h" @@ -317,10 +316,10 @@ G_DEFINE_TYPE_WITH_CODE (GtkSpinButton, gtk_spin_button, GTK_TYPE_WIDGET, G_IMPLEMENT_INTERFACE (GTK_TYPE_CELL_EDITABLE, gtk_spin_button_cell_editable_init)) -#define add_spin_binding(binding_set, keyval, mask, scroll) \ - gtk_binding_entry_add_signal (binding_set, keyval, mask, \ - "change-value", 1, \ - GTK_TYPE_SCROLL_TYPE, scroll) +#define add_spin_binding(widget_class, keyval, mask, scroll) \ + gtk_widget_class_add_binding_signal (widget_class, keyval, mask, \ + "change-value", \ + "(i)", scroll) static gboolean @@ -347,7 +346,6 @@ gtk_spin_button_class_init (GtkSpinButtonClass *class) { GObjectClass *gobject_class = G_OBJECT_CLASS (class); GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (class); - GtkBindingSet *binding_set; gobject_class->finalize = gtk_spin_button_finalize; gobject_class->set_property = gtk_spin_button_set_property; @@ -545,18 +543,16 @@ gtk_spin_button_class_init (GtkSpinButtonClass *class) G_TYPE_NONE, 1, GTK_TYPE_SCROLL_TYPE); - binding_set = gtk_binding_set_by_class (class); - - add_spin_binding (binding_set, GDK_KEY_Up, 0, GTK_SCROLL_STEP_UP); - add_spin_binding (binding_set, GDK_KEY_KP_Up, 0, GTK_SCROLL_STEP_UP); - add_spin_binding (binding_set, GDK_KEY_Down, 0, GTK_SCROLL_STEP_DOWN); - add_spin_binding (binding_set, GDK_KEY_KP_Down, 0, GTK_SCROLL_STEP_DOWN); - add_spin_binding (binding_set, GDK_KEY_Page_Up, 0, GTK_SCROLL_PAGE_UP); - add_spin_binding (binding_set, GDK_KEY_Page_Down, 0, GTK_SCROLL_PAGE_DOWN); - add_spin_binding (binding_set, GDK_KEY_End, GDK_CONTROL_MASK, GTK_SCROLL_END); - add_spin_binding (binding_set, GDK_KEY_Home, GDK_CONTROL_MASK, GTK_SCROLL_START); - add_spin_binding (binding_set, GDK_KEY_Page_Up, GDK_CONTROL_MASK, GTK_SCROLL_END); - add_spin_binding (binding_set, GDK_KEY_Page_Down, GDK_CONTROL_MASK, GTK_SCROLL_START); + add_spin_binding (widget_class, GDK_KEY_Up, 0, GTK_SCROLL_STEP_UP); + add_spin_binding (widget_class, GDK_KEY_KP_Up, 0, GTK_SCROLL_STEP_UP); + add_spin_binding (widget_class, GDK_KEY_Down, 0, GTK_SCROLL_STEP_DOWN); + add_spin_binding (widget_class, GDK_KEY_KP_Down, 0, GTK_SCROLL_STEP_DOWN); + add_spin_binding (widget_class, GDK_KEY_Page_Up, 0, GTK_SCROLL_PAGE_UP); + add_spin_binding (widget_class, GDK_KEY_Page_Down, 0, GTK_SCROLL_PAGE_DOWN); + add_spin_binding (widget_class, GDK_KEY_End, GDK_CONTROL_MASK, GTK_SCROLL_END); + add_spin_binding (widget_class, GDK_KEY_Home, GDK_CONTROL_MASK, GTK_SCROLL_START); + add_spin_binding (widget_class, GDK_KEY_Page_Up, GDK_CONTROL_MASK, GTK_SCROLL_END); + add_spin_binding (widget_class, GDK_KEY_Page_Down, GDK_CONTROL_MASK, GTK_SCROLL_START); gtk_widget_class_set_accessible_type (widget_class, GTK_TYPE_SPIN_BUTTON_ACCESSIBLE); gtk_widget_class_set_layout_manager_type (widget_class, GTK_TYPE_BOX_LAYOUT); -- cgit v1.2.1