Struct yrs::YUndoEvent
source · #[repr(C)]pub struct YUndoEvent {
pub kind: c_char,
pub origin: *const c_char,
pub origin_len: u32,
pub meta: *mut c_void,
}
Expand description
Event type related to UndoManager
observer operations, such as yundo_manager_observe_popped
and yundo_manager_observe_added
. It contains various informations about the context in which
undo/redo operations are executed.
Fields§
§kind: c_char
Informs if current event is related to executed undo (Y_KIND_UNDO
) or redo (Y_KIND_REDO
)
operation.
origin: *const c_char
Origin assigned to a transaction, in context of which this event is being executed.
Transaction origin is specified via ydoc_write_transaction(doc, origin_len, origin)
.
origin_len: u32
Length of an origin
field assigned to a transaction, in context of which this event is
being executed.
Transaction origin is specified via ydoc_write_transaction(doc, origin_len, origin)
.
meta: *mut c_void
Pointer to a custom metadata object that can be passed between
yundo_manager_observe_popped
and yundo_manager_observe_added
. It’s useful for passing
around custom user data ie. cursor position, that needs to be remembered and restored as
part of undo/redo operations.
This field always starts with no value (NULL
) assigned to it and can be set/unset in
corresponding callback calls. In such cases it’s up to a programmer to handle allocation
and deallocation of memory that this pointer will point to. Not releasing it properly may
lead to memory leaks.