m_scroller = &MapScroller::getInstance();
- connect(m_scroller, SIGNAL(coordinateUpdated(SceneCoordinate, bool)),
- this, SLOT(setCenterPosition(SceneCoordinate, bool)));
+ connect(m_scroller, SIGNAL(coordinateUpdated(SceneCoordinate)),
+ this, SLOT(setCenterPosition(SceneCoordinate)));
connect(m_scroller, SIGNAL(stateChanged(QAbstractAnimation::State, QAbstractAnimation::State)),
this, SLOT(scrollerStateChanged(QAbstractAnimation::State)));
{
qDebug() << __PRETTY_FUNCTION__;
- QSettings settings(DIRECTORY_NAME, FILE_NAME);
+ QSettings settings(SETTINGS_ORGANIZATION_NAME, SETTINGS_APPLICATION_NAME);
settings.setValue(MAP_LAST_POSITION, QVariant::fromValue(centerGeoCoordinate()));
settings.setValue(MAP_LAST_ZOOMLEVEL, m_zoomLevel);
int marginVertical = 0;
if (useMargins) {
- marginHorizontal = 50;
+ marginHorizontal = 5;
marginVertical = 5;
}
// calculate the usable size of the view
- int viewUsableHeight = m_viewSize.height() - 2 * marginHorizontal;
- int viewUsableWidth = m_viewSize.width() - 2 * marginVertical;
+ int viewUsableHeight = m_viewSize.height() - 2 * marginVertical;
+ int viewUsableWidth = m_viewSize.width() - 2 * marginHorizontal;
// calculate how many levels must be zoomed out from the closest zoom level to get the rect
// fit inside the usable view area
scrollToPosition(SceneCoordinate(coordinate));
}
+void MapEngine::clearRoute()
+{
+ qDebug() << __PRETTY_FUNCTION__;
+
+ if (m_mapRouteItem) {
+ m_mapScene->removeItem(m_mapRouteItem);
+ delete m_mapRouteItem;
+ m_mapRouteItem = 0;
+ }
+}
+
QPoint MapEngine::convertSceneCoordinateToTileNumber(int zoomLevel, SceneCoordinate coordinate)
{
qDebug() << __PRETTY_FUNCTION__;
{
qDebug() << __PRETTY_FUNCTION__;
- QSettings settings(DIRECTORY_NAME, FILE_NAME);
+ QSettings settings(SETTINGS_ORGANIZATION_NAME, SETTINGS_APPLICATION_NAME);
// init can be only done if both values exists in the settings
if (settings.contains(MAP_LAST_POSITION) && settings.contains(MAP_LAST_ZOOMLEVEL)) {
updateDirectionIndicator();
}
-void MapEngine::setCenterPosition(SceneCoordinate coordinate, bool isUserDragAction)
+void MapEngine::setCenterPosition(SceneCoordinate coordinate)
{
qDebug() << __PRETTY_FUNCTION__;
disableAutoCenteringIfRequired(coordinate);
m_sceneCoordinate = coordinate;
- emit locationChanged(m_sceneCoordinate, isUserDragAction);
+ emit locationChanged(m_sceneCoordinate);
if (isCenterTileChanged(coordinate)) {
getTiles(coordinate);
{
qDebug() << __PRETTY_FUNCTION__;
- m_route = route;
-
- // delete old route track (if exists)
- if (m_mapRouteItem) {
- m_mapScene->removeItem(m_mapRouteItem);
- delete m_mapRouteItem;
- m_mapRouteItem = 0;
- }
+ clearRoute();
- // create new route track
- m_mapRouteItem = new MapRouteItem(&m_route);
+ m_mapRouteItem = new MapRouteItem(&route);
m_mapScene->addItem(m_mapRouteItem);
centerAndZoomTo(m_mapRouteItem->boundingRect().toRect());
m_viewSize = size;
setTilesGridSize(m_viewSize);
- emit locationChanged(m_sceneCoordinate, false);
+ emit locationChanged(m_sceneCoordinate);
getTiles(m_sceneCoordinate);
m_mapScene->removeOutOfViewTiles(m_viewTilesGrid, m_zoomLevel);
m_mapScene->setSceneVerticalOverlap(m_viewSize.height(), m_zoomLevel);