X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FUndo.h;h=5f6694104a6e72c1094fc53ffa8ff2d9bac7e448;hb=a5be70af87123df1af5e2cdd1d713581cd69ba37;hp=0412253c8a3eb4203a1bf4bf8b54f42618be5764;hpb=a1c21d9c79da0b871aea3f00171a6ead22eccae3;p=lyx.git diff --git a/src/Undo.h b/src/Undo.h index 0412253c8a..5f6694104a 100644 --- a/src/Undo.h +++ b/src/Undo.h @@ -5,10 +5,10 @@ * Licence details can be found in the file COPYING. * * \author Asger Alstrup - * \author Lars Gullik Bjønnes + * \author Lars Gullik Bjønnes * \author John Levon - * \author André Pönitz - * \author Jürgen Vigna + * \author André Pönitz + * \author Jürgen Vigna * \author Abdelrazak Younes * * Full author contact details are available in file CREDITS. @@ -24,6 +24,7 @@ namespace lyx { class Buffer; class BufferParams; class DocIterator; +class Inset; class MathData; class ParagraphList; @@ -52,6 +53,9 @@ public: ~Undo(); + /// Clear out all undo/redo contents. + void clear(); + /// this will undo the last action - returns false if no undo possible bool textUndo(DocIterator &); @@ -67,7 +71,14 @@ public: /// bool hasRedoStack() const; - /// open a new group of undo operations. Groups can be nested. + /// Mark all the elements of the undo and redo stacks as dirty + void markDirty(); + + /// open a new group of undo operations. + /** + * Groups can be nested. Such a nested group e.g. { {} {} } is undone in + * a single step. This means you can add a group whenever you are not sure. + */ void beginUndoGroup(); /// end the current undo group. @@ -94,8 +105,9 @@ public: /// Convenience: record undo information for the inset /// containing the cursor. - void recordUndoInset(DocIterator const & cur, - UndoKind kind = ATOMIC_UNDO); + void recordUndoInset(DocIterator const & cur, + UndoKind kind = ATOMIC_UNDO, + Inset const * inset = 0); /// Convenience: prepare undo for the whole buffer void recordUndoFullDocument(DocIterator const & cur);