diff options
author | Michal Klocek <michal.klocek@theqtcompany.com> | 2015-05-18 11:12:16 +0200 |
---|---|---|
committer | Michal Klocek <michal.klocek@theqtcompany.com> | 2015-06-04 14:50:51 +0000 |
commit | 374077292b4be4a03eb8ca9a6eaae41e4de6f942 (patch) | |
tree | 2f56803b02c81337660743720745abe65e923114 /src/location/maps/qgeotiledmappingmanagerengine.cpp | |
parent | 2d10f0a06c4aa99257cafb6729034f9f843fb31c (diff) | |
download | qtlocation-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.cpp | 21 |
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) { } |