diff --git a/src/location/maps/qgeomap.cpp b/src/location/maps/qgeomap.cpp index 2419b79ab065a2e2a75abdfa673d0bb0f03ed9d8..0c6ce0a7a4d55110e3872605313ac191e263b27f 100644 --- a/src/location/maps/qgeomap.cpp +++ b/src/location/maps/qgeomap.cpp @@ -110,7 +110,7 @@ void QGeoMap::setActiveMapType(const QGeoMapType type) if (type == d->m_activeMapType) return; d->m_activeMapType = type; - d->setCameraCapabilities(d->m_engine->cameraCapabilities(type)); // emits + d->setCameraCapabilities(d->m_engine->cameraCapabilities(type.mapId())); // emits d->changeActiveMapType(type); emit activeMapTypeChanged(); } @@ -238,7 +238,7 @@ QGeoMapPrivate::QGeoMapPrivate(QGeoMappingManagerEngine *engine, QGeoProjection { // Setting the default camera caps without emitting anything if (engine) - m_cameraCapabilities = m_engine->cameraCapabilities(m_activeMapType); + m_cameraCapabilities = m_engine->cameraCapabilities(m_activeMapType.mapId()); } QGeoMapPrivate::~QGeoMapPrivate() diff --git a/src/location/maps/qgeomappingmanagerengine.cpp b/src/location/maps/qgeomappingmanagerengine.cpp index a385f8cef493e7f9ac131fb59b565062a718f931..ffc0f065212f2fb0393bc6e652eab50a411bb9b6 100644 --- a/src/location/maps/qgeomappingmanagerengine.cpp +++ b/src/location/maps/qgeomappingmanagerengine.cpp @@ -150,9 +150,9 @@ void QGeoMappingManagerEngine::setSupportedMapTypes(const QList<QGeoMapType> &su emit supportedMapTypesChanged(); } -QGeoCameraCapabilities QGeoMappingManagerEngine::cameraCapabilities(const QGeoMapType &mapType) const +QGeoCameraCapabilities QGeoMappingManagerEngine::cameraCapabilities(int mapId) const { - Q_UNUSED(mapType) + Q_UNUSED(mapId) Q_D(const QGeoMappingManagerEngine); return d->capabilities_; } diff --git a/src/location/maps/qgeomappingmanagerengine_p.h b/src/location/maps/qgeomappingmanagerengine_p.h index b8ebb1ec8967ba2855bd4c0192a2c020fc9aa1ca..0f347d739de806baa7402210e44b0fada6738d0b 100644 --- a/src/location/maps/qgeomappingmanagerengine_p.h +++ b/src/location/maps/qgeomappingmanagerengine_p.h @@ -90,7 +90,7 @@ public: QList<QGeoMapType> supportedMapTypes() const; // the class is private, so this can be virtual here for now. - virtual QGeoCameraCapabilities cameraCapabilities(const QGeoMapType &mapType) const; + virtual QGeoCameraCapabilities cameraCapabilities(int mapId = 0) const; void setLocale(const QLocale &locale); QLocale locale() const; diff --git a/src/plugins/geoservices/osm/qgeotiledmappingmanagerengineosm.cpp b/src/plugins/geoservices/osm/qgeotiledmappingmanagerengineosm.cpp index a0fb1a5967748ebb2717dd2124323473cd4c07d1..9a1a0e47fa34286d1b1650cdf073fb0c20e76194 100644 --- a/src/plugins/geoservices/osm/qgeotiledmappingmanagerengineosm.cpp +++ b/src/plugins/geoservices/osm/qgeotiledmappingmanagerengineosm.cpp @@ -349,13 +349,13 @@ QString QGeoTiledMappingManagerEngineOsm::customCopyright() const return m_customCopyright; } -QGeoCameraCapabilities QGeoTiledMappingManagerEngineOsm::cameraCapabilities(const QGeoMapType &mapType) const +QGeoCameraCapabilities QGeoTiledMappingManagerEngineOsm::cameraCapabilities(int mapId) const { - if (mapType.mapId() == 0) - return QGeoMappingManagerEngine::cameraCapabilities(mapType); - int idx = mapType.mapId() - 1; + if (mapId == 0) + return QGeoMappingManagerEngine::cameraCapabilities(mapId); + int idx = mapId - 1; if (idx >= m_providers.size()) - return QGeoMappingManagerEngine::cameraCapabilities(QGeoMapType()); + return QGeoMappingManagerEngine::cameraCapabilities(mapId); return m_providers[idx]->cameraCapabilities(); } diff --git a/src/plugins/geoservices/osm/qgeotiledmappingmanagerengineosm.h b/src/plugins/geoservices/osm/qgeotiledmappingmanagerengineosm.h index d77ffab580739964c3fd54a654e5b9174377bb15..c5f16c2bcbeea6808e8e7206bc945ed0df65f515 100644 --- a/src/plugins/geoservices/osm/qgeotiledmappingmanagerengineosm.h +++ b/src/plugins/geoservices/osm/qgeotiledmappingmanagerengineosm.h @@ -62,7 +62,7 @@ public: QGeoMap *createMap() override; const QVector<QGeoTileProviderOsm *> &providers(); QString customCopyright() const; - QGeoCameraCapabilities cameraCapabilities(const QGeoMapType &mapType) const override; + QGeoCameraCapabilities cameraCapabilities(int mapId) const override; protected Q_SLOTS: void onProviderResolutionFinished(const QGeoTileProviderOsm *provider); diff --git a/tests/auto/geotestplugin/qgeotiledmappingmanagerengine_test.h b/tests/auto/geotestplugin/qgeotiledmappingmanagerengine_test.h index 01a4b61a4106ac1bb936cc1cf742e7e6072ffd6b..94d1420a81ad43efe7377611bee6b7b6a7a43854 100644 --- a/tests/auto/geotestplugin/qgeotiledmappingmanagerengine_test.h +++ b/tests/auto/geotestplugin/qgeotiledmappingmanagerengine_test.h @@ -91,9 +91,9 @@ public: return new QGeoTiledMapTest(this); } - QGeoCameraCapabilities cameraCapabilities(const QGeoMapType &mapType) const Q_DECL_OVERRIDE + QGeoCameraCapabilities cameraCapabilities(int mapId) const Q_DECL_OVERRIDE { - switch (mapType.mapId()) { + switch (mapId) { case 4: { QGeoCameraCapabilities capabilities; @@ -108,7 +108,7 @@ public: return capabilities; } default: - return QGeoMappingManagerEngine::cameraCapabilities(mapType); + return QGeoMappingManagerEngine::cameraCapabilities(mapId); } }