summaryrefslogtreecommitdiffstats
path: root/commands/command_event.h
diff options
context:
space:
mode:
authorGravatar Berthold Stoeger <bstoeger@mail.tuwien.ac.at>2020-03-06 23:20:58 +0100
committerGravatar Berthold Stoeger <bstoeger@mail.tuwien.ac.at>2020-04-07 00:13:35 +0200
commit4ae87da58cda895f3573704966ef2e0dd8161864 (patch)
tree80f4367ea5b4a85d7b549598af45b1dd9919d3f2 /commands/command_event.h
parente39063f6df269facaad1430229d8b330385f68ff (diff)
downloadsubsurface-4ae87da58cda895f3573704966ef2e0dd8161864.tar.gz
undo: reload dive on removal of gas-switch
If a gas-switch is removed we have to perform the same action as if a gas-switch is added: fixup the dive and signal the changed cylinder and stats. Adapt the RemoveEvent command accordingly. Copy the code of the AddGasSwitch command and simplify for the fact that only ony cylinder can be affected. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
Diffstat (limited to 'commands/command_event.h')
-rw-r--r--commands/command_event.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/commands/command_event.h b/commands/command_event.h
index a363540d5..b7e67f218 100644
--- a/commands/command_event.h
+++ b/commands/command_event.h
@@ -79,9 +79,11 @@ private:
bool workToBeDone() override;
void undoit() override;
void redoit() override;
+ void post() const; // Called to fix up dives should a gas-change have happened.
OwningEventPtr eventToAdd; // for undo
event *eventToRemove; // for redo
+ int cylinder; // affected cylinder (if removing gas switch). <0: not a gas switch.
};
class AddGasSwitch : public EventBase {