From 16614be0a5dea0613fedb6bbbb9f0dd8879905a2 Mon Sep 17 00:00:00 2001 From: Robin Haberkorn Date: Thu, 8 Nov 2012 18:17:19 +0100 Subject: set UndoToken position only when it is required (undo enabled) --- undo.h | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-) (limited to 'undo.h') diff --git a/undo.h b/undo.h index 5b955ab..055fc3d 100644 --- a/undo.h +++ b/undo.h @@ -14,8 +14,6 @@ public: gint pos; - UndoToken(); - virtual void run() = 0; }; @@ -75,25 +73,18 @@ public: }; extern class UndoStack { - SLIST_HEAD(undo_head, UndoToken) head; + SLIST_HEAD(Head, UndoToken) head; public: bool enabled; - UndoStack(bool _enabled = true) : enabled(_enabled) + UndoStack(bool _enabled = false) : enabled(_enabled) { SLIST_INIT(&head); } ~UndoStack(); - inline void - push(UndoToken *token) - { - if (enabled) - SLIST_INSERT_HEAD(&head, token, tokens); - else - delete token; - } + void push(UndoToken *token); void push_msg(unsigned int iMessage, uptr_t wParam = 0, sptr_t lParam = 0); -- cgit v1.2.3