aboutsummaryrefslogtreecommitdiffstats
path: root/commands
diff options
context:
space:
mode:
authorGravatar Berthold Stoeger <bstoeger@mail.tuwien.ac.at>2020-11-24 20:17:27 +0100
committerGravatar Dirk Hohndel <dirk@hohndel.org>2020-12-12 15:52:40 -0800
commit16f86f2f65e73935496e3324bb16f9b8cd4d7953 (patch)
treeb7add43d1197fc782d9901a7bbf79e4e99f793ec /commands
parent369c5b0dc656cbf4da2c8185debc355af4243cc5 (diff)
downloadsubsurface-16f86f2f65e73935496e3324bb16f9b8cd4d7953.tar.gz
desktop: use getDiveSelection to access selected dives
In the list view two functions were still manually collecting the selected dives. Use getDiveSelection() there as well. Careful: that means that the check for dives that are already outside of a trip now has to be done in the RemoveDivesFromTrip command. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
Diffstat (limited to 'commands')
-rw-r--r--commands/command_divelist.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/commands/command_divelist.cpp b/commands/command_divelist.cpp
index b19075581..262197214 100644
--- a/commands/command_divelist.cpp
+++ b/commands/command_divelist.cpp
@@ -740,8 +740,14 @@ void TripBase::undoit()
redoit();
}
-RemoveDivesFromTrip::RemoveDivesFromTrip(const QVector<dive *> &divesToRemove)
+RemoveDivesFromTrip::RemoveDivesFromTrip(const QVector<dive *> &divesToRemoveIn)
{
+ // Filter out dives outside of trip. Note: This is in a separate loop to get the command-description right.
+ QVector<dive *> divesToRemove;
+ for (dive *d: divesToRemoveIn) {
+ if (d->divetrip)
+ divesToRemove.push_back(d);
+ }
setText(QStringLiteral("%1 [%2]").arg(Command::Base::tr("remove %n dive(s) from trip", "", divesToRemove.size())).arg(getListOfDives(divesToRemove)));
divesToMove.divesToMove.reserve(divesToRemove.size());
for (dive *d: divesToRemove) {