pub struct UndoMix<P>(/* private fields */);
Expand description
m
Undo scope widget mixin.
Widget is an undo/redo scope, it tracks changes and handles undo/redo commands.
You can force the widget to use a parent undo scope by setting undo_scope
to false
, this will cause the widget
to start registering undo/redo actions in the parent, note that the widget will continue behaving as if it
owns the scope, so it may clear it.
Implementations§
source§impl<P> UndoMix<P>where
P: WidgetImpl,
impl<P> UndoMix<P>where
P: WidgetImpl,
sourcepub fn undo_enabled(&self, enabled: impl IntoVar<bool>)
pub fn undo_enabled(&self, enabled: impl IntoVar<bool>)
P
If the widget can register undo actions.
Is true
by default in this widget, if set to false
disables undo in the widget.
sourcepub fn undo_limit(&self, limit: impl IntoVar<u32>)
pub fn undo_limit(&self, limit: impl IntoVar<u32>)
P
Sets the maximum number of undo/redo actions that are retained in the widget.
sourcepub fn undo_interval(&self, interval: impl IntoVar<Duration>)
pub fn undo_interval(&self, interval: impl IntoVar<Duration>)
P
Sets the time interval that undo and redo cover each call for undo handlers in the widget and descendants.
When undo is requested inside the context all actions after the latest that are within interval
of the
previous are undone.
Trait Implementations§
Auto Trait Implementations§
impl<P> Freeze for UndoMix<P>where
P: Freeze,
impl<P> RefUnwindSafe for UndoMix<P>where
P: RefUnwindSafe,
impl<P> Send for UndoMix<P>where
P: Send,
impl<P> Sync for UndoMix<P>where
P: Sync,
impl<P> Unpin for UndoMix<P>where
P: Unpin,
impl<P> UnwindSafe for UndoMix<P>where
P: UnwindSafe,
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
§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>
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>
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)
&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)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§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> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§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