]> git.lyx.org Git - lyx.git/blobdiff - src/undo.h
ws change
[lyx.git] / src / undo.h
index bcd8ee5366442548ece78787c188117c83636907..4ebdd89224f754a9222b54aad4646de62b982c04 100644 (file)
@@ -1,11 +1,11 @@
 // -*- C++ -*-
 /* This file is part of
  * ======================================================
- * 
+ *
  *           LyX, The Document Processor
- *      
+ *
  *           Copyright 1995 Matthias Ettrich
- *           Copyright 1995-1999 The LyX Team.
+ *           Copyright 1995-2001 The LyX Team.
  *
  * ====================================================== */
 
 #pragma interface
 #endif
 
-#include <list>
-using std::list;
-
-#include "lyxparagraph.h"
-
+class Paragraph;
 
 ///
 class Undo {
@@ -45,58 +41,19 @@ public:
        ///
        int number_of_cursor_par;
        ///
+       int number_of_inset_id; // valid if >= 0, if < 0 then not in inset
+       ///
        int cursor_pos; // valid if >= 0
        ///
-       LyXParagraph * par;
+       Paragraph * par;
        ///
-       Undo(undo_kind kind_arg,
+       Undo(undo_kind kind_arg, int id_inset_arg,
             int number_before_arg, int number_behind_arg,
             int cursor_par_arg, int cursor_pos_arg,
-            LyXParagraph * par_arg)
-       {
-               kind = kind_arg;
-               number_of_before_par = number_before_arg;
-               number_of_behind_par = number_behind_arg;
-               number_of_cursor_par = cursor_par_arg;
-               cursor_pos = cursor_pos_arg;
-               par = par_arg;
-       }
+            Paragraph * par_arg);
        ///
-       ~Undo() {
-               LyXParagraph * tmppar;
-               while (par) {
-                       tmppar = par;
-                       par = par->next;
-                       delete tmppar;
-               }
-       }
+       ~Undo();
 };
 
 
-/// A limited Stack for the undo informations.
-class UndoStack{
-private:
-       ///
-       typedef list<Undo*> Stakk;
-       ///
-       Stakk stakk;
-       /// the maximum number of undo steps stored.
-       Stakk::size_type limit;
-public:
-       ///
-       UndoStack();
-       ///
-       Undo * Pop();
-       ///
-       Undo * Top();
-       ///
-       ~UndoStack();
-       ///
-       void Clear();
-       ///
-       void SetStackLimit(Stakk::size_type l);
-       ///
-       void Push(Undo * undo_arg);
-};
-
 #endif