diff options
Diffstat (limited to 'desktop-widgets/undocommands.h')
-rw-r--r-- | desktop-widgets/undocommands.h | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/desktop-widgets/undocommands.h b/desktop-widgets/undocommands.h new file mode 100644 index 000000000..8e359db51 --- /dev/null +++ b/desktop-widgets/undocommands.h @@ -0,0 +1,50 @@ +#ifndef UNDOCOMMANDS_H +#define UNDOCOMMANDS_H + +#include <QUndoCommand> +#include <QMap> +#include "dive.h" + +class UndoDeleteDive : public QUndoCommand { +public: + UndoDeleteDive(QList<struct dive*> deletedDives); + virtual void undo(); + virtual void redo(); + +private: + QList<struct dive*> diveList; + QList<struct dive_trip*> tripList; +}; + +class UndoShiftTime : public QUndoCommand { +public: + UndoShiftTime(QList<int> changedDives, int amount); + virtual void undo(); + virtual void redo(); + +private: + QList<int> diveList; + int timeChanged; +}; + +class UndoRenumberDives : public QUndoCommand { +public: + UndoRenumberDives(QMap<int, QPair<int, int> > originalNumbers); + virtual void undo(); + virtual void redo(); + +private: + QMap<int,QPair<int, int> > oldNumbers; +}; + +class UndoRemoveDivesFromTrip : public QUndoCommand { +public: + UndoRemoveDivesFromTrip(QMap<struct dive*, dive_trip*> removedDives); + virtual void undo(); + virtual void redo(); + +private: + QMap<struct dive*, dive_trip*> divesToUndo; +}; + +#endif // UNDOCOMMANDS_H |