summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Blasche <alexander.blasche@digia.com>2013-10-28 16:14:23 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-10-30 13:50:28 +0100
commita3e4a69a17a68e1b6bf3a9254164cac0eb2e71b5 (patch)
tree5359197b90432c3dc643870ecafa4e0518681a42
parent9f58f8cbf859b2bc7225ee8e0c841200c72e47b4 (diff)
downloadqtlocation-a3e4a69a17a68e1b6bf3a9254164cac0eb2e71b5.tar.gz
Add QGeoPositionInfoSource::NoPositioningMethods enum value
This simplifies various position backend implementations as they don't have to cast 0 to QGeoPositionInfoSource::PositioningMethods At the same time we synchronize the same QML enum and its value name. Change-Id: Ic0b258161a6319da238b265ad5d9926349f461f1 Reviewed-by: Aaron McCarthy <mccarthy.aaron@gmail.com>
-rw-r--r--examples/declarative/flickr/flickrmobile/GeoTab.qml8
-rw-r--r--src/imports/positioning/plugins.qmltypes12
-rw-r--r--src/imports/positioning/qdeclarativepositionsource.cpp26
-rw-r--r--src/imports/positioning/qdeclarativepositionsource_p.h6
-rw-r--r--src/location/doc/snippets/declarative/declarative-location.qml6
-rw-r--r--src/positioning/qgeopositioninfosource.cpp1
-rw-r--r--src/positioning/qgeopositioninfosource.h1
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