summaryrefslogtreecommitdiffstats
path: root/map-widget/qmlmapwidgethelper.cpp
diff options
context:
space:
mode:
authorGravatar Berthold Stoeger <bstoeger@mail.tuwien.ac.at>2019-08-30 17:38:54 +0200
committerGravatar Dirk Hohndel <dirk@hohndel.org>2019-09-06 11:48:47 -0700
commit488eb1542336088245841d79549e26938e2d3fd9 (patch)
treebba9ed5d849fa7ac8639078651582576b0ab4867 /map-widget/qmlmapwidgethelper.cpp
parentb39f2406c6a520f0b3743324744f3c55914adc52 (diff)
downloadsubsurface-488eb1542336088245841d79549e26938e2d3fd9.tar.gz
Desktop: show all selected dive sites on click
When clicking a dive site on the map, the QML code would set the selected dive site, but then all dives of dive sites in the vicinity were set. But still only the clicked-on dive site was shown. Therefore, don't set the list of selected dive sites in QML, but later in DiveListView::selectDives(), where we know all the dives that were selected. This, again, gives nasty entanglement of diverse widgets and models. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
Diffstat (limited to 'map-widget/qmlmapwidgethelper.cpp')
-rw-r--r--map-widget/qmlmapwidgethelper.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/map-widget/qmlmapwidgethelper.cpp b/map-widget/qmlmapwidgethelper.cpp
index 02bfa78a2..fe43c6fce 100644
--- a/map-widget/qmlmapwidgethelper.cpp
+++ b/map-widget/qmlmapwidgethelper.cpp
@@ -46,6 +46,11 @@ void MapWidgetHelper::centerOnDiveSite(struct dive_site *ds)
}
}
+void MapWidgetHelper::setSelected(const QVector<dive_site *> &divesites)
+{
+ m_mapLocationModel->setSelected(divesites);
+}
+
void MapWidgetHelper::centerOnSelectedDiveSite()
{
QVector<struct dive_site *> selDS = m_mapLocationModel->selectedDs();
@@ -115,6 +120,7 @@ void MapWidgetHelper::reloadMapLocations()
void MapWidgetHelper::selectionChanged()
{
+ updateEditMode();
m_mapLocationModel->selectionChanged();
}