diff options
author | Michal Klocek <michal.klocek@theqtcompany.com> | 2015-06-01 11:46:56 +0200 |
---|---|---|
committer | Michal Klocek <michal.klocek@theqtcompany.com> | 2015-06-03 17:53:47 +0000 |
commit | 6ff0c408efd1b2282c5f4ba32b2895f81021c063 (patch) | |
tree | a4deea96a19aa8d01f5cc07a00bfb85165714c04 /src/location | |
parent | 263556ceda91a66073361b5917b9fe5b2c79f84e (diff) | |
download | qtlocation-6ff0c408efd1b2282c5f4ba32b2895f81021c063.tar.gz |
Remove de/register from qgeotiledmappingmanagerengine
Removes not required engine registration.
Change-Id: I5d30043a33785e0dcd798517754e846a7f420220
Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
Diffstat (limited to 'src/location')
-rw-r--r-- | src/location/maps/qgeomappingmanagerengine_p.h | 2 | ||||
-rw-r--r-- | src/location/maps/qgeotiledmap.cpp | 6 | ||||
-rw-r--r-- | src/location/maps/qgeotiledmappingmanagerengine.cpp | 18 | ||||
-rw-r--r-- | src/location/maps/qgeotiledmappingmanagerengine_p.h | 3 | ||||
-rw-r--r-- | src/location/maps/qgeotiledmappingmanagerengine_p_p.h | 1 | ||||
-rw-r--r-- | src/location/maps/qgeotilerequestmanager.cpp | 6 |
6 files changed, 10 insertions, 26 deletions
diff --git a/src/location/maps/qgeomappingmanagerengine_p.h b/src/location/maps/qgeomappingmanagerengine_p.h index b9565d87..7e866d89 100644 --- a/src/location/maps/qgeomappingmanagerengine_p.h +++ b/src/location/maps/qgeomappingmanagerengine_p.h @@ -81,8 +81,6 @@ public: virtual ~QGeoMappingManagerEngine(); virtual QGeoMap *createMap() = 0; - virtual void registerMap(QGeoMap *map) = 0; - virtual void deregisterMap(QGeoMap *map) = 0; QVariantMap parameters() const; diff --git a/src/location/maps/qgeotiledmap.cpp b/src/location/maps/qgeotiledmap.cpp index 4e635c4b..07d117cf 100644 --- a/src/location/maps/qgeotiledmap.cpp +++ b/src/location/maps/qgeotiledmap.cpp @@ -72,6 +72,12 @@ QGeoTiledMap::~QGeoTiledMap() Q_D(QGeoTiledMap); delete d->m_tileRequests; d->m_tileRequests = 0; + + if (!d->m_engine.isNull()) { + QGeoTiledMappingManagerEngine *engine = qobject_cast<QGeoTiledMappingManagerEngine*>(d->m_engine); + Q_ASSERT(engine); + engine->releaseMap(this); + } } QGeoTileRequestManager *QGeoTiledMap::requestManager() diff --git a/src/location/maps/qgeotiledmappingmanagerengine.cpp b/src/location/maps/qgeotiledmappingmanagerengine.cpp index 96758854..6ce3faca 100644 --- a/src/location/maps/qgeotiledmappingmanagerengine.cpp +++ b/src/location/maps/qgeotiledmappingmanagerengine.cpp @@ -99,24 +99,8 @@ QGeoMap *QGeoTiledMappingManagerEngine::createMap() return NULL; } -void QGeoTiledMappingManagerEngine::registerMap(QGeoMap *m) +void QGeoTiledMappingManagerEngine::releaseMap(QGeoTiledMap *map) { - QGeoTiledMap* map = qobject_cast<QGeoTiledMap*>(m); - if (!map) { - qWarning() << "QGeoTiledMappingManagerEngine can only register QGeoTiledMap"; - return; - } - d_ptr->tileMaps_.insert(map); -} - -void QGeoTiledMappingManagerEngine::deregisterMap(QGeoMap *m) -{ - QGeoTiledMap* map = qobject_cast<QGeoTiledMap*>(m); - if (!map) { - qWarning() << "QGeoTiledMappingManagerEngine can only deregister QGeoTiledMap"; - return; - } - d_ptr->tileMaps_.remove(map); d_ptr->mapHash_.remove(map); QHash<QGeoTileSpec, QSet<QGeoTiledMap *> > newTileHash = d_ptr->tileHash_; diff --git a/src/location/maps/qgeotiledmappingmanagerengine_p.h b/src/location/maps/qgeotiledmappingmanagerengine_p.h index 6cc4caea..e9cbf725 100644 --- a/src/location/maps/qgeotiledmappingmanagerengine_p.h +++ b/src/location/maps/qgeotiledmappingmanagerengine_p.h @@ -73,8 +73,7 @@ public: QGeoTileFetcher *tileFetcher(); QGeoMap *createMap() Q_DECL_OVERRIDE; - void registerMap(QGeoMap *map) Q_DECL_OVERRIDE; - void deregisterMap(QGeoMap *map) Q_DECL_OVERRIDE; + void releaseMap(QGeoTiledMap *map); QSize tileSize() const; diff --git a/src/location/maps/qgeotiledmappingmanagerengine_p_p.h b/src/location/maps/qgeotiledmappingmanagerengine_p_p.h index 77e84e85..e679b627 100644 --- a/src/location/maps/qgeotiledmappingmanagerengine_p_p.h +++ b/src/location/maps/qgeotiledmappingmanagerengine_p_p.h @@ -68,7 +68,6 @@ public: ~QGeoTiledMappingManagerEnginePrivate(); QSize tileSize_; - QSet<QGeoTiledMap *> tileMaps_; QHash<QGeoTiledMap *, QSet<QGeoTileSpec> > mapHash_; QHash<QGeoTileSpec, QSet<QGeoTiledMap *> > tileHash_; QGeoTiledMappingManagerEngine::CacheAreas cacheHint_; diff --git a/src/location/maps/qgeotilerequestmanager.cpp b/src/location/maps/qgeotilerequestmanager.cpp index d689d618..8857671d 100644 --- a/src/location/maps/qgeotilerequestmanager.cpp +++ b/src/location/maps/qgeotilerequestmanager.cpp @@ -66,14 +66,12 @@ public: QGeoTileRequestManager::QGeoTileRequestManager(QGeoTiledMap *map, QGeoTiledMappingManagerEngine *engine) : d_ptr(new QGeoTileRequestManagerPrivate(map, engine)) { - if (!d_ptr->m_engine.isNull()) - d_ptr->m_engine->registerMap(d_ptr->m_map); + } QGeoTileRequestManager::~QGeoTileRequestManager() { - if (!d_ptr->m_engine.isNull()) - d_ptr->m_engine->deregisterMap(d_ptr->m_map); + } QList<QSharedPointer<QGeoTileTexture> > QGeoTileRequestManager::requestTiles(const QSet<QGeoTileSpec> &tiles) |