summaryrefslogtreecommitdiff
path: root/src/location/maps/qgeotiledmappingmanagerengine.cpp
diff options
context:
space:
mode:
authorMichal Klocek <michal.klocek@theqtcompany.com>2015-05-18 11:12:16 +0200
committerMichal Klocek <michal.klocek@theqtcompany.com>2015-06-04 14:50:51 +0000
commit374077292b4be4a03eb8ca9a6eaae41e4de6f942 (patch)
tree2f56803b02c81337660743720745abe65e923114 /src/location/maps/qgeotiledmappingmanagerengine.cpp
parent2d10f0a06c4aa99257cafb6729034f9f843fb31c (diff)
downloadqtlocation-374077292b4be4a03eb8ca9a6eaae41e4de6f942.tar.gz
Fix tile version handling
Here maps plugin checks server for tile version. When tile version is updated, update not only the current camera tiles, but also scene tiles. Task-number: QTBUG-44809 Change-Id: Iedb3add5308a2e61cc18e169e33ea4510e1a4fee Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
Diffstat (limited to 'src/location/maps/qgeotiledmappingmanagerengine.cpp')
-rw-r--r--src/location/maps/qgeotiledmappingmanagerengine.cpp21
1 files changed, 19 insertions, 2 deletions
diff --git a/src/location/maps/qgeotiledmappingmanagerengine.cpp b/src/location/maps/qgeotiledmappingmanagerengine.cpp
index 6ce3faca..b9322c13 100644
--- a/src/location/maps/qgeotiledmappingmanagerengine.cpp
+++ b/src/location/maps/qgeotiledmappingmanagerengine.cpp
@@ -201,7 +201,6 @@ void QGeoTiledMappingManagerEngine::engineTileFinished(const QGeoTileSpec &spec,
}
d->tileHash_.remove(spec);
-
tileCache()->insert(spec, bytes, format, d->cacheHint_);
map = maps.constBegin();
@@ -243,12 +242,27 @@ void QGeoTiledMappingManagerEngine::setTileSize(const QSize &tileSize)
d->tileSize_ = tileSize;
}
+void QGeoTiledMappingManagerEngine::setTileVersion(int version)
+{
+ Q_D(QGeoTiledMappingManagerEngine);
+ if (d->m_tileVersion != version) {
+ d->m_tileVersion = version;
+ emit tileVersionChanged();
+ }
+}
+
QSize QGeoTiledMappingManagerEngine::tileSize() const
{
Q_D(const QGeoTiledMappingManagerEngine);
return d->tileSize_;
}
+int QGeoTiledMappingManagerEngine::tileVersion() const
+{
+ Q_D(const QGeoTiledMappingManagerEngine);
+ return d->m_tileVersion;
+}
+
QGeoTiledMappingManagerEngine::CacheAreas QGeoTiledMappingManagerEngine::cacheHint() const
{
Q_D(const QGeoTiledMappingManagerEngine);
@@ -292,7 +306,10 @@ QSharedPointer<QGeoTileTexture> QGeoTiledMappingManagerEngine::getTileTexture(co
*******************************************************************************/
QGeoTiledMappingManagerEnginePrivate::QGeoTiledMappingManagerEnginePrivate()
-: cacheHint_(QGeoTiledMappingManagerEngine::AllCaches), tileCache_(0), fetcher_(0)
+: m_tileVersion(-1),
+ cacheHint_(QGeoTiledMappingManagerEngine::AllCaches),
+ tileCache_(0),
+ fetcher_(0)
{
}