X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fundo.C;h=2463245dcd342a678c79d2bb4dd32e55d1434901;hb=98c966c64594611e469313314abd1e59524adb4a;hp=793df3b079f3562bbd57e90f043b8508e95a7a27;hpb=4c6091b63f6ac4dae69ddcee26bf22e4f35a3cdf;p=lyx.git diff --git a/src/undo.C b/src/undo.C index 793df3b079..2463245dcd 100644 --- a/src/undo.C +++ b/src/undo.C @@ -1,28 +1,30 @@ /* This file is part of * ====================================================== - * + * * LyX, The Document Processor - * + * * Copyright 1995 Matthias Ettrich - * Copyright 1995-2000 The LyX Team. + * Copyright 1995-2001 The LyX Team. * * ====================================================== */ #include -#include "undo.h" - #ifdef __GNUG__ #pragma implementation #endif +#include "undo.h" +#include "paragraph.h" + -Undo::Undo(undo_kind kind_arg, +Undo::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) + Paragraph * par_arg) { kind = kind_arg; + number_of_inset_id = id_inset_arg; number_of_before_par = number_before_arg; number_of_behind_par = number_behind_arg; number_of_cursor_par = cursor_par_arg; @@ -33,70 +35,10 @@ Undo::Undo(undo_kind kind_arg, Undo::~Undo() { - LyXParagraph * tmppar; + Paragraph * tmppar; while (par) { tmppar = par; par = par->next(); delete tmppar; } } - - -UndoStack::UndoStack() - : limit(100) {} - - -Undo * UndoStack::pop() -{ - if (stakk.empty()) return 0; - Undo * result = stakk.front(); - stakk.pop_front(); - return result; -} - - -Undo * UndoStack::top() -{ - if (stakk.empty()) return 0; - return stakk.front(); -} - - -UndoStack::~UndoStack() -{ - clear(); -} - - -void UndoStack::clear() -{ - while (!stakk.empty()) { - Undo * tmp = stakk.front(); - stakk.pop_front(); - delete tmp; - } -} - - -void UndoStack::SetStackLimit(Stakk::size_type l) -{ - limit = l; -} - - -void UndoStack::push(Undo * undo_arg) -{ - if (!undo_arg) return; - - stakk.push_front(undo_arg); - if (stakk.size() > limit) { - Undo * tmp = stakk.back(); - stakk.pop_back(); - delete tmp; - } -} - - -bool UndoStack::empty() const { - return stakk.empty(); -}