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>(
        &self,
        f: F
    ) -> SignalHandlerId; fn connect_exclusive_notify<F: Fn(&Self) + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId; fn connect_touch_only_notify<F: Fn(&Self) + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId; }
Expand description

Required Methods

Returns the button number self listens for, or 0 if self reacts to any button press.

Returns

The button number, or 0 for any button

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

Returns

The current button number

Returns the event sequence currently interacting with self. This is only meaningful if GestureExt::is_active() returns true.

Returns

the current sequence

Gets whether a gesture is exclusive. For more information, see set_exclusive().

Returns

Whether the gesture is exclusive

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

Returns

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

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.

exclusive

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.

touch_only

whether self handles only touch events

Implementors