Struct kas::event::GrabBuilder
source · pub struct GrabBuilder { /* private fields */ }
Expand description
Bulider pattern (see Press::grab
)
Conclude by calling Self::with_cx
.
Implementations§
source§impl GrabBuilder
impl GrabBuilder
sourcepub fn with_mode(self, mode: GrabMode) -> GrabBuilder
pub fn with_mode(self, mode: GrabMode) -> GrabBuilder
Set grab mode (default: GrabMode::Grab
)
sourcepub fn with_icon(self, icon: CursorIcon) -> GrabBuilder
pub fn with_icon(self, icon: CursorIcon) -> GrabBuilder
Set cursor icon (default: do not set)
sourcepub fn with_opt_icon(self, icon: Option<CursorIcon>) -> GrabBuilder
pub fn with_opt_icon(self, icon: Option<CursorIcon>) -> GrabBuilder
Optionally set cursor icon (default: do not set)
sourcepub fn with_cx(self, cx: &mut EventCx<'_>) -> IsUsed
pub fn with_cx(self, cx: &mut EventCx<'_>) -> IsUsed
Complete the grab, providing the EventCx
In case of an existing grab for the same source
,
- If the
Id
differs this fails (returnsUnused
) - If the
MouseButton
differs this fails (technically this is a differentsource
, but simultaneous grabs of multiple mouse buttons are not supported). - If one grab is a pan and the other is not, this fails
GrabMode::Click
may be upgraded toGrabMode::Grab
- Changing from one pan mode to another is an error
- Mouse button repetitions may be increased; decreasing is an error
- A
CursorIcon
may be set - The depress target is re-set to the grabbing widget
Note: error conditions are only checked in debug builds. These cases may need revision.
Auto Trait Implementations§
impl RefUnwindSafe for GrabBuilder
impl !Send for GrabBuilder
impl !Sync for GrabBuilder
impl Unpin for GrabBuilder
impl UnwindSafe for GrabBuilder
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<S, T> CastApprox<T> for Swhere
T: ConvApprox<S>,
impl<S, T> CastApprox<T> for Swhere
T: ConvApprox<S>,
§fn try_cast_approx(self) -> Result<T, Error>
fn try_cast_approx(self) -> Result<T, Error>
§fn cast_approx(self) -> T
fn cast_approx(self) -> T
§impl<S, T> CastFloat<T> for Swhere
T: ConvFloat<S>,
impl<S, T> CastFloat<T> for Swhere
T: ConvFloat<S>,
§fn cast_trunc(self) -> T
fn cast_trunc(self) -> T
Cast to integer, truncating Read more
§fn cast_nearest(self) -> T
fn cast_nearest(self) -> T
Cast to the nearest integer Read more
§fn cast_floor(self) -> T
fn cast_floor(self) -> T
Cast the floor to an integer Read more
§fn try_cast_trunc(self) -> Result<T, Error>
fn try_cast_trunc(self) -> Result<T, Error>
Try converting to integer with truncation Read more
§fn try_cast_nearest(self) -> Result<T, Error>
fn try_cast_nearest(self) -> Result<T, Error>
Try converting to the nearest integer Read more
§fn try_cast_floor(self) -> Result<T, Error>
fn try_cast_floor(self) -> Result<T, Error>
Try converting the floor to an integer Read more
§fn try_cast_ceil(self) -> Result<T, Error>
fn try_cast_ceil(self) -> Result<T, Error>
Try convert the ceiling to an integer 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.