summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/imports/location/qdeclarativecirclemapitem.cpp6
-rw-r--r--src/imports/location/qdeclarativegeomap.cpp14
-rw-r--r--src/imports/location/qdeclarativepolygonmapitem.cpp4
-rw-r--r--src/imports/location/qdeclarativepolylinemapitem.cpp4
-rw-r--r--src/imports/location/qgeomapitemgeometry.cpp4
-rw-r--r--src/imports/location/qquickgeomapgesturearea.cpp6
-rw-r--r--src/location/maps/qgeomap.cpp20
-rw-r--r--src/location/maps/qgeomap_p.h11
-rw-r--r--src/location/maps/qgeomap_p_p.h9
-rw-r--r--src/location/maps/qgeotiledmap.cpp14
-rw-r--r--src/location/maps/qgeotiledmap_p.h2
-rw-r--r--src/location/maps/qgeotiledmap_p_p.h2
-rw-r--r--src/plugins/geoservices/nokia/qgeotiledmap_nokia.cpp4
-rw-r--r--tests/auto/qgeotiledmap/tst_qgeotiledmap.cpp2
14 files changed, 52 insertions, 50 deletions
diff --git a/src/imports/location/qdeclarativecirclemapitem.cpp b/src/imports/location/qdeclarativecirclemapitem.cpp
index f6b3c14f..6890703b 100644
--- a/src/imports/location/qdeclarativecirclemapitem.cpp
+++ b/src/imports/location/qdeclarativecirclemapitem.cpp
@@ -144,7 +144,7 @@ void QGeoMapCircleGeometry::updateScreenPointsInvert(const QGeoMap &map)
if (!screenDirty_)
return;
- if (map.width() == 0 || map.height() == 0) {
+ if (map.viewportWidth() == 0 || map.viewportHeight() == 0) {
clear();
return;
}
@@ -176,7 +176,7 @@ void QGeoMapCircleGeometry::updateScreenPointsInvert(const QGeoMap &map)
geoDistance += 360.0;
double mapWidth = 360.0 / geoDistance;
- qreal leftOffset = origin.x() - (map.width()/2.0 - mapWidth/2.0) - firstPointOffset_.x();
+ qreal leftOffset = origin.x() - (map.viewportWidth()/2.0 - mapWidth/2.0) - firstPointOffset_.x();
qreal topOffset = origin.y() - (midPoint.y() - mapWidth/2.0) - firstPointOffset_.y();
QPainterPath ppiBorder;
ppiBorder.moveTo(QPointF(-leftOffset, -topOffset));
@@ -613,7 +613,7 @@ void QDeclarativeCircleMapItem::updateCirclePathForRendering(QList<QGeoCoordinat
if ( geoDistance < 0 )
geoDistance += 360;
qreal mapWidth = 360.0 / geoDistance;
- mapWidth = qMin(static_cast<int>(mapWidth), map()->width());
+ mapWidth = qMin(static_cast<int>(mapWidth), map()->viewportWidth());
QDoubleVector2D prev = map()->coordinateToItemPosition(path.at(0), false);
// find the points in path where wrapping occurs
for (int i = 1; i <= path.count(); ++i) {
diff --git a/src/imports/location/qdeclarativegeomap.cpp b/src/imports/location/qdeclarativegeomap.cpp
index 0f54929b..1cdde85c 100644
--- a/src/imports/location/qdeclarativegeomap.cpp
+++ b/src/imports/location/qdeclarativegeomap.cpp
@@ -306,7 +306,7 @@ void QDeclarativeGeoMap::initialize()
// try to keep center change signal in the end
bool centerHasChanged = false;
- setMinimumZoomLevel(m_map->minimumZoomAtMapSize(width(), height()));
+ setMinimumZoomLevel(m_map->minimumZoomAtViewportSize(width(), height()));
// set latitude bundary check
m_maximumViewportLatitude = m_map->maximumCenterLatitudeAtZoom(m_cameraData.zoomLevel());
@@ -559,7 +559,7 @@ void QDeclarativeGeoMap::mappingManagerInitialized()
// after this has been called at least once, after creation.
if (!m_initialized && width() > 0 && height() > 0) {
- m_map->setSize(QSize(width(), height()));
+ m_map->setViewportSize(QSize(width(), height()));
initialize();
}
@@ -615,7 +615,7 @@ void QDeclarativeGeoMap::setMinimumZoomLevel(qreal minimumZoomLevel)
if (m_map) {
minimumZoomLevel = qBound(qreal(m_map->cameraCapabilities().minimumZoomLevel()), minimumZoomLevel, maximumZoomLevel());
- double minimumViewportZoomLevel = m_map->minimumZoomAtMapSize(width(),height());
+ double minimumViewportZoomLevel = m_map->minimumZoomAtViewportSize(width(),height());
if (minimumZoomLevel < minimumViewportZoomLevel)
minimumZoomLevel = minimumViewportZoomLevel;
}
@@ -1035,8 +1035,8 @@ void QDeclarativeGeoMap::pan(int dx, int dy)
if (dx == 0 && dy == 0)
return;
QGeoCoordinate coord = m_map->itemPositionToCoordinate(
- QDoubleVector2D(m_map->width() / 2 + dx,
- m_map->height() / 2 + dy));
+ QDoubleVector2D(m_map->viewportWidth() / 2 + dx,
+ m_map->viewportHeight() / 2 + dy));
setCenter(coord);
}
@@ -1307,12 +1307,12 @@ void QDeclarativeGeoMap::geometryChanged(const QRectF &newGeometry, const QRectF
if (!m_map || !newGeometry.size().isValid())
return;
- m_map->setSize(newGeometry.size().toSize());
+ m_map->setViewportSize(newGeometry.size().toSize());
if (!m_initialized)
initialize();
else
- setMinimumZoomLevel(m_map->minimumZoomAtMapSize(newGeometry.width(), newGeometry.height()));
+ setMinimumZoomLevel(m_map->minimumZoomAtViewportSize(newGeometry.width(), newGeometry.height()));
/*!
The fitViewportTo*() functions depend on a valid map geometry.
diff --git a/src/imports/location/qdeclarativepolygonmapitem.cpp b/src/imports/location/qdeclarativepolygonmapitem.cpp
index a42892b7..32dbb206 100644
--- a/src/imports/location/qdeclarativepolygonmapitem.cpp
+++ b/src/imports/location/qdeclarativepolygonmapitem.cpp
@@ -214,7 +214,7 @@ void QGeoMapPolygonGeometry::updateScreenPoints(const QGeoMap &map)
if (!screenDirty_)
return;
- if (map.width() == 0 || map.height() == 0) {
+ if (map.viewportWidth() == 0 || map.viewportHeight() == 0) {
clear();
return;
}
@@ -223,7 +223,7 @@ void QGeoMapPolygonGeometry::updateScreenPoints(const QGeoMap &map)
// Create the viewport rect in the same coordinate system
// as the actual points
- QRectF viewport(0, 0, map.width(), map.height());
+ QRectF viewport(0, 0, map.viewportWidth(), map.viewportHeight());
viewport.translate(-1 * origin.toPointF());
QPainterPath vpPath;
diff --git a/src/imports/location/qdeclarativepolylinemapitem.cpp b/src/imports/location/qdeclarativepolylinemapitem.cpp
index c44ef129..2153b036 100644
--- a/src/imports/location/qdeclarativepolylinemapitem.cpp
+++ b/src/imports/location/qdeclarativepolylinemapitem.cpp
@@ -202,7 +202,7 @@ void QGeoMapPolylineGeometry::updateSourcePoints(const QGeoMap &map,
QDoubleVector2D origin, lastAddedPoint;
- const double mapWidthHalf = map.width()/2.0;
+ const double mapWidthHalf = map.viewportWidth()/2.0;
double unwrapBelowX = 0;
if (preserveGeometry_)
unwrapBelowX = map.coordinateToItemPosition(geoLeftBound_, false).x();
@@ -400,7 +400,7 @@ void QGeoMapPolylineGeometry::updateScreenPoints(const QGeoMap &map,
// Create the viewport rect in the same coordinate system
// as the actual points
- QRectF viewport(0, 0, map.width(), map.height());
+ QRectF viewport(0, 0, map.viewportWidth(), map.viewportHeight());
viewport.adjust(-strokeWidth, -strokeWidth, strokeWidth, strokeWidth);
viewport.translate(-1 * origin);
diff --git a/src/imports/location/qgeomapitemgeometry.cpp b/src/imports/location/qgeomapitemgeometry.cpp
index c8168f67..a22be0af 100644
--- a/src/imports/location/qgeomapitemgeometry.cpp
+++ b/src/imports/location/qgeomapitemgeometry.cpp
@@ -125,7 +125,7 @@ double QGeoMapItemGeometry::geoDistanceToScreenWidth(const QGeoMap &map,
// Do not wrap around half the globe
Q_ASSERT(!qFuzzyCompare(fromCoord.longitude(), toCoord.longitude()));
- QGeoCoordinate mapMid = map.itemPositionToCoordinate(QDoubleVector2D(map.width()/2.0, 0));
+ QGeoCoordinate mapMid = map.itemPositionToCoordinate(QDoubleVector2D(map.viewportWidth()/2.0, 0));
double halfGeoDist = toCoord.longitude() - fromCoord.longitude();
if (toCoord.longitude() < fromCoord.longitude())
halfGeoDist += 360;
@@ -133,7 +133,7 @@ double QGeoMapItemGeometry::geoDistanceToScreenWidth(const QGeoMap &map,
QGeoCoordinate geoDelta = QGeoCoordinate(0,
QLocationUtils::wrapLong(mapMid.longitude() + halfGeoDist));
QDoubleVector2D halfScreenDist = map.coordinateToItemPosition(geoDelta, false)
- - QDoubleVector2D(map.width()/2.0, 0);
+ - QDoubleVector2D(map.viewportWidth()/2.0, 0);
return halfScreenDist.x() * 2.0;
}
diff --git a/src/imports/location/qquickgeomapgesturearea.cpp b/src/imports/location/qquickgeomapgesturearea.cpp
index ccf360aa..0baaf98e 100644
--- a/src/imports/location/qquickgeomapgesturearea.cpp
+++ b/src/imports/location/qquickgeomapgesturearea.cpp
@@ -702,7 +702,7 @@ void QQuickGeoMapGestureArea::handleWheelEvent(QWheelEvent *event)
{
qreal dx = postZoomPoint.x() - preZoomPoint.x();
qreal dy = postZoomPoint.y() - preZoomPoint.y();
- QPointF mapCenterPoint(m_map->width() / 2.0 + dx, m_map->height() / 2.0 + dy);
+ QPointF mapCenterPoint(m_map->viewportWidth() / 2.0 + dx, m_map->viewportHeight() / 2.0 + dy);
QGeoCoordinate mapCenterCoordinate = m_map->itemPositionToCoordinate(QDoubleVector2D(mapCenterPoint), false);
m_declarativeMap->setCenter(mapCenterCoordinate);
@@ -1148,8 +1148,8 @@ void QQuickGeoMapGestureArea::updatePan()
int dx = static_cast<int>(m_sceneCenter.x() - startPoint.x());
int dy = static_cast<int>(m_sceneCenter.y() - startPoint.y());
QPointF mapCenterPoint;
- mapCenterPoint.setY(m_map->height() / 2.0 - dy);
- mapCenterPoint.setX(m_map->width() / 2.0 - dx);
+ mapCenterPoint.setY(m_map->viewportHeight() / 2.0 - dy);
+ mapCenterPoint.setX(m_map->viewportWidth() / 2.0 - dx);
QGeoCoordinate animationStartCoordinate = m_map->itemPositionToCoordinate(QDoubleVector2D(mapCenterPoint), false);
m_declarativeMap->setCenter(animationStartCoordinate);
}
diff --git a/src/location/maps/qgeomap.cpp b/src/location/maps/qgeomap.cpp
index c3b01a3e..0e0a2007 100644
--- a/src/location/maps/qgeomap.cpp
+++ b/src/location/maps/qgeomap.cpp
@@ -51,31 +51,31 @@ QGeoMap::~QGeoMap()
{
}
-void QGeoMap::setSize(const QSize& size)
+void QGeoMap::setViewportSize(const QSize& size)
{
Q_D(QGeoMap);
- if (size == d->m_size)
+ if (size == d->m_viewportSize)
return;
- d->m_size = size;
- d->changeMapSize(size);
+ d->m_viewportSize = size;
+ d->changeViewportSize(size);
}
-QSize QGeoMap::size() const
+QSize QGeoMap::viewportSize() const
{
Q_D(const QGeoMap);
- return d->m_size;
+ return d->m_viewportSize;
}
-int QGeoMap::width() const
+int QGeoMap::viewportWidth() const
{
Q_D(const QGeoMap);
- return d->m_size.width();
+ return d->m_viewportSize.width();
}
-int QGeoMap::height() const
+int QGeoMap::viewportHeight() const
{
Q_D(const QGeoMap);
- return d->m_size.height();
+ return d->m_viewportSize.height();
}
void QGeoMap::setCameraData(const QGeoCameraData &cameraData)
diff --git a/src/location/maps/qgeomap_p.h b/src/location/maps/qgeomap_p.h
index c45b1a0c..ea4806c0 100644
--- a/src/location/maps/qgeomap_p.h
+++ b/src/location/maps/qgeomap_p.h
@@ -70,10 +70,11 @@ class Q_LOCATION_EXPORT QGeoMap : public QObject
public:
virtual ~QGeoMap();
- void setSize(const QSize& size);
- QSize size() const;
- int width() const;
- int height() const;
+ // Sets the display size
+ void setViewportSize(const QSize& viewportSize);
+ QSize viewportSize() const;
+ int viewportWidth() const;
+ int viewportHeight() const;
QGeoCameraData cameraData() const;
@@ -84,7 +85,7 @@ public:
virtual QGeoCoordinate itemPositionToCoordinate(const QDoubleVector2D &pos, bool clipToViewport = true) const = 0;
virtual QDoubleVector2D coordinateToItemPosition(const QGeoCoordinate &coordinate, bool clipToViewport = true) const = 0;
- virtual double minimumZoomAtMapSize(int width, int height) const = 0;
+ virtual double minimumZoomAtViewportSize(int viewportWidth, int viewportHeight) const = 0;
virtual double maximumCenterLatitudeAtZoom(double zoomLevel) const = 0;
virtual QDoubleVector2D referenceCoordinateToItemPosition(const QGeoCoordinate &coordinate) const = 0;
diff --git a/src/location/maps/qgeomap_p_p.h b/src/location/maps/qgeomap_p_p.h
index f72c35ba..b95c1dc7 100644
--- a/src/location/maps/qgeomap_p_p.h
+++ b/src/location/maps/qgeomap_p_p.h
@@ -68,12 +68,13 @@ public:
virtual ~QGeoMapPrivate();
protected:
- virtual void changeMapSize(const QSize &size) = 0;
- virtual void changeCameraData(const QGeoCameraData &oldCameraData) = 0;
- virtual void changeActiveMapType(const QGeoMapType mapType) = 0;
+ /* Hooks into the actual map implementations */
+ virtual void changeViewportSize(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;
+ QSize m_viewportSize;
QPointer<QGeoMappingManagerEngine> m_engine;
QGeoMapController *m_controller;
QGeoCameraData m_cameraData;
diff --git a/src/location/maps/qgeotiledmap.cpp b/src/location/maps/qgeotiledmap.cpp
index fedaecbc..04f9ad21 100644
--- a/src/location/maps/qgeotiledmap.cpp
+++ b/src/location/maps/qgeotiledmap.cpp
@@ -142,8 +142,8 @@ QGeoCoordinate QGeoTiledMap::itemPositionToCoordinate(const QDoubleVector2D &pos
{
Q_D(const QGeoTiledMap);
if (clipToViewport) {
- int w = width();
- int h = height();
+ int w = viewportWidth();
+ int h = viewportHeight();
if ((pos.x() < 0) || (w < pos.x()) || (pos.y() < 0) || (h < pos.y()))
return QGeoCoordinate();
@@ -158,8 +158,8 @@ QDoubleVector2D QGeoTiledMap::coordinateToItemPosition(const QGeoCoordinate &coo
QDoubleVector2D pos = d->coordinateToItemPosition(coordinate);
if (clipToViewport) {
- int w = width();
- int h = height();
+ int w = viewportWidth();
+ int h = viewportHeight();
double x = pos.x();
double y = pos.y();
if ((x < 0.0) || (x > w) || (y < 0) || (y > h) || qIsNaN(x) || qIsNaN(y))
@@ -171,7 +171,7 @@ QDoubleVector2D QGeoTiledMap::coordinateToItemPosition(const QGeoCoordinate &coo
// This method returns the minimum zoom level that this specific qgeomap type allows
// at a given canvas size (width,height) and for a given tile size (usually 256).
-double QGeoTiledMap::minimumZoomAtMapSize(int width, int height) const
+double QGeoTiledMap::minimumZoomAtViewportSize(int width, int height) const
{
Q_D(const QGeoTiledMap);
double maxSize = qMax(width,height);
@@ -192,7 +192,7 @@ double QGeoTiledMap::maximumCenterLatitudeAtZoom(double zoomLevel) const
mapEdgeSize *= d->m_visibleTiles->tileSize();
// At init time weird things happen
- int clampedWindowHeight = (height() > mapEdgeSize) ? mapEdgeSize : height();
+ int clampedWindowHeight = (viewportHeight() > mapEdgeSize) ? mapEdgeSize : viewportHeight();
// Use the window height divided by 2 as the topmost allowed center, with respect to the map size in pixels
double mercatorTopmost = (clampedWindowHeight * 0.5) / mapEdgeSize ;
@@ -375,7 +375,7 @@ void QGeoTiledMapPrivate::clearScene()
updateScene();
}
-void QGeoTiledMapPrivate::changeMapSize(const QSize& size)
+void QGeoTiledMapPrivate::changeViewportSize(const QSize& size)
{
Q_Q(QGeoTiledMap);
diff --git a/src/location/maps/qgeotiledmap_p.h b/src/location/maps/qgeotiledmap_p.h
index 791384c7..d00a1ed9 100644
--- a/src/location/maps/qgeotiledmap_p.h
+++ b/src/location/maps/qgeotiledmap_p.h
@@ -86,7 +86,7 @@ public:
QGeoCoordinate itemPositionToCoordinate(const QDoubleVector2D &pos, bool clipToViewport = true) const Q_DECL_OVERRIDE;
QDoubleVector2D coordinateToItemPosition(const QGeoCoordinate &coordinate, bool clipToViewport = true) const Q_DECL_OVERRIDE;
- double minimumZoomAtMapSize(int width, int height) const Q_DECL_OVERRIDE;
+ double minimumZoomAtViewportSize(int viewportWidth, int viewportHeight) const Q_DECL_OVERRIDE;
double maximumCenterLatitudeAtZoom(double zoomLevel) const Q_DECL_OVERRIDE;
diff --git a/src/location/maps/qgeotiledmap_p_p.h b/src/location/maps/qgeotiledmap_p_p.h
index ab36f6f7..01646d66 100644
--- a/src/location/maps/qgeotiledmap_p_p.h
+++ b/src/location/maps/qgeotiledmap_p_p.h
@@ -83,7 +83,7 @@ public:
QGeoMapType activeMapType();
protected:
- void changeMapSize(const QSize& size) Q_DECL_OVERRIDE;
+ void changeViewportSize(const QSize& size) Q_DECL_OVERRIDE;
void changeCameraData(const QGeoCameraData &cameraData) Q_DECL_OVERRIDE;
void changeActiveMapType(const QGeoMapType mapType) Q_DECL_OVERRIDE;
void changeTileVersion(int version);
diff --git a/src/plugins/geoservices/nokia/qgeotiledmap_nokia.cpp b/src/plugins/geoservices/nokia/qgeotiledmap_nokia.cpp
index d83ad0f9..5179fff4 100644
--- a/src/plugins/geoservices/nokia/qgeotiledmap_nokia.cpp
+++ b/src/plugins/geoservices/nokia/qgeotiledmap_nokia.cpp
@@ -72,13 +72,13 @@ void QGeoTiledMapNokia::evaluateCopyrights(const QSet<QGeoTileSpec> &visibleTile
const QString copyrightsString = m_engine->evaluateCopyrightsText(activeMapType(), cameraData().zoomLevel(), visibleTiles);
- if (width() > 0 && height() > 0 && ((copyrightsString.isNull() && m_copyrightsSlab.isNull()) || copyrightsString != m_lastCopyrightsString)) {
+ if (viewportWidth() > 0 && viewportHeight() > 0 && ((copyrightsString.isNull() && m_copyrightsSlab.isNull()) || copyrightsString != m_lastCopyrightsString)) {
QFont font("Sans Serif");
font.setPixelSize(fontSize);
font.setStyleHint(QFont::SansSerif);
font.setWeight(QFont::Bold);
- QRect textBounds = QFontMetrics(font).boundingRect(0, 0, width(), height(), Qt::AlignBottom | Qt::AlignLeft | Qt::TextWordWrap, copyrightsString);
+ QRect textBounds = QFontMetrics(font).boundingRect(0, 0, viewportWidth(), viewportHeight(), Qt::AlignBottom | Qt::AlignLeft | Qt::TextWordWrap, copyrightsString);
m_copyrightsSlab = QImage(m_logo.width() + textBounds.width() + spaceToLogo + blurRate * 2,
qMax(m_logo.height(), textBounds.height() + blurRate * 2),
diff --git a/tests/auto/qgeotiledmap/tst_qgeotiledmap.cpp b/tests/auto/qgeotiledmap/tst_qgeotiledmap.cpp
index e7026cff..cc2672b2 100644
--- a/tests/auto/qgeotiledmap/tst_qgeotiledmap.cpp
+++ b/tests/auto/qgeotiledmap/tst_qgeotiledmap.cpp
@@ -109,7 +109,7 @@ void tst_QGeoTiledMap::initTestCase()
QVERIFY2(provider->error() == QGeoServiceProvider::NoError, "Could not load plugin: " + provider->errorString().toLatin1());
m_map.reset(static_cast<QGeoTiledMapTest*>(mappingManager->createMap(this)));
QVERIFY(m_map);
- m_map->setSize(QSize(16, 16));
+ m_map->setViewportSize(QSize(16, 16));
m_fetcher = static_cast<QGeoTileFetcherTest*>(m_map->m_engine->tileFetcher());
m_tilesCounter.reset(new FetchTileCounter());
connect(m_fetcher, SIGNAL(tileFetched(const QGeoTileSpec&)), m_tilesCounter.data(), SLOT(tileFetched(const QGeoTileSpec&)));