Struct zng_ext_input::mouse::MouseWheelArgs
source · pub struct MouseWheelArgs {
pub timestamp: DInstant,
pub window_id: WindowId,
pub device_id: DeviceId,
pub position: DipPoint,
pub modifiers: ModifiersState,
pub delta: MouseScrollDelta,
pub phase: TouchPhase,
pub hits: HitTestInfo,
pub target: InteractionPath,
/* private fields */
}
Expand description
MOUSE_WHEEL_EVENT
arguments.
Fields§
§timestamp: DInstant
Instant the event happened.
window_id: WindowId
Id of window that received the event.
device_id: DeviceId
Id of device that generated the event.
position: DipPoint
Position of the mouse in the coordinates of target
.
modifiers: ModifiersState
What modifier keys where pressed when this event happened.
delta: MouseScrollDelta
Wheel motion delta, value is in pixels if the wheel is a touchpad.
phase: TouchPhase
Touch state if the device that generated the event is a touchpad.
hits: HitTestInfo
Hit-test result for the mouse point in the window, at the moment the wheel event was generated.
target: InteractionPath
Full path to the widget that got scrolled.
Implementations§
source§impl MouseWheelArgs
impl MouseWheelArgs
sourcepub fn new(
timestamp: impl Into<DInstant>,
propagation_handle: EventPropagationHandle,
window_id: impl Into<WindowId>,
device_id: impl Into<DeviceId>,
position: impl Into<DipPoint>,
modifiers: impl Into<ModifiersState>,
delta: impl Into<MouseScrollDelta>,
phase: impl Into<TouchPhase>,
hits: impl Into<HitTestInfo>,
target: impl Into<InteractionPath>,
) -> Self
pub fn new( timestamp: impl Into<DInstant>, propagation_handle: EventPropagationHandle, window_id: impl Into<WindowId>, device_id: impl Into<DeviceId>, position: impl Into<DipPoint>, modifiers: impl Into<ModifiersState>, delta: impl Into<MouseScrollDelta>, phase: impl Into<TouchPhase>, hits: impl Into<HitTestInfo>, target: impl Into<InteractionPath>, ) -> Self
New args from values that convert into the argument types.
sourcepub fn now(
window_id: impl Into<WindowId>,
device_id: impl Into<DeviceId>,
position: impl Into<DipPoint>,
modifiers: impl Into<ModifiersState>,
delta: impl Into<MouseScrollDelta>,
phase: impl Into<TouchPhase>,
hits: impl Into<HitTestInfo>,
target: impl Into<InteractionPath>,
) -> Self
pub fn now( window_id: impl Into<WindowId>, device_id: impl Into<DeviceId>, position: impl Into<DipPoint>, modifiers: impl Into<ModifiersState>, delta: impl Into<MouseScrollDelta>, phase: impl Into<TouchPhase>, hits: impl Into<HitTestInfo>, target: impl Into<InteractionPath>, ) -> Self
Arguments for event that happened now (INSTANT.now
).
source§impl MouseWheelArgs
impl MouseWheelArgs
sourcepub fn shifted_delta(&self) -> MouseScrollDelta
pub fn shifted_delta(&self) -> MouseScrollDelta
Swaps the delta axis if modifiers
contains SHIFT
.
sourcepub fn is_scroll(&self) -> bool
pub fn is_scroll(&self) -> bool
If the modifiers allow the event to be used for scrolling.
Is true
if only SHIFT
, ALT
or none modifiers are pressed. If true
the
scroll_delta
method returns a value.
sourcepub fn scroll_delta(
&self,
alt_factor: impl Into<Factor>,
) -> Option<MouseScrollDelta>
pub fn scroll_delta( &self, alt_factor: impl Into<Factor>, ) -> Option<MouseScrollDelta>
Returns the delta for a scrolling operation, depending on the modifiers
.
If ALT
is pressed scales the delta by alt_factor
, then, if no more modifiers are pressed returns
the scaled delta, if only SHIFT
is pressed returns the swapped delta, otherwise returns None
.
sourcepub fn is_zoom(&self) -> bool
pub fn is_zoom(&self) -> bool
If the modifiers allow the event to be used for zooming.
Is true
if only CTRL
is pressed. If true
the zoom_delta
method returns a value.
sourcepub fn zoom_delta(&self) -> Option<MouseScrollDelta>
pub fn zoom_delta(&self) -> Option<MouseScrollDelta>
Returns the delta for a zoom-in/out operation, depending on the modifiers
.
If only CTRL
is pressed returns the delta, otherwise returns None
.
sourcepub fn is_enabled(&self, widget_id: WidgetId) -> bool
pub fn is_enabled(&self, widget_id: WidgetId) -> bool
Returns true
if the widget is enabled in target
.
sourcepub fn is_disabled(&self, widget_id: WidgetId) -> bool
pub fn is_disabled(&self, widget_id: WidgetId) -> bool
Returns true
if the widget is disabled in target
.
sourcepub fn position_wgt(&self) -> Option<PxPoint>
pub fn position_wgt(&self) -> Option<PxPoint>
Gets position in the widget inner bounds.
Trait Implementations§
source§impl AnyEventArgs for MouseWheelArgs
impl AnyEventArgs for MouseWheelArgs
source§fn delivery_list(&self, list: &mut UpdateDeliveryList)
fn delivery_list(&self, list: &mut UpdateDeliveryList)
The target
.
source§fn clone_any(&self) -> Box<dyn AnyEventArgs>
fn clone_any(&self) -> Box<dyn AnyEventArgs>
source§fn propagation(&self) -> &EventPropagationHandle
fn propagation(&self) -> &EventPropagationHandle
source§impl Clone for MouseWheelArgs
impl Clone for MouseWheelArgs
source§fn clone(&self) -> MouseWheelArgs
fn clone(&self) -> MouseWheelArgs
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for MouseWheelArgs
impl Debug for MouseWheelArgs
Auto Trait Implementations§
impl Freeze for MouseWheelArgs
impl RefUnwindSafe for MouseWheelArgs
impl Send for MouseWheelArgs
impl Sync for MouseWheelArgs
impl Unpin for MouseWheelArgs
impl UnwindSafe for MouseWheelArgs
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more