Struct gtk::EventControllerScroll 
source · [−]#[repr(transparent)]pub struct EventControllerScroll { /* private fields */ }v3_24 only.Expand description
EventControllerScroll is an event controller meant to handle
scroll events from mice and touchpads. It is capable of handling
both discrete and continuous scroll events, abstracting them both
on the signal::EventControllerScroll::scroll signal (deltas in the
discrete case are multiples of 1).
In the case of continuous scroll events, EventControllerScroll
encloses all signal::EventControllerScroll::scroll events between two
signal::EventControllerScroll::scroll-begin and signal::EventControllerScroll::scroll-end
signals.
The behavior of the event controller can be modified by the
flags given at creation time, or modified at a later point through
set_flags() (e.g. because the scrolling
conditions of the widget changed).
The controller can be set up to emit motion for either/both vertical
and horizontal scroll events through EventControllerScrollFlags::VERTICAL,
EventControllerScrollFlags::HORIZONTAL and GTK_EVENT_CONTROLLER_SCROLL_BOTH.
If any axis is disabled, the respective signal::EventControllerScroll::scroll
delta will be 0. Vertical scroll events will be translated to horizontal
motion for the devices incapable of horizontal scrolling.
The event controller can also be forced to emit discrete events on all devices
through EventControllerScrollFlags::DISCRETE. This can be used to implement
discrete actions triggered through scroll events (e.g. switching across
combobox options).
The EventControllerScrollFlags::KINETIC flag toggles the emission of the
signal::EventControllerScroll::decelerate signal, emitted at the end of scrolling
with two X/Y velocity arguments that are consistent with the motion that
was received.
This object was added in 3.24.
Implements
Implementations
sourceimpl EventControllerScroll
 
impl EventControllerScroll
sourcepub fn new(
    widget: &impl IsA<Widget>,
    flags: EventControllerScrollFlags
) -> EventControllerScroll
 
pub fn new(
    widget: &impl IsA<Widget>,
    flags: EventControllerScrollFlags
) -> EventControllerScroll
Creates a new event controller that will handle scroll events
for the given widget.
widget
a Widget
flags
behavior flags
Returns
a new EventControllerScroll
sourcepub fn flags(&self) -> EventControllerScrollFlags
 
pub fn flags(&self) -> EventControllerScrollFlags
sourcepub fn set_flags(&self, flags: EventControllerScrollFlags)
 
pub fn set_flags(&self, flags: EventControllerScrollFlags)
sourcepub fn connect_decelerate<F: Fn(&Self, f64, f64) + 'static>(
    &self,
    f: F
) -> SignalHandlerId
 
pub fn connect_decelerate<F: Fn(&Self, f64, f64) + 'static>(
    &self,
    f: F
) -> SignalHandlerId
Emitted after scroll is finished if the EventControllerScrollFlags::KINETIC
flag is set. vel_x and vel_y express the initial velocity that was
imprinted by the scroll events. vel_x and vel_y are expressed in
pixels/ms.
vel_x
X velocity
vel_y
Y velocity
sourcepub fn connect_scroll<F: Fn(&Self, f64, f64) + 'static>(
    &self,
    f: F
) -> SignalHandlerId
 
pub fn connect_scroll<F: Fn(&Self, f64, f64) + 'static>(
    &self,
    f: F
) -> SignalHandlerId
sourcepub fn connect_scroll_begin<F: Fn(&Self) + 'static>(
    &self,
    f: F
) -> SignalHandlerId
 
pub fn connect_scroll_begin<F: Fn(&Self) + 'static>(
    &self,
    f: F
) -> SignalHandlerId
Signals that a new scrolling operation has begun. It will only be emitted on devices capable of it.
sourcepub fn connect_scroll_end<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId
 
pub fn connect_scroll_end<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerId
Signals that a new scrolling operation has finished. It will only be emitted on devices capable of it.
pub fn connect_flags_notify<F: Fn(&Self) + 'static>(
    &self,
    f: F
) -> SignalHandlerId
Trait Implementations
sourceimpl Clone for EventControllerScroll
 
impl Clone for EventControllerScroll
sourceimpl Debug for EventControllerScroll
 
impl Debug for EventControllerScroll
sourceimpl Display for EventControllerScroll
 
impl Display for EventControllerScroll
sourceimpl Hash for EventControllerScroll
 
impl Hash for EventControllerScroll
sourceimpl Ord for EventControllerScroll
 
