mobile/undo: create EditDive command

Command that just swaps two dives. This is rather complex,
as for example a dive site might be created.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
Berthold Stoeger 2020-01-10 08:25:37 +08:00 committed by Dirk Hohndel
parent 2009321894
commit 57b96490b2
7 changed files with 218 additions and 67 deletions

View file

@ -20,6 +20,8 @@
#include "core/subsurface-qt/divelistnotifier.h"
class QAction;
class DiveObjectHelper;
class DiveSiteChange; // An obscure implementation artifact - remove in due course.
class QMLManager : public QObject {
Q_OBJECT
@ -251,7 +253,7 @@ private:
QElapsedTimer timer;
bool alreadySaving;
bool checkDate(const DiveObjectHelper &myDive, struct dive *d, QString date);
bool checkLocation(const DiveObjectHelper &myDive, struct dive *d, QString location, QString gps);
bool checkLocation(DiveSiteChange &change, const DiveObjectHelper &myDive, struct dive *d, QString location, QString gps);
bool checkDuration(const DiveObjectHelper &myDive, struct dive *d, QString duration);
bool checkDepth(const DiveObjectHelper &myDive, struct dive *d, QString depth);
bool currentGitLocalOnly;
@ -260,7 +262,8 @@ private:
bool m_btEnabled;
void updateAllGlobalLists();
void updateSiteList();
void setupDivesite(struct dive *d, struct dive_site *ds, double lat, double lon, const char *locationtext);
location_t getGps(QString &gps);
QString m_pluggedInDeviceName;
bool m_showNonDiveComputers;
struct dive *m_copyPasteDive = NULL;