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, or 0 if self 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

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