Struct EventCtx
pub struct EventCtx<'a> {
pub scale_factor: f64,
pub modifiers: &'a Modifiers,
pub state: Edits<'a>,
pub path: &'a ExId,
pub handled: &'a mut bool,
pub focus_target: &'a mut Option<NodeId>,
pub node_id: NodeId,
pub taffy: &'a TaffyTree,
}Expand description
Host services associated with one retained widget event dispatch.
Fields§
§scale_factor: f64§modifiers: &'a Modifiers§state: Edits<'a>§path: &'a ExId§handled: &'a mut bool§focus_target: &'a mut Option<NodeId>§node_id: NodeId§taffy: &'a TaffyTreeImplementations§
§impl EventCtx<'_>
impl EventCtx<'_>
pub fn reborrow<'b>(
&'b mut self,
path: &'b ExId,
node_id: NodeId,
) -> EventCtx<'b>
pub fn reborrow<'b>( &'b mut self, path: &'b ExId, node_id: NodeId, ) -> EventCtx<'b>
Reborrow this event for a retained child with its own document path and node.
pub fn pen(&self) -> Option<PenSample>
pub fn pen(&self) -> Option<PenSample>
The stylus that made the CursorMoved or MouseInput being
handled: its pressure, tilt and whether the eraser end is in use.
None for a mouse, a touch, or any other event. A pen’s tip is the
left button and its barrel buttons the right and middle ones, so a
widget needs this only for what a mouse cannot say.
pub fn logical(&self, position: impl Borrow<PhysicalPosition<f64>>) -> Point
pub fn logical(&self, position: impl Borrow<PhysicalPosition<f64>>) -> Point
position, a pointer position in physical pixels, in this event’s
logical coordinates.
Auto Trait Implementations§
impl<'a> Freeze for EventCtx<'a>
impl<'a> RefUnwindSafe for EventCtx<'a>
impl<'a> !Send for EventCtx<'a>
impl<'a> !Sync for EventCtx<'a>
impl<'a> Unpin for EventCtx<'a>
impl<'a> UnsafeUnpin for EventCtx<'a>
impl<'a> !UnwindSafe for EventCtx<'a>
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
Mutably borrows from an owned value. Read more
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§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>
Converts
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>
Converts
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