impl Ord for EventControllerScroll
1.21.0 · sourceconst fn max(self, other: Self) -> Self
 
const fn max(self, other: Self) -> Self
1.21.0 · sourceconst fn min(self, other: Self) -> Self
 
const fn min(self, other: Self) -> Self
1.50.0 · sourceconst fn clamp(self, min: Self, max: Self) -> Selfwhere
    Self: PartialOrd<Self>,
 
const fn clamp(self, min: Self, max: Self) -> Selfwhere
    Self: PartialOrd<Self>,
sourceimpl ParentClassIs for EventControllerScroll
 
impl ParentClassIs for EventControllerScroll
type Parent = EventController
sourceimpl<OT: ObjectType> PartialEq<OT> for EventControllerScroll
 
impl<OT: ObjectType> PartialEq<OT> for EventControllerScroll
sourceimpl<OT: ObjectType> PartialOrd<OT> for EventControllerScroll
 
impl<OT: ObjectType> PartialOrd<OT> for EventControllerScroll
sourcefn partial_cmp(&self, other: &OT) -> Option<Ordering>
 
fn partial_cmp(&self, other: &OT) -> Option<Ordering>
1.0.0 · sourceconst fn le(&self, other: &Rhs) -> bool
 
const fn le(&self, other: &Rhs) -> bool
self and other) and is used by the <=
operator. Read moresourceimpl StaticType for EventControllerScroll
 
impl StaticType for EventControllerScroll
sourcefn static_type() -> Type
 
fn static_type() -> Type
Self.impl Eq for EventControllerScroll
impl IsA<EventController> for EventControllerScroll
Auto Trait Implementations
impl RefUnwindSafe for EventControllerScroll
impl !Send for EventControllerScroll
impl !Sync for EventControllerScroll
impl Unpin for EventControllerScroll
impl UnwindSafe for EventControllerScroll
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
    T: ?Sized,
 
impl<T> BorrowMut<T> for Twhere
    T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
 
fn borrow_mut(&mut self) -> &mut T
sourceimpl<T> Cast for Twhere
    T: ObjectType,
 
impl<T> Cast for Twhere
    T: ObjectType,
sourcefn upcast<T>(self) -> Twhere
    T: ObjectType,
    Self: IsA<T>,
 
fn upcast<T>(self) -> Twhere
    T: ObjectType,
    Self: IsA<T>,
T. Read moresourcefn upcast_ref<T>(&self) -> &Twhere
    T: ObjectType,
    Self: IsA<T>,
 
fn upcast_ref<T>(&self) -> &Twhere
    T: ObjectType,
    Self: IsA<T>,
T. Read moresourcefn downcast<T>(self) -> Result<T, Self>where
    T: ObjectType,
    Self: CanDowncast<T>,
 
fn downcast<T>(self) -> Result<T, Self>where
    T: ObjectType,
    Self: CanDowncast<T>,
T. Read moresourcefn downcast_ref<T>(&self) -> Option<&T>where
    T: ObjectType,
    Self: CanDowncast<T>,
 
fn downcast_ref<T>(&self) -> Option<&T>where
    T: ObjectType,
    Self: CanDowncast<T>,
T. Read moresourcefn dynamic_cast<T>(self) -> Result<T, Self>where
    T: ObjectType,
 
fn dynamic_cast<T>(self) -> Result<T, Self>where
    T: ObjectType,
T. This handles upcasting, downcasting
and casting between interface and interface implementors. All checks are performed at
runtime, while downcast and upcast will do many checks at compile-time already. Read moresourcefn dynamic_cast_ref<T>(&self) -> Option<&T>where
    T: ObjectType,
 
fn dynamic_cast_ref<T>(&self) -> Option<&T>where
    T: ObjectType,
T. This handles upcasting, downcasting
and casting between interface and interface implementors. All checks are performed at
runtime, while downcast and upcast will do many checks at compile-time already. Read moresourceunsafe fn unsafe_cast<T>(self) -> Twhere
    T: ObjectType,
 
unsafe fn unsafe_cast<T>(self) -> Twhere
    T: ObjectType,
T unconditionally. Read moresourceunsafe fn unsafe_cast_ref<T>(&self) -> &Twhere
    T: ObjectType,
 
unsafe fn unsafe_cast_ref<T>(&self) -> &Twhere
    T: ObjectType,
&T unconditionally. Read moresourceimpl<U> IsSubclassableExt for Uwhere
    U: IsClass + ParentClassIs,
 
