From 7d48c3b2c7fa73c0496eb2e53634b7f9d418b83e Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Tue, 13 Aug 2013 19:06:48 -0400 Subject: [PATCH] Add a function to get the event type This is useful for language bindings, who can't easily access the struct field directly. https://bugzilla.gnome.org/show_bug.cgi?id=700029 --- docs/reference/gdk/gdk3-sections.txt | 1 + gdk/gdkevents.c | 18 ++++++++++++++++++ gdk/gdkevents.h | 7 +++++-- 3 files changed, 24 insertions(+), 2 deletions(-) diff --git a/docs/reference/gdk/gdk3-sections.txt b/docs/reference/gdk/gdk3-sections.txt index e8568f023e..38ac877d2d 100644 --- a/docs/reference/gdk/gdk3-sections.txt +++ b/docs/reference/gdk/gdk3-sections.txt @@ -808,6 +808,7 @@ gdk_event_get_scroll_direction gdk_event_get_scroll_deltas gdk_event_get_state gdk_event_get_time +gdk_event_get_type GdkEventSequence gdk_event_get_event_sequence gdk_event_request_motions diff --git a/gdk/gdkevents.c b/gdk/gdkevents.c index 4a9d0b965a..43e45d77a8 100644 --- a/gdk/gdkevents.c +++ b/gdk/gdkevents.c @@ -2184,3 +2184,21 @@ gdk_setting_get (const gchar *name, { return gdk_screen_get_setting (gdk_screen_get_default (), name, value); } + +/** + * gdk_event_get_event_type: + * @event: a #GdkEvent + * + * Retrieves the type of the event. + * + * Return value: a #GdkEventType + * + * Since: 3.10 + */ +GdkEventType +gdk_event_get_event_type (const GdkEvent *event) +{ + g_return_val_if_fail (event != NULL, GDK_NOTHING); + + return event->type; +} diff --git a/gdk/gdkevents.h b/gdk/gdkevents.h index 77e15b03b5..4cd2d55db1 100644 --- a/gdk/gdkevents.h +++ b/gdk/gdkevents.h @@ -1289,6 +1289,9 @@ GdkScreen *gdk_event_get_screen (const GdkEvent *event); GDK_AVAILABLE_IN_3_4 GdkEventSequence *gdk_event_get_event_sequence (const GdkEvent *event); +GDK_AVAILABLE_IN_3_10 +GdkEventType gdk_event_get_event_type (const GdkEvent *event); + GDK_AVAILABLE_IN_ALL void gdk_set_show_events (gboolean show_events); GDK_AVAILABLE_IN_ALL @@ -1297,8 +1300,8 @@ gboolean gdk_get_show_events (void); #ifndef GDK_MULTIHEAD_SAFE GDK_AVAILABLE_IN_ALL -gboolean gdk_setting_get (const gchar *name, - GValue *value); +gboolean gdk_setting_get (const gchar *name, + GValue *value); #endif /* GDK_MULTIHEAD_SAFE */