summaryrefslogtreecommitdiffstats
path: root/map-widget
diff options
context:
space:
mode:
Diffstat (limited to 'map-widget')
-rw-r--r--map-widget/qmlmapwidgethelper.cpp32
-rw-r--r--map-widget/qmlmapwidgethelper.h3
2 files changed, 11 insertions, 24 deletions
diff --git a/map-widget/qmlmapwidgethelper.cpp b/map-widget/qmlmapwidgethelper.cpp
index 96db063ae..b49ec248d 100644
--- a/map-widget/qmlmapwidgethelper.cpp
+++ b/map-widget/qmlmapwidgethelper.cpp
@@ -96,16 +96,21 @@ void MapWidgetHelper::centerOnSelectedDiveSite()
}
}
-void MapWidgetHelper::reloadMapLocations()
+void MapWidgetHelper::updateEditMode()
{
#ifndef SUBSURFACE_MOBILE
// The filter being set to dive site is the signal that we are in dive site edit mode.
// This is the case when either the dive site edit tab or the dive site list tab are active.
- if (MultiFilterSortModel::instance()->diveSiteMode())
- enterEditMode();
- else
- exitEditMode();
+ bool old = m_editMode;
+ m_editMode = MultiFilterSortModel::instance()->diveSiteMode();
+ if (old != m_editMode)
+ emit editModeChanged();
#endif
+}
+
+void MapWidgetHelper::reloadMapLocations()
+{
+ updateEditMode();
m_mapLocationModel->reload(m_map);
}
@@ -225,23 +230,6 @@ void MapWidgetHelper::diveSiteChanged(struct dive_site *ds, int field)
centerOnDiveSite(ds);
}
-void MapWidgetHelper::exitEditMode()
-{
- if (!m_editMode)
- return;
- m_editMode = false;
- emit editModeChanged();
-}
-
-void MapWidgetHelper::enterEditMode()
-{
- if (m_editMode)
- return;
-
- m_editMode = true;
- emit editModeChanged();
-}
-
QString MapWidgetHelper::pluginObject()
{
QString lang = uiLanguage(NULL).replace('_', '-');
diff --git a/map-widget/qmlmapwidgethelper.h b/map-widget/qmlmapwidgethelper.h
index 86d9a8ff5..4079b6aa0 100644
--- a/map-widget/qmlmapwidgethelper.h
+++ b/map-widget/qmlmapwidgethelper.h
@@ -38,8 +38,7 @@ public:
QString pluginObject();
private:
- void enterEditMode();
- void exitEditMode();
+ void updateEditMode();
QObject *m_map;
MapLocationModel *m_mapLocationModel;
qreal m_smallCircleRadius;