From f41bb32428f1e6377b7b293215e8c2f71fa06c9a Mon Sep 17 00:00:00 2001 From: Berthold Stoeger Date: Thu, 25 Oct 2018 20:58:54 +0200 Subject: [PATCH] Dive site: use an array of pointers in reloadMapLocations() MapWidgetHelper::reloadMapLocations() used an array of uuids to add dive sites to the map only once. Replace this by an array of pointers. This is a small piece of a larger effort to remove dive site UUIDs. Signed-off-by: Berthold Stoeger --- core/subsurface-qt/DiveObjectHelper.cpp | 2 +- map-widget/qmlmapwidgethelper.cpp | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/core/subsurface-qt/DiveObjectHelper.cpp b/core/subsurface-qt/DiveObjectHelper.cpp index c605d01c8..b1d319c37 100644 --- a/core/subsurface-qt/DiveObjectHelper.cpp +++ b/core/subsurface-qt/DiveObjectHelper.cpp @@ -129,7 +129,7 @@ QString DiveObjectHelper::gps_decimal() const QVariant DiveObjectHelper::dive_site() const { - return QVariant::fromValue((void *)get_dive_site_by_uuid(m_dive->dive_site_uuid)); + return QVariant::fromValue((uintptr_t)get_dive_site_by_uuid(m_dive->dive_site_uuid)); } QString DiveObjectHelper::duration() const diff --git a/map-widget/qmlmapwidgethelper.cpp b/map-widget/qmlmapwidgethelper.cpp index a4960608a..4bfa4ea31 100644 --- a/map-widget/qmlmapwidgethelper.cpp +++ b/map-widget/qmlmapwidgethelper.cpp @@ -120,7 +120,7 @@ void MapWidgetHelper::reloadMapLocations() m_mapLocationModel->clear(); MapLocation *location; QVector locationList; - QVector locationUuids; + QVector locations; qreal latitude, longitude; for_each_dive(idx, dive) { @@ -129,7 +129,7 @@ void MapWidgetHelper::reloadMapLocations() if (dive->hidden_by_filter && dive != current_dive) continue; struct dive_site *ds = get_dive_site_for_dive(dive); - if (!dive_site_has_gps_location(ds) || locationUuids.contains(ds->uuid)) + if (!dive_site_has_gps_location(ds) || locations.contains(ds)) continue; latitude = ds->location.lat.udeg * 0.000001; longitude = ds->location.lon.udeg * 0.000001; @@ -145,7 +145,7 @@ void MapWidgetHelper::reloadMapLocations() } location = new MapLocation(ds->uuid, dsCoord, name); locationList.append(location); - locationUuids.append(ds->uuid); + locations.append(ds); locationNameMap[name] = location; } m_mapLocationModel->addList(locationList);