From ac02854a8aa98dcd6876c9249654ac9e1d949c92 Mon Sep 17 00:00:00 2001 From: Berthold Stoeger Date: Mon, 8 Oct 2018 16:24:41 +0200 Subject: Map: don't access displayed_dive_site in reloadMapLocations() MapWidgetHelper::reloadMapLocations() reloads all dive flags of the non-hidden dives plus the one of the currently edited dive. Use the current_dive macro to determine whether this is the current dive site instead of the global displayed_dive_site object. This is part of a series of commits, which makes the map-code independent of the global displayed_dive_site object. Signed-off-by: Berthold Stoeger --- map-widget/qmlmapwidgethelper.cpp | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) (limited to 'map-widget') diff --git a/map-widget/qmlmapwidgethelper.cpp b/map-widget/qmlmapwidgethelper.cpp index 8164abd3a..adaaf8848 100644 --- a/map-widget/qmlmapwidgethelper.cpp +++ b/map-widget/qmlmapwidgethelper.cpp @@ -125,19 +125,13 @@ void MapWidgetHelper::reloadMapLocations() QVector locationUuids; qreal latitude, longitude; - if (displayed_dive_site.uuid && dive_site_has_gps_location(&displayed_dive_site)) { - latitude = displayed_dive_site.latitude.udeg * 0.000001; - longitude = displayed_dive_site.longitude.udeg * 0.000001; - location = new MapLocation(displayed_dive_site.uuid, QGeoCoordinate(latitude, longitude), - QString(displayed_dive_site.name)); - locationList.append(location); - locationNameMap[QString(displayed_dive_site.name)] = location; - } for_each_dive(idx, dive) { - if (dive->hidden_by_filter) + // Don't show dive sites of hidden dives, unless this is the currently + // displayed (edited) dive. + 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) || ds->uuid == displayed_dive_site.uuid || locationUuids.contains(ds->uuid)) + if (!dive_site_has_gps_location(ds) || locationUuids.contains(ds->uuid)) continue; latitude = ds->latitude.udeg * 0.000001; longitude = ds->longitude.udeg * 0.000001; -- cgit v1.2.3-70-g09d2