From 28cb75b73d3d0fa4cd8dcf3aa5884e93cb13a5d2 Mon Sep 17 00:00:00 2001 From: Berthold Stoeger Date: Fri, 30 Aug 2019 12:38:25 +0200 Subject: Map: explicitly reload selected map on click When clicking on a flag 1) The QML would call MapLocationModel::setSelected() with fromClick = true 2) MapLocationModel::setSelected() would emit a signal selectedLocationChanged() 3) MapWidgetHelper would catch that signal and do the actual processing. Other functions would call MapLocationModel::setSelected() with fromClick = false, which would not emit the selectedLocationChanged() signal. Detangle this a bit by calling the selectedLocationChanged() function directly from QML and remove the fromClick parameter. Signed-off-by: Berthold Stoeger --- qt-models/maplocationmodel.cpp | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'qt-models/maplocationmodel.cpp') diff --git a/qt-models/maplocationmodel.cpp b/qt-models/maplocationmodel.cpp index da0ec7337..452c49b8d 100644 --- a/qt-models/maplocationmodel.cpp +++ b/qt-models/maplocationmodel.cpp @@ -193,14 +193,11 @@ void MapLocationModel::reload(QObject *map) endResetModel(); } -void MapLocationModel::setSelected(struct dive_site *ds, bool fromClick) +void MapLocationModel::setSelected(struct dive_site *ds) { m_selectedDs.clear(); - if (!ds) - return; - m_selectedDs.append(ds); - if (fromClick) - emit selectedLocationChanged(getMapLocation(ds)); + if (ds) + m_selectedDs.append(ds); } bool MapLocationModel::isSelected(const QVariant &dsVariant) const -- cgit v1.2.3-70-g09d2