pub struct TheUndoStack {
pub stack: Vec<TheUndo>,
pub index: isize,
}Expand description
Represents a stack of undo/redo operations.
This struct manages a stack of TheUndo instances, allowing for undo and redo functionality.
Fields§
§stack: Vec<TheUndo>§index: isizeImplementations§
Source§impl TheUndoStack
impl TheUndoStack
Sourcepub fn new() -> TheUndoStack
pub fn new() -> TheUndoStack
Sourcepub fn clear(&mut self)
pub fn clear(&mut self)
Clears the undo stack.
This method resets the stack and index to their default state.
Sourcepub fn has_undo(&self) -> bool
pub fn has_undo(&self) -> bool
Checks if an undo operation is possible.
§Returns
true if an undo operation can be performed, false otherwise.
Sourcepub fn has_redo(&self) -> bool
pub fn has_redo(&self) -> bool
Checks if a redo operation is possible.
§Returns
true if a redo operation can be performed, false otherwise.
Sourcepub fn add(&mut self, undo: TheUndo)
pub fn add(&mut self, undo: TheUndo)
Adds a new TheUndo instance to the stack.
§Arguments
undo- An instance ofTheUndoto be added to the stack.
Trait Implementations§
Source§impl Clone for TheUndoStack
impl Clone for TheUndoStack
Source§fn clone(&self) -> TheUndoStack
fn clone(&self) -> TheUndoStack
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for TheUndoStack
impl Debug for TheUndoStack
Source§impl Default for TheUndoStack
impl Default for TheUndoStack
Source§fn default() -> TheUndoStack
fn default() -> TheUndoStack
Creates a new TheUndoStack instance with default values.
§Returns
A new instance of TheUndoStack with empty stack and index set to -1.
Source§impl<'de> Deserialize<'de> for TheUndoStack
impl<'de> Deserialize<'de> for TheUndoStack
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<TheUndoStack, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<TheUndoStack, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for TheUndoStack
impl PartialEq for TheUndoStack
Source§impl Serialize for TheUndoStack
impl Serialize for TheUndoStack
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl StructuralPartialEq for TheUndoStack
Auto Trait Implementations§
impl Freeze for TheUndoStack
impl RefUnwindSafe for TheUndoStack
impl Send for TheUndoStack
impl Sync for TheUndoStack
impl Unpin for TheUndoStack
impl UnsafeUnpin for TheUndoStack
impl UnwindSafe for TheUndoStack
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§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.Source§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.Source§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.Source§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.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
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>
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
Read this value from the supplied reader. Same as
ReadEndian::read_from_little_endian().Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.