* LyX, The Document Processor
*
* Copyright 1995 Matthias Ettrich
- * Copyright 1995-1999 The LyX Team.
+ * Copyright 1995-2000 The LyX Team.
*
* ====================================================== */
#pragma implementation
#endif
+
+Undo::Undo(undo_kind kind_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;
+}
+
+
+Undo::~Undo()
+{
+ LyXParagraph * tmppar;
+ while (par) {
+ tmppar = par;
+ par = par->next;
+ delete tmppar;
+ }
+}
+
+
UndoStack::UndoStack()
: limit(100) {}
-Undo * UndoStack::Pop()
+Undo * UndoStack::pop()
{
if (stakk.empty()) return 0;
Undo * result = stakk.front();
}
-Undo * UndoStack::Top()
+Undo * UndoStack::top()
{
if (stakk.empty()) return 0;
return stakk.front();
UndoStack::~UndoStack()
{
- Clear();
+ clear();
}
-void UndoStack::Clear()
+void UndoStack::clear()
{
while (!stakk.empty()) {
Undo * tmp = stakk.front();
}
-void UndoStack::Push(Undo * undo_arg)
+void UndoStack::push(Undo * undo_arg)
{
if (!undo_arg) return;
delete tmp;
}
}
+
+
+bool UndoStack::empty() const {
+ return stakk.empty();
+}