diff options
author | Paolo Angelelli <paolo.angelelli@qt.io> | 2016-10-11 23:36:27 +0200 |
---|---|---|
committer | Paolo Angelelli <paolo.angelelli@qt.io> | 2016-11-18 11:41:16 +0000 |
commit | c83bcab54c361feec74a4a74822c6747e3262067 (patch) | |
tree | be8a7724a653c527ba059f3206fab00853dad76e /src/location/maps/qgeomap_p_p.h | |
parent | 44cc951b5e77a1c56a2b0d71815ea92a67aee49e (diff) | |
download | qtlocation-c83bcab54c361feec74a4a74822c6747e3262067.tar.gz |
QGeoMap/QGeoTiledMap refactoring
This patch does a small refactoring of these classes, removing unused
variables and privately exporting QGeoMap/QGeoTiledMap private
classes.
This is necessary in order to subclass QGeoMap inside a plugin, due to
the protected QGeoMap constructor that takes a QGeoMapPrivate
reference.
If, at a later point, this pattern will be changed, it might also
become possible to move the pure virtual methods away from
QGeoMapPrivate, and allow QGeoMap subclassing without having
access to QGeoMapPrivate.
Change-Id: I4178695d4bf1201b0525e20979c440357edab14a
Reviewed-by: Paolo Angelelli <paolo.angelelli@qt.io>
Diffstat (limited to 'src/location/maps/qgeomap_p_p.h')
-rw-r--r-- | src/location/maps/qgeomap_p_p.h | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/location/maps/qgeomap_p_p.h b/src/location/maps/qgeomap_p_p.h index baf03c30..f0274a64 100644 --- a/src/location/maps/qgeomap_p_p.h +++ b/src/location/maps/qgeomap_p_p.h @@ -47,6 +47,7 @@ // We mean it. // +#include "qlocationglobal_p.h" #include "qgeocameradata_p.h" #include "qgeomaptype_p.h" #include <QtCore/private/qobject_p.h> @@ -59,7 +60,7 @@ class QGeoMappingManagerEngine; class QGeoMap; class QGeoMapController; -class QGeoMapPrivate : public QObjectPrivate +class Q_LOCATION_PRIVATE_EXPORT QGeoMapPrivate : public QObjectPrivate { Q_DECLARE_PUBLIC(QGeoMap) public: @@ -67,14 +68,14 @@ public: virtual ~QGeoMapPrivate(); protected: - virtual void changeMapSize(const QSize &size) = 0; - virtual void changeCameraData(const QGeoCameraData &cameraData) = 0; - virtual void changeActiveMapType(const QGeoMapType mapType) = 0; + /* Hooks into the actual map implementations */ + virtual void changeMapSize(const QSize &size) = 0; // called by QGeoMap::setSize() + virtual void changeCameraData(const QGeoCameraData &oldCameraData) = 0; // called by QGeoMap::setCameraData() + virtual void changeActiveMapType(const QGeoMapType mapType) = 0; // called by QGeoMap::setActiveMapType() protected: QSize m_size; QPointer<QGeoMappingManagerEngine> m_engine; - QGeoMapController *m_controller; QGeoCameraData m_cameraData; QGeoMapType m_activeMapType; }; |