pub trait GestureSingleExt: 'static {
    fn button(&self) -> u32;
fn current_button(&self) -> u32;
fn current_sequence(&self) -> Option<EventSequence>;
fn is_exclusive(&self) -> bool;
fn is_touch_only(&self) -> bool;
fn set_button(&self, button: u32);
fn set_exclusive(&self, exclusive: bool);
fn set_touch_only(&self, touch_only: bool);
fn connect_button_notify<F: Fn(&Self) + 'static>(
        f: F
    ) -> SignalHandlerId;
fn connect_exclusive_notify<F: Fn(&Self) + 'static>(
        f: F
    ) -> SignalHandlerId;
fn connect_touch_only_notify<F: Fn(&Self) + 'static>(
        f: F
    ) -> SignalHandlerId; }
Expand description

Required methods

Returns the button number @self listens for.

If this is 0, the gesture reacts to any button press.


The button number, or 0 for any button

Returns the button number currently interacting with @self, or 0 if there is none.


The current button number

Returns the event sequence currently interacting with @self.

This is only meaningful if GestureExt::is_active() returns true.


the current sequence

Gets whether a gesture is exclusive.

For more information, see set_exclusive().


Whether the gesture is exclusive

Returns true if the gesture is only triggered by touch events.


true if the gesture only handles touch events

Sets the button number @self listens to.

If non-0, every button press from a different button number will be ignored. Touch events implicitly match with button 1.


button number to listen to, or 0 for any button

Sets whether @self 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.


true to make @self exclusive

Sets whether to handle only touch events.

If @touch_only is true, @self will only handle events of type GDK_TOUCH_BEGIN, GDK_TOUCH_UPDATE or GDK_TOUCH_END. If false, mouse events will be handled too.


whether @self handles only touch events