summaryrefslogtreecommitdiffstats
path: root/desktop-widgets/tab-widgets
diff options
context:
space:
mode:
authorGravatar Berthold Stoeger <bstoeger@mail.tuwien.ac.at>2019-06-23 09:22:26 +0200
committerGravatar bstoeger <32835590+bstoeger@users.noreply.github.com>2019-06-23 20:08:46 +0200
commit27944a52b1c2a1c68ccfe88c4a84d3f74fb8b512 (patch)
tree160fef9677e5cc2e907d4c32448553f74df4d2db /desktop-widgets/tab-widgets
parentcbcddaa396f6668fef7750eb2721bc70ca11d0e4 (diff)
downloadsubsurface-27944a52b1c2a1c68ccfe88c4a84d3f74fb8b512.tar.gz
Undo: don't send signals batched by trip
Since the default view is batched by trips, signals were sent trip-wise. This seemed like a good idea at first, but when more and more parts used these signals, it became a burden. Therefore push the batching to the part of the code where it is needed: the trip view. The divesAdded and divesDeleted are not yet converted, because these are combined with trip addition/deletion. This should also be detangled, but not now. Since the dive-lists were sorted in the processByTrip function, the dive-list model now does its own sorting. This will have to be audited. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
Diffstat (limited to 'desktop-widgets/tab-widgets')
-rw-r--r--desktop-widgets/tab-widgets/TabDiveInformation.cpp3
-rw-r--r--desktop-widgets/tab-widgets/TabDiveInformation.h2
-rw-r--r--desktop-widgets/tab-widgets/maintab.cpp2
-rw-r--r--desktop-widgets/tab-widgets/maintab.h2
4 files changed, 4 insertions, 5 deletions
diff --git a/desktop-widgets/tab-widgets/TabDiveInformation.cpp b/desktop-widgets/tab-widgets/TabDiveInformation.cpp
index 589071a5e..9af640a8e 100644
--- a/desktop-widgets/tab-widgets/TabDiveInformation.cpp
+++ b/desktop-widgets/tab-widgets/TabDiveInformation.cpp
@@ -5,7 +5,6 @@
#include "core/units.h"
#include "core/dive.h"
#include "desktop-widgets/command.h"
-#include "core/trip.h" // TODO: Needed because divesChanged uses a trip parameter -> remove that!
#include "core/qthelper.h"
#include "core/statistics.h"
#include "core/display.h"
@@ -131,7 +130,7 @@ void TabDiveInformation::updateData()
// This function gets called if a field gets updated by an undo command.
// Refresh the corresponding UI field.
-void TabDiveInformation::divesChanged(dive_trip *trip, const QVector<dive *> &dives, DiveField field)
+void TabDiveInformation::divesChanged(const QVector<dive *> &dives, DiveField field)
{
// If the current dive is not in list of changed dives, do nothing
if (!current_dive || !dives.contains(current_dive))
diff --git a/desktop-widgets/tab-widgets/TabDiveInformation.h b/desktop-widgets/tab-widgets/TabDiveInformation.h
index e2b2e3c94..04c27acab 100644
--- a/desktop-widgets/tab-widgets/TabDiveInformation.h
+++ b/desktop-widgets/tab-widgets/TabDiveInformation.h
@@ -17,7 +17,7 @@ public:
void updateData() override;
void clear() override;
private slots:
- void divesChanged(dive_trip *trip, const QVector<dive *> &dives, DiveField field);
+ void divesChanged(const QVector<dive *> &dives, DiveField field);
void on_atmPressVal_editingFinished();
void on_atmPressType_currentIndexChanged(int index);
private:
diff --git a/desktop-widgets/tab-widgets/maintab.cpp b/desktop-widgets/tab-widgets/maintab.cpp
index 76c651328..ee246e3ab 100644
--- a/desktop-widgets/tab-widgets/maintab.cpp
+++ b/desktop-widgets/tab-widgets/maintab.cpp
@@ -281,7 +281,7 @@ static void profileFromDive(struct dive *d)
// This function gets called if a field gets updated by an undo command.
// Refresh the corresponding UI field.
-void MainTab::divesChanged(dive_trip *trip, const QVector<dive *> &dives, DiveField field)
+void MainTab::divesChanged(const QVector<dive *> &dives, DiveField field)
{
// If the current dive is not in list of changed dives, do nothing
if (!current_dive || !dives.contains(current_dive))
diff --git a/desktop-widgets/tab-widgets/maintab.h b/desktop-widgets/tab-widgets/maintab.h
index 5968c7d31..671f22ac4 100644
--- a/desktop-widgets/tab-widgets/maintab.h
+++ b/desktop-widgets/tab-widgets/maintab.h
@@ -46,7 +46,7 @@ public:
public
slots:
- void divesChanged(dive_trip *trip, const QVector<dive *> &dives, DiveField field);
+ void divesChanged(const QVector<dive *> &dives, DiveField field);
void diveSiteEdited(dive_site *ds, int field);
void tripChanged(dive_trip *trip, TripField field);
void updateDiveInfo();