summaryrefslogtreecommitdiffstats
path: root/qt-ui/undobuffer.h
diff options
context:
space:
mode:
authorGravatar Grace Karanja <gracie.karanja89@gmail.com>2015-02-09 09:17:38 +0100
committerGravatar Dirk Hohndel <dirk@hohndel.org>2015-02-09 21:02:07 -0800
commit853dfa66735db874cc16688e6fd9ad9320474e37 (patch)
tree64f82e2fefb7dd957c083a5274713d7d67d31022 /qt-ui/undobuffer.h
parentc2e23914932cdfa254e817c06af064992888d377 (diff)
downloadsubsurface-853dfa66735db874cc16688e6fd9ad9320474e37.tar.gz
Create UndoBuffer class
Add an empty UndoBuffer class. This will be built up on to implement a working undo/redo mechanism. Signed-off-by: Grace Karanja <gracie.karanja89@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'qt-ui/undobuffer.h')
-rw-r--r--qt-ui/undobuffer.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/qt-ui/undobuffer.h b/qt-ui/undobuffer.h
new file mode 100644
index 000000000..a292d3ba7
--- /dev/null
+++ b/qt-ui/undobuffer.h
@@ -0,0 +1,24 @@
+#ifndef UNDOBUFFER_H
+#define UNDOBUFFER_H
+
+#include <QObject>
+#include "dive.h"
+
+class UndoBuffer : public QObject
+{
+ Q_OBJECT
+public:
+ explicit UndoBuffer(QObject *parent = 0);
+ ~UndoBuffer();
+ bool canUndo();
+ bool canRedo();
+private:
+ int curIdx;
+public slots:
+ void redo();
+ void undo();
+ void recordbefore(QString commandName, dive *affectedDive);
+ void recordAfter(dive *affectedDive);
+};
+
+#endif // UNDOBUFFER_H