diff options
author | Alex Blasche <alexander.blasche@digia.com> | 2013-10-22 14:37:37 +0200 |
---|---|---|
committer | Alex Blasche <alexander.blasche@digia.com> | 2013-10-22 14:38:06 +0200 |
commit | 71dffcd319c2641e1022bf857f9c72671cb1446a (patch) | |
tree | 84a7685d0c174a6c461c06aed60a2961a7d3f8fb /src/imports/positioning/positioning.cpp | |
parent | 2867f1efc989478667ea7ae56ff91cd991d74121 (diff) | |
parent | 654b01af941ec620ca8a9b98be8542dda862d4a8 (diff) | |
download | qtlocation-71dffcd319c2641e1022bf857f9c72671cb1446a.tar.gz |
Merge branch 'stable' into dev
Conflicts:
src/imports/location/qdeclarativegeomap.cpp
src/imports/location/qdeclarativegeoroute.cpp
src/imports/location/qdeclarativegeoroutemodel.cpp
src/imports/location/qdeclarativegeoroutesegment.cpp
src/imports/location/qdeclarativepolygonmapitem.cpp
src/imports/location/qdeclarativepolylinemapitem.cpp
src/imports/positioning/positioning.cpp
Change-Id: Ieaa5f567d2144d0267e7eef5bd75bde7e0079fbe
Diffstat (limited to 'src/imports/positioning/positioning.cpp')
-rw-r--r-- | src/imports/positioning/positioning.cpp | 36 |
1 files changed, 25 insertions, 11 deletions
diff --git a/src/imports/positioning/positioning.cpp b/src/imports/positioning/positioning.cpp index b4bda5fd..9b4de734 100644 --- a/src/imports/positioning/positioning.cpp +++ b/src/imports/positioning/positioning.cpp @@ -93,20 +93,12 @@ class QLocationDeclarativeModule: public QQmlExtensionPlugin public: virtual void registerTypes(const char *uri) { - if (QLatin1String(uri) == QLatin1String("QtPositioning")) { + if (QLatin1String(uri) == QStringLiteral("QtPositioning")) { // @uri QtPositioning 5.0 - qmlRegisterSingletonType<LocationSingleton>(uri, 5, 0, "QtPositioning", singleton_type_factory); - - QQml_addValueTypeProvider(getValueTypeProvider()); - qmlRegisterValueTypeEnums<GeoShapeValueType>(uri, 5, 0, "GeoShape"); - - qmlRegisterType<QDeclarativePosition>(uri, 5, 0, "Position"); - qmlRegisterType<QDeclarativePositionSource>(uri, 5, 0, "PositionSource"); - qmlRegisterType<QDeclarativeGeoAddress>(uri, 5, 0, "Address"); - - qmlRegisterType<QDeclarativeGeoLocation>(uri, 5, 0, "Location"); + int major = 5; + int minor = 0; qRegisterMetaType<QGeoCoordinate>("QGeoCoordinate"); qRegisterMetaType<QGeoAddress>("QGeoAddress"); @@ -115,6 +107,28 @@ public: qRegisterMetaType<QGeoLocation>("QGeoLocation"); qRegisterAnimationInterpolator<QGeoCoordinate>(geoCoordinateInterpolator); + QQml_addValueTypeProvider(getValueTypeProvider()); + + // Register the 5.0 types + // 5.0 is silent and not advertised + qmlRegisterSingletonType<LocationSingleton >(uri, major, minor, "QtPositioning", singleton_type_factory); + qmlRegisterValueTypeEnums<GeoShapeValueType >(uri, major, minor, "GeoShape"); + qmlRegisterType<QDeclarativePosition >(uri, major, minor, "Position"); + qmlRegisterType<QDeclarativePositionSource >(uri, major, minor, "PositionSource"); + qmlRegisterType<QDeclarativeGeoAddress >(uri, major, minor, "Address"); + qmlRegisterType<QDeclarativeGeoLocation >(uri, major, minor, "Location"); + + // Register the 5.2 types + minor = 2; + qmlRegisterSingletonType<LocationSingleton >(uri, major, minor, "QtPositioning", singleton_type_factory); + qmlRegisterValueTypeEnums<GeoShapeValueType >(uri, major, minor, "GeoShape"); + qmlRegisterType<QDeclarativePosition >(uri, major, minor, "Position"); + qmlRegisterType<QDeclarativePositionSource >(uri, major, minor, "PositionSource"); + qmlRegisterType<QDeclarativeGeoAddress >(uri, major, minor, "Address"); + qmlRegisterType<QDeclarativeGeoLocation >(uri, major, minor, "Location"); + + // Register the 5.3 types + minor = 3; qmlRegisterType<QDeclarativeGeoCoordinateAnimation>(uri, 5, 3, "CoordinateAnimation"); } else { qDebug() << "Unsupported URI given to load positioning QML plugin: " << QLatin1String(uri); |