summaryrefslogtreecommitdiffstats
path: root/qt-ui/undocommands.h
diff options
context:
space:
mode:
authorGravatar Dirk Hohndel <dirk@hohndel.org>2015-06-14 21:49:34 -0700
committerGravatar Dirk Hohndel <dirk@hohndel.org>2015-06-14 21:49:34 -0700
commit8d05c71ca2aaffeae46d41ecc7c854d33b0bcc8e (patch)
treee03383cfe649c7054337e4b6f0c0cace27da40d5 /qt-ui/undocommands.h
parenta524c01c3ff571641172a3bc393bb425dd15bc53 (diff)
downloadsubsurface-8d05c71ca2aaffeae46d41ecc7c854d33b0bcc8e.tar.gz
Fix renumbering of dives
The implementation in commit 182fe790c9e8 ("Add ability to undo renumbering of dives") looks perfectly reasonable, but it depends on an implementation detail: it assumes that the keys of the QMap are returned in the same order in which they were placed there. Which apparently isn't the case for some version of Qt. With this commit we simply remember both the old and the new number for each dive and therefore the order in which they are processed doesn't matter. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'qt-ui/undocommands.h')
-rw-r--r--qt-ui/undocommands.h5
1 files changed, 2 insertions, 3 deletions
diff --git a/qt-ui/undocommands.h b/qt-ui/undocommands.h
index bd8530d77..62fb2d22b 100644
--- a/qt-ui/undocommands.h
+++ b/qt-ui/undocommands.h
@@ -28,13 +28,12 @@ private:
class UndoRenumberDives : public QUndoCommand {
public:
- UndoRenumberDives(QMap<int,int> originalNumbers, int startNumber);
+ UndoRenumberDives(QMap<int, QPair<int, int> > originalNumbers);
virtual void undo();
virtual void redo();
private:
- QMap<int,int> oldNumbers;
- int start;
+ QMap<int,QPair<int, int> > oldNumbers;
};
class UndoRemoveDivesFromTrip : public QUndoCommand {