impl<U> IsSubclassableExt for Uwhere
    U: IsClass + ParentClassIs,
fn parent_class_init<T>(class: &mut Class<U>)where
    T: ObjectSubclass,
    <U as ParentClassIs>::Parent: IsSubclassable<T>,
fn parent_instance_init<T>(instance: &mut InitializingObject<T>)where
    T: ObjectSubclass,
    <U as ParentClassIs>::Parent: IsSubclassable<T>,
sourceimpl<T> ObjectExt for Twhere
    T: ObjectType,
 
impl<T> ObjectExt for Twhere
    T: ObjectType,
sourcefn is<U>(&self) -> boolwhere
    U: StaticType,
 
fn is<U>(&self) -> boolwhere
    U: StaticType,
true if the object is an instance of (can be cast to) T.sourcefn object_class(&self) -> &Class<Object>
 
fn object_class(&self) -> &Class<Object>
ObjectClass of the object. Read moresourcefn class_of<U>(&self) -> Option<&Class<U>>where
    U: IsClass,
 
fn class_of<U>(&self) -> Option<&Class<U>>where
    U: IsClass,
T. Read moresourcefn interface<U>(&self) -> Option<InterfaceRef<'_, U>>where
    U: IsInterface,
 
fn interface<U>(&self) -> Option<InterfaceRef<'_, U>>where
    U: IsInterface,
T of the object. Read moresourcefn set_property<V>(&self, property_name: &str, value: V)where
    V: ToValue,
 
fn set_property<V>(&self, property_name: &str, value: V)where
    V: ToValue,
sourcefn set_property_from_value(&self, property_name: &str, value: &Value)
 
fn set_property_from_value(&self, property_name: &str, value: &Value)
sourcefn set_properties(&self, property_values: &[(&str, &dyn ToValue)])
 
fn set_properties(&self, property_values: &[(&str, &dyn ToValue)])
sourcefn set_properties_from_value(&self, property_values: &[(&str, Value)])
 
fn set_properties_from_value(&self, property_values: &[(&str, Value)])
sourcefn property<V>(&self, property_name: &str) -> Vwhere
    V: 'static + for<'b> FromValue<'b>,
 
fn property<V>(&self, property_name: &str) -> Vwhere
    V: 'static + for<'b> FromValue<'b>,
property_name of the object and cast it to the type V. Read moresourcefn property_value(&self, property_name: &str) -> Value
 
fn property_value(&self, property_name: &str) -> Value
property_name of the object. Read moresourcefn property_type(&self, property_name: &str) -> Option<Type>
 
fn property_type(&self, property_name: &str) -> Option<Type>
property_name of this object. Read moresourcefn find_property(&self, property_name: &str) -> Option<ParamSpec>
 
fn find_property(&self, property_name: &str) -> Option<ParamSpec>
ParamSpec of the property property_name of this object.sourcefn list_properties(&self) -> PtrSlice<ParamSpec>
 
fn list_properties(&self) -> PtrSlice<ParamSpec>
ParamSpec of the properties of this object.sourcefn freeze_notify(&self) -> PropertyNotificationFreezeGuard
 
fn freeze_notify(&self) -> PropertyNotificationFreezeGuard
sourceunsafe fn set_qdata<QD>(&self, key: Quark, value: QD)where
    QD: 'static,
 
unsafe fn set_qdata<QD>(&self, key: Quark, value: QD)where
    QD: 'static,
key. Read moresourceunsafe fn qdata<QD>(&self, key: Quark) -> Option<NonNull<QD>>where
    QD: 'static,
 
unsafe fn qdata<QD>(&self, key: Quark) -> Option<NonNull<QD>>where
    QD: 'static,
key. Read moresourceunsafe fn steal_qdata<QD>(&self, key: Quark) -> Option<QD>where
    QD: 'static,
 
unsafe fn steal_qdata<QD>(&self, key: Quark) -> Option<QD>where
    QD: 'static,
key. Read moresourceunsafe fn set_data<QD>(&self, key: &str, value: QD)where
    QD: 'static,
 
unsafe fn set_data<QD>(&self, key: &str, value: QD)where
    QD: 'static,
key. Read moresourceunsafe fn data<QD>(&self, key: &str) -> Option<NonNull<QD>>where
    QD: 'static,
 
unsafe fn data<QD>(&self, key: &str) -> Option<NonNull<QD>>where
    QD: 'static,
