GestureSingle#
Superclasses: Gesture
, EventController
, Object
Subclasses: DragSource
, GestureClick
, GestureDrag
, GestureLongPress
, GestureStylus
, GestureSwipe
GtkGestureSingle
is a GtkGestures
subclass optimized for singe-touch
and mouse gestures.
Under interaction, these gestures stick to the first interacting sequence,
which is accessible through get_current_sequence
while the gesture is being interacted with.
By default gestures react to both %GDK_BUTTON_PRIMARY
and touch events.
set_touch_only
can be used to change the
touch behavior. Callers may also specify a different mouse button number
to interact with through set_button
, or react
to any mouse button by setting it to 0. While the gesture is active, the
button being currently pressed can be known through
get_current_button
.
Methods#
- class GestureSingle
- get_button() int #
Returns the button number
gesture
listens for.If this is 0, the gesture reacts to any button press.
- get_current_button() int #
Returns the button number currently interacting with
gesture
, or 0 if there is none.
- get_current_sequence() EventSequence | None #
Returns the event sequence currently interacting with
gesture
.This is only meaningful if
is_active
returnsTrue
.
- get_exclusive() bool #
Gets whether a gesture is exclusive.
For more information, see
set_exclusive
.
- set_button(button: int) None #
Sets the button number
gesture
listens to.If non-0, every button press from a different button number will be ignored. Touch events implicitly match with button 1.
- Parameters:
button – button number to listen to, or 0 for any button
- set_exclusive(exclusive: bool) None #
Sets whether
gesture
is exclusive.An exclusive gesture will only handle pointer and “pointer emulated” touch events, so at any given time, there is only one sequence able to interact with those.
- Parameters:
exclusive –
True
to makegesture
exclusive
- set_touch_only(touch_only: bool) None #
Sets whether to handle only touch events.
If
touch_only
isTrue
,gesture
will only handle events of type%GDK_TOUCH_BEGIN
,%GDK_TOUCH_UPDATE
or%GDK_TOUCH_END
. IfFalse
, mouse events will be handled too.- Parameters:
touch_only – whether
gesture
handles only touch events