summaryrefslogtreecommitdiffstats
path: root/desktop-widgets/command_edit.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'desktop-widgets/command_edit.cpp')
-rw-r--r--desktop-widgets/command_edit.cpp13
1 files changed, 11 insertions, 2 deletions
diff --git a/desktop-widgets/command_edit.cpp b/desktop-widgets/command_edit.cpp
index 73080061b..dd681e1d8 100644
--- a/desktop-widgets/command_edit.cpp
+++ b/desktop-widgets/command_edit.cpp
@@ -1,6 +1,7 @@
// SPDX-License-Identifier: GPL-2.0
#include "command_edit.h"
+#include "command_private.h"
#include "core/divelist.h"
#include "core/qthelper.h" // for copy_qstring
#include "desktop-widgets/mapwidget.h" // TODO: Replace desktop-dependency by signal
@@ -59,7 +60,11 @@ void EditBase<T>::undo()
std::swap(old, value);
- emit diveListNotifier.divesEdited(QVector<dive *>::fromStdVector(dives), fieldId());
+ // Send signals.
+ DiveField id = fieldId();
+ processByTrip(dives, [&](dive_trip *trip, const QVector<dive *> &divesInTrip) {
+ emit diveListNotifier.divesChanged(trip, divesInTrip, id);
+ });
mark_divelist_changed(true);
}
@@ -460,7 +465,11 @@ void EditTagsBase::undo()
std::swap(tagsToAdd, tagsToRemove);
- emit diveListNotifier.divesEdited(QVector<dive *>::fromStdVector(dives), fieldId());
+ // Send signals.
+ DiveField id = fieldId();
+ processByTrip(dives, [&](dive_trip *trip, const QVector<dive *> &divesInTrip) {
+ emit diveListNotifier.divesChanged(trip, divesInTrip, id);
+ });
mark_divelist_changed(true);
}