GtkEventController — Self-contained handler of series of events
GtkPropagationPhase | propagation-phase | Read / Write |
GtkWidget * | widget | Read / Write / Construct Only |
GObject ╰── GtkEventController ├── GtkEventControllerKey ├── GtkEventControllerMotion ├── GtkEventControllerScroll ├── GtkGesture ╰── GtkPadController
#include <gtk/gtk.h>
GtkEventController is a base, low-level implementation for event controllers. Those react to a series of GdkEvents, and possibly trigger actions as a consequence of those.
GtkPropagationPhase
gtk_event_controller_get_propagation_phase
(GtkEventController *controller
);
Gets the propagation phase at which controller
handles events.
controller |
the propagation phase
Since: 3.14
void gtk_event_controller_set_propagation_phase (GtkEventController *controller
,GtkPropagationPhase phase
);
Sets the propagation phase at which a controller handles events.
If phase
is GTK_PHASE_NONE
, no automatic event handling will be performed, but other additional gesture maintenance will. In that phase, the events can be managed by calling gtk_event_controller_handle_event()
.
controller | ||
phase | a propagation phase |
Since: 3.14
gboolean gtk_event_controller_handle_event (GtkEventController *controller
,const GdkEvent *event
);
Feeds an events into controller
, so it can be interpreted and the controller actions triggered.
controller | ||
event | a GdkEvent |
TRUE
if the event was potentially useful to trigger the controller action
Since: 3.14
GtkWidget *
gtk_event_controller_get_widget (GtkEventController *controller
);
Returns the GtkWidget this controller relates to.
controller |
Since: 3.14
void
gtk_event_controller_reset (GtkEventController *controller
);
Resets the controller
to a clean state. Every interaction the controller did through “handle-event” will be dropped at this point.
controller |
Since: 3.14
typedef struct _GtkEventController GtkEventController;
Describes the stage at which events are fed into a GtkEventController.
GTK_PHASE_NONE | Events are not delivered automatically. Those can be manually fed through | |
GTK_PHASE_CAPTURE | Events are delivered in the capture phase. The capture phase happens before the bubble phase, runs from the toplevel down to the event widget. This option should only be used on containers that might possibly handle events before their children do. | |
GTK_PHASE_BUBBLE | Events are delivered in the bubble phase. The bubble phase happens after the capture phase, and before the default handlers are run. This phase runs from the event widget, up to the toplevel. | |
GTK_PHASE_TARGET | Events are delivered in the default widget event handlers, note that widget implementations must chain up on button, motion, touch and grab broken handlers for controllers in this phase to be run. |
Since: 3.14
“propagation-phase”
property“propagation-phase” GtkPropagationPhase
The propagation phase at which this controller will handle events.
Owner: GtkEventController
Flags: Read / Write
Default value: GTK_PHASE_BUBBLE
Since: 3.14
© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer.gnome.org/gtk3/3.24/GtkEventController.html