]> git.lyx.org Git - features.git/blobdiff - src/Undo.h
Bug 5173: Undo Grouping
[features.git] / src / Undo.h
index 160f3ac40e6a24e0a3ac1d03e4d036aa26e6f5af..b0889319ab988f027475b7374bb33efd47d95230 100644 (file)
@@ -79,21 +79,27 @@ public:
        ///
        bool hasRedoStack() const;
 
+       /// open a new group of undo operations. Groups can be nested.
+       void beginUndoGroup();
+
+       /// end the current undo group
+       void endUndoGroup();
+
        /// The general case: prepare undo for an arbitrary range.
-       void recordUndo(DocIterator & cur, UndoKind kind,
+       void recordUndo(DocIterator const & cur, UndoKind kind,
                pit_type from, pit_type to);
 
        /// Convenience: prepare undo for the range between 'from' and cursor.
-       void recordUndo(DocIterator & cur, UndoKind kind, pit_type from);
+       void recordUndo(DocIterator const & cur, UndoKind kind, pit_type from);
 
        /// Convenience: prepare undo for the single paragraph or cell
        /// containing the cursor
-       void recordUndo(DocIterator & cur, UndoKind kind = ATOMIC_UNDO);
+       void recordUndo(DocIterator const & cur, UndoKind kind = ATOMIC_UNDO);
        /// Convenience: prepare undo for the inset containing the cursor
-       void recordUndoInset(DocIterator & cur, UndoKind kind = ATOMIC_UNDO);
+       void recordUndoInset(DocIterator const & cur, UndoKind kind = ATOMIC_UNDO);
 
        /// Convenience: prepare undo for the whole buffer
-       void recordUndoFullDocument(DocIterator & cur);
+       void recordUndoFullDocument(DocIterator const & cur);
 
 private:
        struct Private;