pub trait GestureSingleExt: 'static {
    // Required methods
    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§

source

fn button(&self) -> u32

Returns the button number @self listens for.

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

Returns

The button number, or 0 for any button

source

fn current_button(&self) -> u32

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

Returns

The current button number

source

fn current_sequence(&self) -> Option<EventSequence>

Returns the event sequence currently interacting with @self.

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

Returns

the current sequence

source

fn is_exclusive(&self) -> bool

Gets whether a gesture is exclusive.

For more information, see set_exclusive().

Returns

Whether the gesture is exclusive

source

fn is_touch_only(&self) -> bool

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

Returns

true if the gesture only handles touch events

source

fn set_button(&self, button: u32)

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

source

fn set_exclusive(&self, exclusive: bool)

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

source

fn set_touch_only(&self, touch_only: bool)

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.

touch_only

whether @self handles only touch events

source

fn connect_button_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId

source

fn connect_exclusive_notify<F: Fn(&Self) + 'static>( &self, f: F ) -> SignalHandlerId

source

fn connect_touch_only_notify<F: Fn(&Self) + 'static>( &self, f: F ) -> SignalHandlerId

Implementors§