X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fundo.h;h=8ce44ce962da5eed385e37b57a40d6b4d0177390;hb=35204f8f33d7400a5fefeffea533fb4cb4097211;hp=781621c5bb67ce5fb4e6d78d9d13ccb0c5e28efc;hpb=4b7d4778092f42475fac7a24005778abe1601e16;p=lyx.git diff --git a/src/undo.h b/src/undo.h index 781621c5bb..8ce44ce962 100644 --- a/src/undo.h +++ b/src/undo.h @@ -17,13 +17,16 @@ #define UNDO_H #include "dociterator.h" -#include "ParagraphList_fwd.h" +#include "ParagraphList.h" #include "bufferparams.h" #include "support/types.h" #include + +namespace lyx { + class BufferParams; class BufferView; class LCursor; @@ -76,17 +79,17 @@ public: /// the position of the cell described StableDocIterator cell; /// counted from begin of cell - lyx::pit_type from; + pit_type from; /// complement to end of this cell - lyx::pit_type end; + pit_type end; /// the contents of the saved Paragraphs (for texted) ParagraphList pars; /// the stringified contents of the saved MathArray (for mathed) - std::string array; + docstring array; /// Only used in case of full backups BufferParams bparams; /// Only used in case of full backups - bool isFullBuffer; + bool isFullBuffer; }; @@ -105,14 +108,21 @@ void finishUndo(); * end' of the range of changed paragraphs. So we give an inclusive range. * This is called before you make the changes to the paragraph, and it * will record the original information of the paragraphs in the undo stack. + * + * FIXME: We need something to record undo in partial grids for mathed. + * Right now we use recordUndoInset if more than one cell is changed, + * but that puts the cursor in front of the inset after undo. We would need + * something like + * recordUndoGrid(LCursor & cur, Undo::undo_kind kind, idx_type from, idx_type to); + * and store the cell information in class Undo. */ /// The general case: prepare undo for an arbitrary range. void recordUndo(LCursor & cur, Undo::undo_kind kind, - lyx::pit_type from, lyx::pit_type to); + pit_type from, pit_type to); /// Convenience: prepare undo for the range between 'from' and cursor. -void recordUndo(LCursor & cur, Undo::undo_kind kind, lyx::pit_type from); +void recordUndo(LCursor & cur, Undo::undo_kind kind, pit_type from); /// Convenience: prepare undo for the single paragraph or cell /// containing the cursor @@ -125,4 +135,7 @@ void recordUndoSelection(LCursor & cur, Undo::undo_kind kind = Undo::ATOMIC); /// Convenience: prepare undo for the whole buffer void recordUndoFullDocument(BufferView * bv); + +} // namespace lyx + #endif // UNDO_FUNCS_H