Undo: make weight editing undoable

Implement the EditWeight undo command. Since there is common code
(storage of the old weight), this creates a common base class for
RemoveWeight and EditWeight. The model calls directly into the undo
command, which is somewhat unfortunate as it feels like a layering
violation. It's the easy thing to do for now.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
Berthold Stoeger 2019-11-08 22:47:38 +01:00 committed by Dirk Hohndel
parent 029c9ccf02
commit 72c6b83866
10 changed files with 132 additions and 59 deletions

View file

@ -278,6 +278,11 @@ int removeWeight(int index, bool currentDiveOnly)
return execute_edit(new RemoveWeight(index, currentDiveOnly));
}
int editWeight(int index, weightsystem_t ws, bool currentDiveOnly)
{
return execute_edit(new EditWeight(index, ws, currentDiveOnly));
}
// Trip editing related commands
void editTripLocation(dive_trip *trip, const QString &s)
{