Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mapsme/omim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Zolotarev <deathbaba@gmail.com>2011-10-21 19:39:00 +0400
committerAlex Zolotarev <alex@maps.me>2015-09-23 01:26:32 +0300
commit946bf7b727cce9dbc8a0c1b0f7f7ddec2d2d16cb (patch)
tree1750b08be8882e1d656ca42253085b3fc7909230 /qt/mainwindow.cpp
parent43a0bd87f5856a303d552ca895dd0fea72a1ecda (diff)
[qt][ios] Refactored location manager
Diffstat (limited to 'qt/mainwindow.cpp')
-rw-r--r--qt/mainwindow.cpp28
1 files changed, 23 insertions, 5 deletions
diff --git a/qt/mainwindow.cpp b/qt/mainwindow.cpp
index 1afa271fc9..76fe7497f7 100644
--- a/qt/mainwindow.cpp
+++ b/qt/mainwindow.cpp
@@ -43,6 +43,7 @@ MainWindow::MainWindow()
#endif // NO_DOWNLOADER
{
m_pDrawWidget = new DrawWidget(this, m_storage);
+ m_locationService.reset(CreateDesktopLocationService(*this));
CreateNavigationBar();
CreateSearchBarAndPanel();
@@ -301,10 +302,27 @@ void MainWindow::OnAbout()
dlg.exec();
}
-void MainWindow::OnLocationFound()
+void MainWindow::OnLocationStatusChanged(location::TLocationStatus newStatus)
{
- m_pMyPositionAction->setIcon(QIcon(":/navig64/location.png"));
- m_pMyPositionAction->setToolTip(tr("My Position"));
+ switch (newStatus)
+ {
+ case location::EFirstEvent:
+ m_pMyPositionAction->setIcon(QIcon(":/navig64/location.png"));
+ m_pMyPositionAction->setToolTip(tr("My Position"));
+ break;
+ case location::EDisabledByUser:
+ case location::ENotSupported:
+ m_pMyPositionAction->setChecked(false);
+ break;
+ default:
+ break;
+ }
+ m_pDrawWidget->Framework().OnLocationStatusChanged(newStatus);
+}
+
+void MainWindow::OnGpsUpdated(location::GpsInfo const & info)
+{
+ m_pDrawWidget->Framework().OnGpsUpdate(info);
}
void MainWindow::OnMyPosition()
@@ -313,13 +331,13 @@ void MainWindow::OnMyPosition()
{
m_pMyPositionAction->setIcon(QIcon(":/navig64/location-search.png"));
m_pMyPositionAction->setToolTip(tr("Looking for position..."));
- m_pDrawWidget->OnEnableMyPosition(bind(&MainWindow::OnLocationFound, this));
+ m_locationService->Start();
}
else
{
m_pMyPositionAction->setIcon(QIcon(":/navig64/location.png"));
m_pMyPositionAction->setToolTip(tr("My Position"));
- m_pDrawWidget->OnDisableMyPosition();
+ m_locationService->Stop();
}
}