summaryrefslogtreecommitdiff
path: root/include/svl/undo.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'include/svl/undo.hxx')
-rw-r--r--include/svl/undo.hxx10
1 files changed, 9 insertions, 1 deletions
diff --git a/include/svl/undo.hxx b/include/svl/undo.hxx
index a7d1e4753712..eca3f4abd4a6 100644
--- a/include/svl/undo.hxx
+++ b/include/svl/undo.hxx
@@ -289,8 +289,11 @@ public:
/** removes a mark given by its ID.
After the call, the mark ID is invalid.
+
+ @return the index at which the mark was removed, or std::numeric_limits<size_t>::max()
+ if failed
*/
- void RemoveMark( UndoStackMark const i_mark );
+ size_t RemoveMark(UndoStackMark const i_mark);
/** determines whether the top action on the Undo stack has a given mark
*/
@@ -306,6 +309,11 @@ protected:
bool UndoWithContext( SfxUndoContext& i_context );
bool RedoWithContext( SfxUndoContext& i_context );
+ // Undoes a specific mark on the undo stack, and removes it from the undo/redo stack,
+ // but only in case when the redo stack is empty. This is a dangerous operation, because
+ // it undoes out of order.
+ void UndoMark(UndoStackMark i_mark);
+
void ImplClearRedo_NoLock( bool const i_currentLevel );
/** clears all undo actions on the current level, plus all undo actions on superordinate levels,