key. Read moresourceunsafe fn steal_data<QD>(&self, key: &str) -> Option<QD>where
    QD: 'static,
 
unsafe fn steal_data<QD>(&self, key: &str) -> Option<QD>where
    QD: 'static,
key. Read moresourcefn block_signal(&self, handler_id: &SignalHandlerId)
 
fn block_signal(&self, handler_id: &SignalHandlerId)
sourcefn unblock_signal(&self, handler_id: &SignalHandlerId)
 
fn unblock_signal(&self, handler_id: &SignalHandlerId)
sourcefn stop_signal_emission(&self, signal_id: SignalId, detail: Option<Quark>)
 
fn stop_signal_emission(&self, signal_id: SignalId, detail: Option<Quark>)
sourcefn stop_signal_emission_by_name(&self, signal_name: &str)
 
fn stop_signal_emission_by_name(&self, signal_name: &str)
sourcefn connect<F>(
    &self,
    signal_name: &str,
    after: bool,
    callback: F
) -> SignalHandlerIdwhere
    F: 'static + Fn(&[Value]) -> Option<Value> + Send + Sync,
 
fn connect<F>(
    &self,
    signal_name: &str,
    after: bool,
    callback: F
) -> SignalHandlerIdwhere
    F: 'static + Fn(&[Value]) -> Option<Value> + Send + Sync,
signal_name on this object. Read moresourcefn connect_id<F>(
    &self,
    signal_id: SignalId,
    details: Option<Quark>,
    after: bool,
    callback: F
) -> SignalHandlerIdwhere
    F: 'static + Fn(&[Value]) -> Option<Value> + Send + Sync,
 
fn connect_id<F>(
    &self,
    signal_id: SignalId,
    details: Option<Quark>,
    after: bool,
    callback: F
) -> SignalHandlerIdwhere
    F: 'static + Fn(&[Value]) -> Option<Value> + Send + Sync,
signal_id on this object. Read moresourcefn connect_local<F>(
    &self,
    signal_name: &str,
    after: bool,
    callback: F
) -> SignalHandlerIdwhere
    F: 'static + Fn(&[Value]) -> Option<Value>,
 
fn connect_local<F>(
    &self,
    signal_name: &str,
    after: bool,
    callback: F
) -> SignalHandlerIdwhere
    F: 'static + Fn(&[Value]) -> Option<Value>,
signal_name on this object. Read moresourcefn connect_local_id<F>(
    &self,
    signal_id: SignalId,
    details: Option<Quark>,
    after: bool,
    callback: F
) -> SignalHandlerIdwhere
    F: 'static + Fn(&[Value]) -> Option<Value>,
 
fn connect_local_id<F>(
    &self,
    signal_id: SignalId,
    details: Option<Quark>,
    after: bool,
    callback: F
) -> SignalHandlerIdwhere
    F: 'static + Fn(&[Value]) -> Option<Value>,
signal_id on this object. Read moresourceunsafe fn connect_unsafe<F>(
    &self,
    signal_name: &str,
    after: bool,
    callback: F
) -> SignalHandlerIdwhere
    F: Fn(&[Value]) -> Option<Value>,
 
unsafe fn connect_unsafe<F>(
    &self,
    signal_name: &str,
    after: bool,
    callback: F
) -> SignalHandlerIdwhere
    F: Fn(&[Value]) -> Option<Value>,
signal_name on this object. Read moresourceunsafe fn connect_unsafe_id<F>(
    &self,
    signal_id: SignalId,
    details: Option<Quark>,
    after: bool,
    callback: F
) -> SignalHandlerIdwhere
    F: Fn(&[Value]) -> Option<Value>,
 
unsafe fn connect_unsafe_id<F>(
    &self,
    signal_id: SignalId,
    details: Option<Quark>,
    after: bool,
    callback: F
) -> SignalHandlerIdwhere
    F: Fn(&[Value]) -> Option<Value>,
signal_id on this object. Read moresourcefn connect_closure(
    &self,
    signal_name: &str,
    after: bool,
    closure: RustClosure
) -> SignalHandlerId
 
fn connect_closure(
    &self,
    signal_name: &str,
    after: bool,
    closure: RustClosure
) -> SignalHandlerId
signal_name on this object. Read moresourcefn connect_closure_id(
    &self,
    signal_id: SignalId,
    details: Option<Quark>,
    after: bool,
    closure: RustClosure
) -> SignalHandlerId
 
