GtkEventControllerKey — Event controller for key events
void | im-update | Run Last |
gboolean | key-pressed | Run Last |
void | key-released | Run Last |
gboolean | modifiers | Run Last |
GObject ╰── GtkEventController ╰── GtkEventControllerKey
#include <gtk/gtk.h>
GtkEventControllerKey is an event controller meant for situations where you need access to key events.
GtkEventController *
gtk_event_controller_key_new (void
);
Creates a new event controller that will handle key events.
a new GtkEventControllerKey
void gtk_event_controller_key_set_im_context (GtkEventControllerKey *controller
,GtkIMContext *im_context
);
Sets the input method context of the key controller
.
controller | ||
im_context |
GtkIMContext *
gtk_event_controller_key_get_im_context
(GtkEventControllerKey *controller
);
Gets the input method context of the key controller
.
controller |
gboolean gtk_event_controller_key_forward (GtkEventControllerKey *controller
,GtkWidget *widget
);
Forwards the current event of this controller
to a widget
.
This function can only be used in handlers for the “key-pressed”, “key-released” or “modifiers” signals.
controller | ||
widget |
whether the widget
handled the event
guint
gtk_event_controller_key_get_group (GtkEventControllerKey *controller
);
Gets the key group of the current event of this controller
. See gdk_key_event_get_group()
.
controller |
the key group
typedef struct _GtkEventControllerKey GtkEventControllerKey;
“im-update”
signalvoid user_function (GtkEventControllerKey *controller, gpointer user_data)
This signal is emitted whenever the input method context filters away a keypress and prevents the controller
receiving it. See gtk_event_controller_key_set_im_context()
and gtk_im_context_filter_keypress()
.
controller | the object which received the signal | |
user_data | user data set when the signal handler was connected. |
Flags: Run Last
“key-pressed”
signalgboolean user_function (GtkEventControllerKey *controller, guint keyval, guint keycode, GdkModifierType state, gpointer user_data)
This signal is emitted whenever a key is pressed.
controller | the object which received the signal. | |
keyval | the pressed key. | |
keycode | the raw code of the pressed key. | |
state | the bitmask, representing the state of modifier keys and pointer buttons. See GdkModifierType. | |
user_data | user data set when the signal handler was connected. |
TRUE
if the key press was handled, FALSE
otherwise.
Flags: Run Last
“key-released”
signalvoid user_function (GtkEventControllerKey *controller, guint keyval, guint keycode, GdkModifierType state, gpointer user_data)
This signal is emitted whenever a key is released.
controller | the object which received the signal. | |
keyval | the released key. | |
keycode | the raw code of the released key. | |
state | the bitmask, representing the state of modifier keys and pointer buttons. See GdkModifierType. | |
user_data | user data set when the signal handler was connected. |
Flags: Run Last
“modifiers”
signalgboolean user_function (GtkEventControllerKey *controller, GdkModifierType keyval, gpointer user_data)
This signal is emitted whenever the state of modifier keys and pointer buttons change.
controller | the object which received the signal. | |
keyval | the released key. | |
state | the bitmask, representing the new state of modifier keys and pointer buttons. See GdkModifierType. | |
user_data | user data set when the signal handler was connected. |
Flags: Run Last
© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer.gnome.org/gtk4/4.0/GtkEventControllerKey.html