UI module

undo_edit

procedureextensionexperimentalsince 0.31.0Source

Undo the last step and put the caret where it belongs. Returns whether anything changed.

Example↗
edit: Text_Edit;
defer free_text_edit(*edit);
insert_text(*edit, "typed");
assert(undo_edit(*edit));
assert(contents(*edit) == "");
assert(!undo_edit(*edit));
undo_edit :: (edit: *Text_Edit) -> bool

Undo the last step and put the caret where it belongs. Returns whether anything changed.

Parameters

edit: *Text_Edit
the text being edited.

Returns

bool
Example↗
edit: Text_Edit;
defer free_text_edit(*edit);
insert_text(*edit, "typed");
assert(undo_edit(*edit));
assert(contents(*edit) == "");
assert(!undo_edit(*edit));

See also