diff options
7 files changed, 32 insertions, 28 deletions
diff --git a/examples/declarative/flickr/flickrmobile/GeoTab.qml b/examples/declarative/flickr/flickrmobile/GeoTab.qml index 922bc31e..53066190 100644 --- a/examples/declarative/flickr/flickrmobile/GeoTab.qml +++ b/examples/declarative/flickr/flickrmobile/GeoTab.qml @@ -81,7 +81,7 @@ Rectangle { //! [locatebutton-clicked] onClicked: { if (positionSource.supportedPositioningMethods === - PositionSource.NoPositioningMethod) { + PositionSource.NoPositioningMethods) { positionSource.nmeaSource = "nmealog.txt"; sourceText.text = "(filesource): " + printableMethod(positionSource.supportedPositioningMethods); } @@ -96,11 +96,11 @@ Rectangle { } //! [possrc] function printableMethod(method) { - if (method === PositionSource.SatellitePositioningMethod) + if (method === PositionSource.SatellitePositioningMethods) return "Satellite"; - else if (method === PositionSource.NoPositioningMethod) + else if (method === PositionSource.NoPositioningMethods) return "Not available" - else if (method === PositionSource.NonSatellitePositioningMethod) + else if (method === PositionSource.NonSatellitePositioningMethods) return "Non-satellite" else if (method === PositionSource.AllPositioningMethods) return "Multiple" diff --git a/src/imports/positioning/plugins.qmltypes b/src/imports/positioning/plugins.qmltypes index 7e7f6a13..55cfac45 100644 --- a/src/imports/positioning/plugins.qmltypes +++ b/src/imports/positioning/plugins.qmltypes @@ -134,18 +134,18 @@ Module { Enum { name: "PositioningMethod" values: { - "NoPositioningMethod": 0, - "SatellitePositioningMethod": 255, - "NonSatellitePositioningMethod": -256, + "NoPositioningMethods": 0, + "SatellitePositioningMethods": 255, + "NonSatellitePositioningMethods": -256, "AllPositioningMethods": -1 } } Enum { name: "PositioningMethods" values: { - "NoPositioningMethod": 0, - "SatellitePositioningMethod": 255, - "NonSatellitePositioningMethod": -256, + "NoPositioningMethods": 0, + "SatellitePositioningMethods": 255, + "NonSatellitePositioningMethods": -256, "AllPositioningMethods": -1 } } diff --git a/src/imports/positioning/qdeclarativepositionsource.cpp b/src/imports/positioning/qdeclarativepositionsource.cpp index 2cceae0f..eff548d2 100644 --- a/src/imports/positioning/qdeclarativepositionsource.cpp +++ b/src/imports/positioning/qdeclarativepositionsource.cpp @@ -116,7 +116,7 @@ QT_BEGIN_NAMESPACE */ QDeclarativePositionSource::QDeclarativePositionSource() -: m_positionSource(0), m_preferredPositioningMethods(NoPositioningMethod), m_nmeaFile(0), +: m_positionSource(0), m_preferredPositioningMethods(NoPositioningMethods), m_nmeaFile(0), m_nmeaSocket(0), m_active(false), m_singleUpdate(false), m_updateInterval(0), m_sourceError(NoError) { @@ -453,9 +453,9 @@ int QDeclarativePositionSource::updateInterval() const current source. \list - \li PositionSource.NoPositioningMethod - No positioning methods supported (no source). - \li PositionSource.SatellitePositioningMethod - Satellite-based positioning methods such as GPS are supported. - \li PositionSource.NonSatellitePositioningMethod - Non-satellite-based methods are supported. + \li PositionSource.NoPositioningMethods - No positioning methods supported (no source). + \li PositionSource.SatellitePositioningMethods - Satellite-based positioning methods such as GPS are supported. + \li PositionSource.NonSatellitePositioningMethods - Non-satellite-based methods are supported. \li PositionSource.AllPositioningMethods - Both satellite-based and non-satellite positioning methods are supported. \endlist @@ -468,12 +468,12 @@ QDeclarativePositionSource::PositioningMethods QDeclarativePositionSource::suppo if ( (methods & QGeoPositionInfoSource::AllPositioningMethods) == methods ) { return QDeclarativePositionSource::AllPositioningMethods; } else if (methods & QGeoPositionInfoSource::SatellitePositioningMethods) { - return QDeclarativePositionSource::SatellitePositioningMethod; + return QDeclarativePositionSource::SatellitePositioningMethods; } else if (methods & QGeoPositionInfoSource::NonSatellitePositioningMethods) { - return QDeclarativePositionSource::NonSatellitePositioningMethod; + return QDeclarativePositionSource::NonSatellitePositioningMethods; } } - return QDeclarativePositionSource::NoPositioningMethod; + return QDeclarativePositionSource::NoPositioningMethods; } /*! @@ -483,8 +483,9 @@ QDeclarativePositionSource::PositioningMethods QDeclarativePositionSource::suppo current source. \list - \li PositionSource.SatellitePositioningMethod - Satellite-based positioning methods such as GPS should be preferred. - \li PositionSource.NonSatellitePositioningMethod - Non-satellite-based methods should be preferred. + \li PositionSource.NoPositioningMethods - No positioning method is preferred. + \li PositionSource.SatellitePositioningMethods - Satellite-based positioning methods such as GPS should be preferred. + \li PositionSource.NonSatellitePositioningMethods - Non-satellite-based methods should be preferred. \li PositionSource.AllPositioningMethods - Any positioning methods are acceptable. \endlist @@ -519,10 +520,11 @@ QDeclarativePositionSource::PositioningMethods QDeclarativePositionSource::prefe if ( (methods & QGeoPositionInfoSource::AllPositioningMethods) == methods) { return QDeclarativePositionSource::AllPositioningMethods; } else if (methods & QGeoPositionInfoSource::SatellitePositioningMethods) { - return QDeclarativePositionSource::SatellitePositioningMethod; + return QDeclarativePositionSource::SatellitePositioningMethods; } else if (methods & QGeoPositionInfoSource::NonSatellitePositioningMethods) { - return QDeclarativePositionSource::NonSatellitePositioningMethod; - } + return QDeclarativePositionSource::NonSatellitePositioningMethods; + } else if (methods == QGeoPositionInfoSource::NoPositioningMethods) + return QDeclarativePositionSource::NoPositioningMethods; } return m_preferredPositioningMethods; } diff --git a/src/imports/positioning/qdeclarativepositionsource_p.h b/src/imports/positioning/qdeclarativepositionsource_p.h index 63e54587..b44ba4bb 100644 --- a/src/imports/positioning/qdeclarativepositionsource_p.h +++ b/src/imports/positioning/qdeclarativepositionsource_p.h @@ -73,9 +73,9 @@ class QDeclarativePositionSource : public QObject, public QQmlParserStatus public: enum PositioningMethod { - NoPositioningMethod = 0, - SatellitePositioningMethod = QGeoPositionInfoSource::SatellitePositioningMethods, - NonSatellitePositioningMethod = QGeoPositionInfoSource::NonSatellitePositioningMethods, + NoPositioningMethods = QGeoPositionInfoSource::NoPositioningMethods, + SatellitePositioningMethods = QGeoPositionInfoSource::SatellitePositioningMethods, + NonSatellitePositioningMethods = QGeoPositionInfoSource::NonSatellitePositioningMethods, AllPositioningMethods = QGeoPositionInfoSource::AllPositioningMethods }; diff --git a/src/location/doc/snippets/declarative/declarative-location.qml b/src/location/doc/snippets/declarative/declarative-location.qml index b98de5a7..3128691a 100644 --- a/src/location/doc/snippets/declarative/declarative-location.qml +++ b/src/location/doc/snippets/declarative/declarative-location.qml @@ -71,11 +71,11 @@ Rectangle { Text {text: "speedValid: " + positionSource.position.speedValid} } function printableMethod(method) { - if (method == PositionSource.SatellitePositioningMethod) + if (method == PositionSource.SatellitePositioningMethods) return "Satellite"; - else if (method == PositionSource.NoPositioningMethod) + else if (method == PositionSource.NoPositioningMethods) return "Not available" - else if (method == PositionSource.NonSatellitePositioningMethod) + else if (method == PositionSource.NonSatellitePositioningMethods) return "Non-satellite" else if (method == PositionSource.AllPositioningMethods) return "All/multiple" diff --git a/src/positioning/qgeopositioninfosource.cpp b/src/positioning/qgeopositioninfosource.cpp index eeb560b8..aeba422e 100644 --- a/src/positioning/qgeopositioninfosource.cpp +++ b/src/positioning/qgeopositioninfosource.cpp @@ -105,6 +105,7 @@ Q_GLOBAL_STATIC_WITH_ARGS(QFactoryLoader, loader, \enum QGeoPositionInfoSource::PositioningMethod Defines the types of positioning methods. + \value NoPositioningMethods None of the positioning methods. \value SatellitePositioningMethods Satellite-based positioning methods such as GPS or GLONASS. \value NonSatellitePositioningMethods Other positioning methods such as 3GPP cell identifier or WiFi based positioning. \value AllPositioningMethods Satellite-based positioning methods as soon as available. Otherwise non-satellite based methods. diff --git a/src/positioning/qgeopositioninfosource.h b/src/positioning/qgeopositioninfosource.h index 34bdc1eb..92fdacf6 100644 --- a/src/positioning/qgeopositioninfosource.h +++ b/src/positioning/qgeopositioninfosource.h @@ -65,6 +65,7 @@ public: Q_ENUMS(Error) enum PositioningMethod { + NoPositioningMethods = 0x00000000, SatellitePositioningMethods = 0x000000ff, NonSatellitePositioningMethods = 0xffffff00, AllPositioningMethods = 0xffffffff |