diff options
author | Federico Mena Quintero <federico@nuclecu.unam.mx> | 1998-12-14 01:32:24 +0000 |
---|---|---|
committer | Arturo Espinosa <unammx@src.gnome.org> | 1998-12-14 01:32:24 +0000 |
commit | 3441c3f2c4ca299c3e94ceccba4b419f20ae3a07 (patch) | |
tree | 84ee4ab2e8c522cc34a67930cab641cedfe3808a /gtk/gtkwidget.c | |
parent | 113448e030fa5a554354ce8a77771d8de44d5b02 (diff) | |
download | gdk-pixbuf-3441c3f2c4ca299c3e94ceccba4b419f20ae3a07.tar.gz |
Added a "grab_focus" signal for widgets. When the signal is emitted, the
1998-12-13 Federico Mena Quintero <federico@nuclecu.unam.mx>
* gtk/gtkwidget.h (struct _GtkWidgetClass): Added a "grab_focus"
signal for widgets. When the signal is emitted, the widget will
grab the focus. This is needed to let the user press an
accelerator key in a dialog box and have the corresponding widget
be focused.
* gtk/gtkwidget.c (gtk_widget_class_init): Create the "grab_focus"
signal. The default handler is simply gtk_widget_grab_focus().
Diffstat (limited to 'gtk/gtkwidget.c')
-rw-r--r-- | gtk/gtkwidget.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/gtk/gtkwidget.c b/gtk/gtkwidget.c index 9a400079d..b0797fe66 100644 --- a/gtk/gtkwidget.c +++ b/gtk/gtkwidget.c @@ -52,6 +52,7 @@ enum { STYLE_SET, ADD_ACCELERATOR, REMOVE_ACCELERATOR, + GRAB_FOCUS, EVENT, BUTTON_PRESS_EVENT, BUTTON_RELEASE_EVENT, @@ -387,6 +388,13 @@ gtk_widget_class_init (GtkWidgetClass *klass) widget_signals[REMOVE_ACCELERATOR] = gtk_accel_group_create_remove (object_class->type, GTK_RUN_LAST, GTK_SIGNAL_OFFSET (GtkWidgetClass, remove_accelerator)); + widget_signals[GRAB_FOCUS] = + gtk_signal_new ("grab_focus", + GTK_RUN_FIRST, + object_class->type, + GTK_SIGNAL_OFFSET (GtkWidgetClass, grab_focus), + gtk_marshal_NONE__NONE, + GTK_TYPE_NONE, 0); widget_signals[EVENT] = gtk_signal_new ("event", GTK_RUN_LAST, @@ -721,6 +729,7 @@ gtk_widget_class_init (GtkWidgetClass *klass) klass->style_set = gtk_widget_style_set; klass->add_accelerator = (void*) gtk_accel_group_handle_add; klass->remove_accelerator = (void*) gtk_accel_group_handle_remove; + klass->grab_focus = gtk_widget_grab_focus; klass->event = NULL; klass->button_press_event = NULL; klass->button_release_event = NULL; |