diff options
author | Paolo Angelelli <paolo.angelelli@qt.io> | 2017-04-28 16:41:50 +0200 |
---|---|---|
committer | Paolo Angelelli <paolo.angelelli@qt.io> | 2017-05-03 07:49:44 +0000 |
commit | cd0f0f577d283b3a5f45d2d8707703f551ac9573 (patch) | |
tree | 504fd823c0d1cc7f11aa7b5ac33051f00965c861 /src/positioning | |
parent | a2ea3f872c45150e5485134e69d65b474f1f996b (diff) | |
download | qtlocation-cd0f0f577d283b3a5f45d2d8707703f551ac9573.tar.gz |
Move QGeoRectangle definition inside qgeorectangle.h
Change-Id: I7d0bb4eac89ca9a018f71faa9d73f62d97a24085
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Diffstat (limited to 'src/positioning')
-rw-r--r-- | src/positioning/qdeclarativegeolocation_p.h | 2 | ||||
-rw-r--r-- | src/positioning/qgeocircle.h | 2 | ||||
-rw-r--r-- | src/positioning/qgeorectangle.h | 85 | ||||
-rw-r--r-- | src/positioning/qgeoshape.cpp | 2 | ||||
-rw-r--r-- | src/positioning/qgeoshape.h | 82 | ||||
-rw-r--r-- | src/positioning/qgeoshape_p.h | 2 |
6 files changed, 88 insertions, 87 deletions
diff --git a/src/positioning/qdeclarativegeolocation_p.h b/src/positioning/qdeclarativegeolocation_p.h index b208e503..a02d7b45 100644 --- a/src/positioning/qdeclarativegeolocation_p.h +++ b/src/positioning/qdeclarativegeolocation_p.h @@ -53,7 +53,7 @@ #include <QtCore/QObject> #include <QtPositioning/QGeoLocation> -#include <QtPositioning/QGeoRectangle> +#include <QtPositioning/qgeorectangle.h> #include <QtPositioning/private/qdeclarativegeoaddress_p.h> QT_BEGIN_NAMESPACE diff --git a/src/positioning/qgeocircle.h b/src/positioning/qgeocircle.h index dc10ccf9..b41fe26c 100644 --- a/src/positioning/qgeocircle.h +++ b/src/positioning/qgeocircle.h @@ -40,7 +40,7 @@ #ifndef QGEOCIRCLE_H #define QGEOCIRCLE_H -#include <QtPositioning/QGeoShape> +#include <QtPositioning/QGeoRectangle> QT_BEGIN_NAMESPACE diff --git a/src/positioning/qgeorectangle.h b/src/positioning/qgeorectangle.h index 9e9acf91..82afd725 100644 --- a/src/positioning/qgeorectangle.h +++ b/src/positioning/qgeorectangle.h @@ -42,7 +42,88 @@ #include <QtPositioning/QGeoShape> -// QGeoRectangle declaration now in qgeoshape.h. -// This file remains for compatibility. +QT_BEGIN_NAMESPACE + +class QGeoRectanglePrivate; + +class Q_POSITIONING_EXPORT QGeoRectangle : public QGeoShape +{ + Q_GADGET + Q_PROPERTY(QGeoCoordinate bottomLeft READ bottomLeft WRITE setBottomLeft) + Q_PROPERTY(QGeoCoordinate bottomRight READ bottomRight WRITE setBottomRight) + Q_PROPERTY(QGeoCoordinate topLeft READ topLeft WRITE setTopLeft) + Q_PROPERTY(QGeoCoordinate topRight READ topRight WRITE setTopRight) + Q_PROPERTY(QGeoCoordinate center READ center WRITE setCenter) + Q_PROPERTY(double height READ height WRITE setHeight) + Q_PROPERTY(double width READ width WRITE setWidth) + +public: + QGeoRectangle(); + QGeoRectangle(const QGeoCoordinate ¢er, double degreesWidth, double degreesHeight); + QGeoRectangle(const QGeoCoordinate &topLeft, const QGeoCoordinate &bottomRight); + QGeoRectangle(const QList<QGeoCoordinate> &coordinates); + QGeoRectangle(const QGeoRectangle &other); + QGeoRectangle(const QGeoShape &other); + + ~QGeoRectangle(); + + QGeoRectangle &operator=(const QGeoRectangle &other); + + using QGeoShape::operator==; + bool operator==(const QGeoRectangle &other) const; + + using QGeoShape::operator!=; + bool operator!=(const QGeoRectangle &other) const; + + void setTopLeft(const QGeoCoordinate &topLeft); + QGeoCoordinate topLeft() const; + + void setTopRight(const QGeoCoordinate &topRight); + QGeoCoordinate topRight() const; + + void setBottomLeft(const QGeoCoordinate &bottomLeft); + QGeoCoordinate bottomLeft() const; + + void setBottomRight(const QGeoCoordinate &bottomRight); + QGeoCoordinate bottomRight() const; + + void setCenter(const QGeoCoordinate ¢er); + QGeoCoordinate center() const; + + void setWidth(double degreesWidth); + double width() const; + + void setHeight(double degreesHeight); + double height() const; + + using QGeoShape::contains; + bool contains(const QGeoRectangle &rectangle) const; + Q_INVOKABLE bool intersects(const QGeoRectangle &rectangle) const; + + Q_INVOKABLE void translate(double degreesLatitude, double degreesLongitude); + Q_INVOKABLE QGeoRectangle translated(double degreesLatitude, double degreesLongitude) const; + Q_INVOKABLE void extendRectangle(const QGeoCoordinate &coordinate); + + Q_INVOKABLE QGeoRectangle united(const QGeoRectangle &rectangle) const; + QGeoRectangle operator|(const QGeoRectangle &rectangle) const; + QGeoRectangle &operator|=(const QGeoRectangle &rectangle); + + Q_INVOKABLE QString toString() const; + +private: + inline QGeoRectanglePrivate *d_func(); + inline const QGeoRectanglePrivate *d_func() const; +}; + +Q_DECLARE_TYPEINFO(QGeoRectangle, Q_MOVABLE_TYPE); + +inline QGeoRectangle QGeoRectangle::operator|(const QGeoRectangle &rectangle) const +{ + return united(rectangle); +} + +QT_END_NAMESPACE + +Q_DECLARE_METATYPE(QGeoRectangle) #endif diff --git a/src/positioning/qgeoshape.cpp b/src/positioning/qgeoshape.cpp index 73dccaa4..ad7b0c58 100644 --- a/src/positioning/qgeoshape.cpp +++ b/src/positioning/qgeoshape.cpp @@ -425,4 +425,6 @@ QDataStream &operator>>(QDataStream &stream, QGeoShape &shape) } #endif +#include "moc_qgeoshape.cpp" + QT_END_NAMESPACE diff --git a/src/positioning/qgeoshape.h b/src/positioning/qgeoshape.h index 441c9ebb..defd0eec 100644 --- a/src/positioning/qgeoshape.h +++ b/src/positioning/qgeoshape.h @@ -106,90 +106,8 @@ Q_POSITIONING_EXPORT QDataStream &operator<<(QDataStream &stream, const QGeoShap Q_POSITIONING_EXPORT QDataStream &operator>>(QDataStream &stream, QGeoShape &shape); #endif - - -// QGeoRectangle is declared here because of QGeoShape::boundingGeoRectangle -class QGeoRectanglePrivate; - -class Q_POSITIONING_EXPORT QGeoRectangle : public QGeoShape -{ - Q_GADGET - Q_PROPERTY(QGeoCoordinate bottomLeft READ bottomLeft WRITE setBottomLeft) - Q_PROPERTY(QGeoCoordinate bottomRight READ bottomRight WRITE setBottomRight) - Q_PROPERTY(QGeoCoordinate topLeft READ topLeft WRITE setTopLeft) - Q_PROPERTY(QGeoCoordinate topRight READ topRight WRITE setTopRight) - Q_PROPERTY(QGeoCoordinate center READ center WRITE setCenter) - Q_PROPERTY(double height READ height WRITE setHeight) - Q_PROPERTY(double width READ width WRITE setWidth) - -public: - QGeoRectangle(); - QGeoRectangle(const QGeoCoordinate ¢er, double degreesWidth, double degreesHeight); - QGeoRectangle(const QGeoCoordinate &topLeft, const QGeoCoordinate &bottomRight); - QGeoRectangle(const QList<QGeoCoordinate> &coordinates); - QGeoRectangle(const QGeoRectangle &other); - QGeoRectangle(const QGeoShape &other); - - ~QGeoRectangle(); - - QGeoRectangle &operator=(const QGeoRectangle &other); - - using QGeoShape::operator==; - bool operator==(const QGeoRectangle &other) const; - - using QGeoShape::operator!=; - bool operator!=(const QGeoRectangle &other) const; - - void setTopLeft(const QGeoCoordinate &topLeft); - QGeoCoordinate topLeft() const; - - void setTopRight(const QGeoCoordinate &topRight); - QGeoCoordinate topRight() const; - - void setBottomLeft(const QGeoCoordinate &bottomLeft); - QGeoCoordinate bottomLeft() const; - - void setBottomRight(const QGeoCoordinate &bottomRight); - QGeoCoordinate bottomRight() const; - - void setCenter(const QGeoCoordinate ¢er); - QGeoCoordinate center() const; - - void setWidth(double degreesWidth); - double width() const; - - void setHeight(double degreesHeight); - double height() const; - - using QGeoShape::contains; - bool contains(const QGeoRectangle &rectangle) const; - Q_INVOKABLE bool intersects(const QGeoRectangle &rectangle) const; - - Q_INVOKABLE void translate(double degreesLatitude, double degreesLongitude); - Q_INVOKABLE QGeoRectangle translated(double degreesLatitude, double degreesLongitude) const; - Q_INVOKABLE void extendRectangle(const QGeoCoordinate &coordinate); - - Q_INVOKABLE QGeoRectangle united(const QGeoRectangle &rectangle) const; - QGeoRectangle operator|(const QGeoRectangle &rectangle) const; - QGeoRectangle &operator|=(const QGeoRectangle &rectangle); - - Q_INVOKABLE QString toString() const; - -private: - inline QGeoRectanglePrivate *d_func(); - inline const QGeoRectanglePrivate *d_func() const; -}; - -Q_DECLARE_TYPEINFO(QGeoRectangle, Q_MOVABLE_TYPE); - -inline QGeoRectangle QGeoRectangle::operator|(const QGeoRectangle &rectangle) const -{ - return united(rectangle); -} - QT_END_NAMESPACE Q_DECLARE_METATYPE(QGeoShape) -Q_DECLARE_METATYPE(QGeoRectangle) #endif diff --git a/src/positioning/qgeoshape_p.h b/src/positioning/qgeoshape_p.h index 251e872c..f8380654 100644 --- a/src/positioning/qgeoshape_p.h +++ b/src/positioning/qgeoshape_p.h @@ -53,7 +53,7 @@ #include <QtCore/QSharedData> -#include "qgeoshape.h" +#include "qgeorectangle.h" QT_BEGIN_NAMESPACE |