mirror of
https://github.com/subsurface/subsurface.git
synced 2024-12-01 06:30:26 +00:00
193edd9f13
Add the functionality to undo/redo removing of dives from trips. The code calling remove_dive_from_trip has moved to the UndoCommands class. Signed-off-by: Grace Karanja <gracie.karanja89@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
50 lines
984 B
C++
50 lines
984 B
C++
#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;
|
|
};
|
|
|
|
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,int> originalNumbers, int startNumber);
|
|
virtual void undo();
|
|
virtual void redo();
|
|
|
|
private:
|
|
QMap<int,int> oldNumbers;
|
|
int start;
|
|
};
|
|
|
|
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
|