summaryrefslogtreecommitdiffstats
path: root/desktop-widgets/mapwidget.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'desktop-widgets/mapwidget.cpp')
-rw-r--r--desktop-widgets/mapwidget.cpp21
1 files changed, 17 insertions, 4 deletions
diff --git a/desktop-widgets/mapwidget.cpp b/desktop-widgets/mapwidget.cpp
index 4ac394b4e..0b7624371 100644
--- a/desktop-widgets/mapwidget.cpp
+++ b/desktop-widgets/mapwidget.cpp
@@ -29,11 +29,14 @@ MapWidget::MapWidget(QWidget *parent) : QQuickWidget(parent)
m_mapHelper = rootObject()->findChild<MapWidgetHelper *>();
connect(m_mapHelper, SIGNAL(selectedDivesChanged(QList<int>)),
this, SLOT(selectedDivesChanged(QList<int>)));
+ connect(m_mapHelper, SIGNAL(coordinatesChanged()),
+ this, SLOT(coordinatesChangedLocal()));
}
void MapWidget::centerOnDiveSite(struct dive_site *ds)
{
- m_mapHelper->centerOnDiveSite(ds);
+ if (!skipReload)
+ m_mapHelper->centerOnDiveSite(ds);
}
void MapWidget::centerOnIndex(const QModelIndex& idx)
@@ -52,23 +55,28 @@ void MapWidget::repopulateLabels()
void MapWidget::reload()
{
+ setEditMode(false);
if (!skipReload)
m_mapHelper->reloadMapLocations();
}
+void MapWidget::setEditMode(bool editMode)
+{
+ m_mapHelper->setEditMode(editMode);
+}
+
void MapWidget::endGetDiveCoordinates()
{
- // TODO;
+ setEditMode(false);
}
void MapWidget::prepareForGetDiveCoordinates()
{
- // TODO;
+ setEditMode(true);
}
void MapWidget::selectedDivesChanged(QList<int> list)
{
- qDebug() << "onSelectedDivesChanged:" << list.size();
skipReload = true;
MainWindow::instance()->dive_list()->unselectDives();
if (!list.empty())
@@ -76,6 +84,11 @@ void MapWidget::selectedDivesChanged(QList<int> list)
skipReload = false;
}
+void MapWidget::coordinatesChangedLocal()
+{
+ emit coordinatesChanged();
+}
+
MapWidget::~MapWidget()
{
m_instance = NULL;