fn connect_closure_id(
    &self,
    signal_id: SignalId,
    details: Option<Quark>,
    after: bool,
    closure: RustClosure
) -> SignalHandlerId
signal_id on this object. Read moresourcefn watch_closure(&self, closure: &impl AsRef<Closure>)
 
fn watch_closure(&self, closure: &impl AsRef<Closure>)
closure to the lifetime of the object. When
the object’s reference count drops to zero, the closure will be
invalidated. An invalidated closure will ignore any calls to
invoke_with_values, or
invoke when using Rust closures. Read moresourcefn emit<R>(&self, signal_id: SignalId, args: &[&dyn ToValue]) -> Rwhere
    R: TryFromClosureReturnValue,
 
fn emit<R>(&self, signal_id: SignalId, args: &[&dyn ToValue]) -> Rwhere
    R: TryFromClosureReturnValue,
sourcefn emit_with_values(&self, signal_id: SignalId, args: &[Value]) -> Option<Value>
 
fn emit_with_values(&self, signal_id: SignalId, args: &[Value]) -> Option<Value>
Self::emit but takes Value for the arguments.sourcefn emit_by_name<R>(&self, signal_name: &str, args: &[&dyn ToValue]) -> Rwhere
    R: TryFromClosureReturnValue,
 
fn emit_by_name<R>(&self, signal_name: &str, args: &[&dyn ToValue]) -> Rwhere
    R: TryFromClosureReturnValue,
sourcefn emit_by_name_with_values(
    &self,
    signal_name: &str,
    args: &[Value]
) -> Option<Value>
 
fn emit_by_name_with_values(
    &self,
    signal_name: &str,
    args: &[Value]
) -> Option<Value>
sourcefn emit_by_name_with_details<R>(
    &self,
    signal_name: &str,
    details: Quark,
    args: &[&dyn ToValue]
) -> Rwhere
    R: TryFromClosureReturnValue,
 
fn emit_by_name_with_details<R>(
    &self,
    signal_name: &str,
    details: Quark,
    args: &[&dyn ToValue]
) -> Rwhere
    R: TryFromClosureReturnValue,
sourcefn emit_by_name_with_details_and_values(
    &self,
    signal_name: &str,
    details: Quark,
    args: &[Value]
) -> Option<Value>
 
fn emit_by_name_with_details_and_values(
    &self,
    signal_name: &str,
    details: Quark,
    args: &[Value]
) -> Option<Value>
sourcefn emit_with_details<R>(
    &self,
    signal_id: SignalId,
    details: Quark,
    args: &[&dyn ToValue]
) -> Rwhere
    R: TryFromClosureReturnValue,
 
fn emit_with_details<R>(
    &self,
    signal_id: SignalId,
    details: Quark,
    args: &[&dyn ToValue]
) -> Rwhere
    R: TryFromClosureReturnValue,
sourcefn emit_with_details_and_values(
    &self,
    signal_id: SignalId,
    details: Quark,
    args: &[Value]
) -> Option<Value>
 
fn emit_with_details_and_values(
    &self,
    signal_id: SignalId,
    details: Quark,
    args: &[Value]
) -> Option<Value>
sourcefn disconnect(&self, handler_id: SignalHandlerId)
 
fn disconnect(&self, handler_id: SignalHandlerId)
sourcefn connect_notify<F>(&self, name: Option<&str>, f: F) -> SignalHandlerIdwhere
    F: 'static + Fn(&T, &ParamSpec) + Send + Sync,
 
fn connect_notify<F>(&self, name: Option<&str>, f: F) -> SignalHandlerIdwhere
    F: 'static + Fn(&T, &ParamSpec) + Send + Sync,
notify signal of the object. Read moresourcefn connect_notify_local<F>(&self, name: Option<&str>, f: F) -> SignalHandlerIdwhere
    F: 'static + Fn(&T, &ParamSpec),
 
fn connect_notify_local<F>(&self, name: Option<&str>, f: F) -> SignalHandlerIdwhere
    F: 'static + Fn(&T, &ParamSpec),
notify signal of the object. Read moresourceunsafe fn connect_notify_unsafe<F>(
    &self,
    name: Option<&str>,
    f: F
) -> SignalHandlerIdwhere
    F: Fn(&T, &ParamSpec),
 
unsafe fn connect_notify_unsafe<F>(
    &self,
    name: Option<&str>,
    f: F
) -> SignalHandlerIdwhere
    F: Fn(&T, &ParamSpec),
notify signal of the object. Read more