summaryrefslogtreecommitdiffstats
path: root/desktop-widgets/command_edit.h
diff options
context:
space:
mode:
Diffstat (limited to 'desktop-widgets/command_edit.h')
-rw-r--r--desktop-widgets/command_edit.h23
1 files changed, 22 insertions, 1 deletions
diff --git a/desktop-widgets/command_edit.h b/desktop-widgets/command_edit.h
index 0ba3d1a14..ebce0bf1b 100644
--- a/desktop-widgets/command_edit.h
+++ b/desktop-widgets/command_edit.h
@@ -254,7 +254,7 @@ struct PasteState {
void swap(dive_components what); // Exchange values here and in dive
};
-class PasteDives : public Base {
+class PasteDives : public Base {
dive_components what;
std::vector<PasteState> dives;
std::vector<OwningDiveSitePtr> ownedDiveSites;
@@ -267,6 +267,27 @@ private:
bool workToBeDone() override;
};
+class ReplanDive : public Base {
+ dive *d;
+
+ // Exchange these data with current dive
+ timestamp_t when;
+ depth_t maxdepth, meandepth;
+ cylinder_t cylinders[MAX_CYLINDERS];
+ struct divecomputer dc;
+ char *notes;
+ pressure_t surface_pressure;
+ duration_t duration;
+ int salinity;
+public:
+ ReplanDive(dive *source); // Dive computer(s) and cylinders(s) of the source dive will be reset!
+ ~ReplanDive();
+private:
+ void undo() override;
+ void redo() override;
+ bool workToBeDone() override;
+};
+
} // namespace Command
#endif