summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Blasche <alexander.blasche@digia.com>2013-10-28 15:51:42 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-10-30 13:50:21 +0100
commit9f58f8cbf859b2bc7225ee8e0c841200c72e47b4 (patch)
treec2881869d01282b3dcf23e815dec80dcfe9336d2
parentd0f187fb0cc92e230bc50a8c3fc4f627a8863fa0 (diff)
downloadqtlocation-9f58f8cbf859b2bc7225ee8e0c841200c72e47b4.tar.gz
Add NoError to the various Positioning Source classes.
This became apparent while implementing the BB10 and Android backends. Change-Id: I54e2c0fce63021b9fad0c544777792aed726608b Reviewed-by: Aaron McCarthy <mccarthy.aaron@gmail.com>
-rw-r--r--examples/logfilepositionsource/logfilepositionsource.cpp2
-rw-r--r--src/imports/positioning/plugins.qmltypes1
-rw-r--r--src/imports/positioning/qdeclarativepositionsource.cpp15
-rw-r--r--src/imports/positioning/qdeclarativepositionsource_p.h2
-rw-r--r--src/plugins/position/geoclue/qgeopositioninfosource_geocluemaster.cpp2
-rw-r--r--src/plugins/position/geoclue/qgeosatelliteinfosource_geocluemaster.cpp2
-rw-r--r--src/plugins/position/gypsy/qgeosatelliteinfosource_gypsy.cpp2
-rw-r--r--src/plugins/position/positionpoll/qgeoareamonitor_polling.cpp4
-rw-r--r--src/plugins/position/simulator/qgeopositioninfosource_simulator.cpp2
-rw-r--r--src/plugins/position/simulator/qgeosatelliteinfosource_simulator_p.h2
-rw-r--r--src/positioning/qgeoareamonitorsource.cpp1
-rw-r--r--src/positioning/qgeoareamonitorsource.h5
-rw-r--r--src/positioning/qgeopositioninfosource.cpp1
-rw-r--r--src/positioning/qgeopositioninfosource.h5
-rw-r--r--src/positioning/qgeosatelliteinfosource.cpp1
-rw-r--r--src/positioning/qgeosatelliteinfosource.h3
-rw-r--r--tests/auto/positionplugin/plugin.cpp2
-rw-r--r--tests/auto/qgeoareamonitor/logfilepositionsource.cpp2
-rw-r--r--tests/auto/qgeopositioninfosource/testqgeopositioninfosource.cpp2
-rw-r--r--tests/auto/qgeosatelliteinfosource/testqgeosatelliteinfosource.cpp2
20 files changed, 36 insertions, 22 deletions
diff --git a/examples/logfilepositionsource/logfilepositionsource.cpp b/examples/logfilepositionsource/logfilepositionsource.cpp
index 3730d949..0f3c45dd 100644
--- a/examples/logfilepositionsource/logfilepositionsource.cpp
+++ b/examples/logfilepositionsource/logfilepositionsource.cpp
@@ -119,5 +119,5 @@ void LogFilePositionSource::readNextPosition()
QGeoPositionInfoSource::Error LogFilePositionSource::error() const
{
- return QGeoPositionInfoSource::UnknownSourceError;
+ return QGeoPositionInfoSource::NoError;
}
diff --git a/src/imports/positioning/plugins.qmltypes b/src/imports/positioning/plugins.qmltypes
index 23aeac08..7e7f6a13 100644
--- a/src/imports/positioning/plugins.qmltypes
+++ b/src/imports/positioning/plugins.qmltypes
@@ -155,6 +155,7 @@ Module {
"AccessError": 0,
"ClosedError": 1,
"UnknownSourceError": 2,
+ "NoError": 3,
"SocketError": 100
}
}
diff --git a/src/imports/positioning/qdeclarativepositionsource.cpp b/src/imports/positioning/qdeclarativepositionsource.cpp
index da439511..2cceae0f 100644
--- a/src/imports/positioning/qdeclarativepositionsource.cpp
+++ b/src/imports/positioning/qdeclarativepositionsource.cpp
@@ -118,7 +118,7 @@ QT_BEGIN_NAMESPACE
QDeclarativePositionSource::QDeclarativePositionSource()
: m_positionSource(0), m_preferredPositioningMethods(NoPositioningMethod), m_nmeaFile(0),
m_nmeaSocket(0), m_active(false), m_singleUpdate(false), m_updateInterval(0),
- m_sourceError(UnknownSourceError)
+ m_sourceError(NoError)
{
}
@@ -668,6 +668,7 @@ void QDeclarativePositionSource::positionUpdateReceived(const QGeoPositionInfo &
\li PositionSource.ClosedError - The remote positioning backend closed the connection, which happens for example in case
the user is switching location services to off. This object becomes invalid and should be deleted.
A new source can be declared later on to check whether the positioning backend is up again.
+ \li PositionSource.NoError - No error has occurred.
\li PositionSource.UnknownSourceError - An unidentified error occurred.
\li PositionSource.SocketError - An error occurred while connecting to an nmea source using a socket.
\endlist
@@ -725,13 +726,15 @@ void QDeclarativePositionSource::componentComplete()
*/
void QDeclarativePositionSource::sourceErrorReceived(const QGeoPositionInfoSource::Error error)
{
- if (error == QGeoPositionInfoSource::AccessError) {
+ if (error == QGeoPositionInfoSource::AccessError)
m_sourceError = QDeclarativePositionSource::AccessError;
- } else if (error == QGeoPositionInfoSource::ClosedError) {
+ else if (error == QGeoPositionInfoSource::ClosedError)
m_sourceError = QDeclarativePositionSource::ClosedError;
- } else {
- m_sourceError = QDeclarativePositionSource::UnknownSourceError;
- }
+ else if (error == QGeoPositionInfoSource::NoError)
+ return; //nothing to do
+ else
+ m_sourceError = QDeclarativePositionSource::UnknownSourceError;
+
emit sourceErrorChanged();
}
diff --git a/src/imports/positioning/qdeclarativepositionsource_p.h b/src/imports/positioning/qdeclarativepositionsource_p.h
index bb229d5e..63e54587 100644
--- a/src/imports/positioning/qdeclarativepositionsource_p.h
+++ b/src/imports/positioning/qdeclarativepositionsource_p.h
@@ -86,6 +86,8 @@ public:
AccessError = QGeoPositionInfoSource::AccessError,
ClosedError = QGeoPositionInfoSource::ClosedError,
UnknownSourceError = QGeoPositionInfoSource::UnknownSourceError,
+ NoError = QGeoPositionInfoSource::NoError,
+
//Leave a gap for future error enum values in QGeoPositionInfoSource::Error
SocketError = 100
};
diff --git a/src/plugins/position/geoclue/qgeopositioninfosource_geocluemaster.cpp b/src/plugins/position/geoclue/qgeopositioninfosource_geocluemaster.cpp
index 1a062431..48c731e8 100644
--- a/src/plugins/position/geoclue/qgeopositioninfosource_geocluemaster.cpp
+++ b/src/plugins/position/geoclue/qgeopositioninfosource_geocluemaster.cpp
@@ -528,7 +528,7 @@ QGeoPositionInfo QGeoPositionInfoSourceGeoclueMaster::geoclueToPositionInfo(
QGeoPositionInfoSource::Error QGeoPositionInfoSourceGeoclueMaster::error() const
{
- return UnknownSourceError;
+ return NoError;
}
#include "moc_qgeopositioninfosource_geocluemaster_p.cpp"
diff --git a/src/plugins/position/geoclue/qgeosatelliteinfosource_geocluemaster.cpp b/src/plugins/position/geoclue/qgeosatelliteinfosource_geocluemaster.cpp
index 2a8d19fc..35901d10 100644
--- a/src/plugins/position/geoclue/qgeosatelliteinfosource_geocluemaster.cpp
+++ b/src/plugins/position/geoclue/qgeosatelliteinfosource_geocluemaster.cpp
@@ -143,7 +143,7 @@ int QGeoSatelliteInfoSourceGeoclueMaster::minimumUpdateInterval() const
QGeoSatelliteInfoSource::Error QGeoSatelliteInfoSourceGeoclueMaster::error() const
{
- return UnknownSourceError;
+ return NoError;
}
void QGeoSatelliteInfoSourceGeoclueMaster::startUpdates()
diff --git a/src/plugins/position/gypsy/qgeosatelliteinfosource_gypsy.cpp b/src/plugins/position/gypsy/qgeosatelliteinfosource_gypsy.cpp
index 3a41047a..d7c93ebd 100644
--- a/src/plugins/position/gypsy/qgeosatelliteinfosource_gypsy.cpp
+++ b/src/plugins/position/gypsy/qgeosatelliteinfosource_gypsy.cpp
@@ -290,7 +290,7 @@ int QGeoSatelliteInfoSourceGypsy::minimumUpdateInterval() const
QGeoSatelliteInfoSource::Error QGeoSatelliteInfoSourceGypsy::error() const
{
- return UnknownSourceError;
+ return NoError;
}
void QGeoSatelliteInfoSourceGypsy::startUpdates()
diff --git a/src/plugins/position/positionpoll/qgeoareamonitor_polling.cpp b/src/plugins/position/positionpoll/qgeoareamonitor_polling.cpp
index 55d66993..c6d97c59 100644
--- a/src/plugins/position/positionpoll/qgeoareamonitor_polling.cpp
+++ b/src/plugins/position/positionpoll/qgeoareamonitor_polling.cpp
@@ -321,7 +321,7 @@ QGeoAreaMonitorPolling::QGeoAreaMonitorPolling(QObject *parent)
: QGeoAreaMonitorSource(parent), signalsAreConnected(false)
{
d = pollingPrivate();
- lastError = QGeoAreaMonitorSource::UnknownSourceError;
+ lastError = QGeoAreaMonitorSource::NoError;
d->registerClient(this);
//hookup to default source if existing
if (!positionInfoSource())
@@ -492,6 +492,8 @@ void QGeoAreaMonitorPolling::positionError(const QGeoPositionInfoSource::Error e
case QGeoPositionInfoSource::ClosedError:
lastError = QGeoAreaMonitorSource::InsufficientPositionInfo;
break;
+ case QGeoPositionInfoSource::NoError:
+ return;
}
emit QGeoAreaMonitorSource::error(lastError);
diff --git a/src/plugins/position/simulator/qgeopositioninfosource_simulator.cpp b/src/plugins/position/simulator/qgeopositioninfosource_simulator.cpp
index 359a9b16..3a078e16 100644
--- a/src/plugins/position/simulator/qgeopositioninfosource_simulator.cpp
+++ b/src/plugins/position/simulator/qgeopositioninfosource_simulator.cpp
@@ -78,7 +78,7 @@ QGeoPositionInfoSourceSimulator::QGeoPositionInfoSourceSimulator(QObject *parent
: QGeoPositionInfoSource(parent)
, timer(new QTimer(this))
, requestTimer(new QTimer(this))
- , m_positionError(QGeoPositionInfoSource::UnknownSourceError)
+ , m_positionError(QGeoPositionInfoSource::NoError)
{
Simulator::LocationConnection::ensureSimulatorConnection();
diff --git a/src/plugins/position/simulator/qgeosatelliteinfosource_simulator_p.h b/src/plugins/position/simulator/qgeosatelliteinfosource_simulator_p.h
index 5d97c7eb..4ed73eb7 100644
--- a/src/plugins/position/simulator/qgeosatelliteinfosource_simulator_p.h
+++ b/src/plugins/position/simulator/qgeosatelliteinfosource_simulator_p.h
@@ -64,7 +64,7 @@ public:
virtual int minimumUpdateInterval() const;
// Default implementation for error()
- Error error() const { return QGeoSatelliteInfoSource::UnknownSourceError; }
+ Error error() const { return QGeoSatelliteInfoSource::NoError; }
public slots:
virtual void startUpdates();
virtual void stopUpdates();
diff --git a/src/positioning/qgeoareamonitorsource.cpp b/src/positioning/qgeoareamonitorsource.cpp
index 334d4a05..8762c0cb 100644
--- a/src/positioning/qgeoareamonitorsource.cpp
+++ b/src/positioning/qgeoareamonitorsource.cpp
@@ -95,6 +95,7 @@ public:
application lacked the required privileges.
\value InsufficientPositionInfo The area monitoring source could not retrieve a location fix or
the accuracy of the fix is not high enough to provide an effective area monitoring.
+ \value NoError No error has occurred.
\value UnknownSourceError An unidentified error occurred.
*/
diff --git a/src/positioning/qgeoareamonitorsource.h b/src/positioning/qgeoareamonitorsource.h
index 03c98874..808210c0 100644
--- a/src/positioning/qgeoareamonitorsource.h
+++ b/src/positioning/qgeoareamonitorsource.h
@@ -59,8 +59,9 @@ class Q_POSITIONING_EXPORT QGeoAreaMonitorSource : public QObject
public:
enum Error {
AccessError = 0,
- InsufficientPositionInfo,
- UnknownSourceError
+ InsufficientPositionInfo = 1,
+ UnknownSourceError = 2,
+ NoError = 3
};
Q_ENUMS(Error)
diff --git a/src/positioning/qgeopositioninfosource.cpp b/src/positioning/qgeopositioninfosource.cpp
index cf22e4ac..eeb560b8 100644
--- a/src/positioning/qgeopositioninfosource.cpp
+++ b/src/positioning/qgeopositioninfosource.cpp
@@ -462,6 +462,7 @@ QStringList QGeoPositionInfoSource::availableSources()
\value ClosedError The remote positioning backend closed the connection, which happens for example in case
the user is switching location services to off. This object becomes invalid and should be deleted.
A call to createDefaultSource() can be used to create a new source later on.
+ \value NoError No error has occurred.
\value UnknownSourceError An unidentified error occurred.
*/
diff --git a/src/positioning/qgeopositioninfosource.h b/src/positioning/qgeopositioninfosource.h
index 3c641f57..34bdc1eb 100644
--- a/src/positioning/qgeopositioninfosource.h
+++ b/src/positioning/qgeopositioninfosource.h
@@ -58,8 +58,9 @@ class Q_POSITIONING_EXPORT QGeoPositionInfoSource : public QObject
public:
enum Error {
AccessError = 0,
- ClosedError,
- UnknownSourceError
+ ClosedError = 1,
+ UnknownSourceError = 2,
+ NoError = 3
};
Q_ENUMS(Error)
diff --git a/src/positioning/qgeosatelliteinfosource.cpp b/src/positioning/qgeosatelliteinfosource.cpp
index 3cf35634..4991e879 100644
--- a/src/positioning/qgeosatelliteinfosource.cpp
+++ b/src/positioning/qgeosatelliteinfosource.cpp
@@ -328,6 +328,7 @@ QStringList QGeoSatelliteInfoSource::availableSources()
\value ClosedError The remote satellite backend closed the connection, which happens for example in case
the user is switching location services to off. This object becomes invalid and should be deleted.
A new satellite source can be created by calling createDefaultSource() later on.
+ \value NoError No error has occurred.
\value UnknownSourceError An unidentified error occurred.
*/
diff --git a/src/positioning/qgeosatelliteinfosource.h b/src/positioning/qgeosatelliteinfosource.h
index 2b25aec7..15fc974f 100644
--- a/src/positioning/qgeosatelliteinfosource.h
+++ b/src/positioning/qgeosatelliteinfosource.h
@@ -58,7 +58,8 @@ class Q_POSITIONING_EXPORT QGeoSatelliteInfoSource : public QObject
public:
enum Error {
AccessError = 0,
- ClosedError, /* 1 */
+ ClosedError = 1,
+ NoError = 2,
UnknownSourceError = -1
};
Q_ENUMS(Error)
diff --git a/tests/auto/positionplugin/plugin.cpp b/tests/auto/positionplugin/plugin.cpp
index bfc4880b..a213bbb1 100644
--- a/tests/auto/positionplugin/plugin.cpp
+++ b/tests/auto/positionplugin/plugin.cpp
@@ -95,7 +95,7 @@ DummySource::DummySource(QObject *parent) :
QGeoPositionInfoSource::Error DummySource::error() const
{
- return QGeoPositionInfoSource::UnknownSourceError;
+ return QGeoPositionInfoSource::NoError;
}
diff --git a/tests/auto/qgeoareamonitor/logfilepositionsource.cpp b/tests/auto/qgeoareamonitor/logfilepositionsource.cpp
index fcfb7e0d..5ebfff0b 100644
--- a/tests/auto/qgeoareamonitor/logfilepositionsource.cpp
+++ b/tests/auto/qgeoareamonitor/logfilepositionsource.cpp
@@ -121,5 +121,5 @@ void LogFilePositionSource::readNextPosition()
QGeoPositionInfoSource::Error LogFilePositionSource::error() const
{
- return QGeoPositionInfoSource::UnknownSourceError;
+ return QGeoPositionInfoSource::NoError;
}
diff --git a/tests/auto/qgeopositioninfosource/testqgeopositioninfosource.cpp b/tests/auto/qgeopositioninfosource/testqgeopositioninfosource.cpp
index 83eef77d..86435448 100644
--- a/tests/auto/qgeopositioninfosource/testqgeopositioninfosource.cpp
+++ b/tests/auto/qgeopositioninfosource/testqgeopositioninfosource.cpp
@@ -102,7 +102,7 @@ public:
virtual void requestUpdate(int) {}
- Error error() const { return QGeoPositionInfoSource::UnknownSourceError; }
+ Error error() const { return QGeoPositionInfoSource::NoError; }
private:
PositioningMethods m_methods;
diff --git a/tests/auto/qgeosatelliteinfosource/testqgeosatelliteinfosource.cpp b/tests/auto/qgeosatelliteinfosource/testqgeosatelliteinfosource.cpp
index eef51182..4f00f72e 100644
--- a/tests/auto/qgeosatelliteinfosource/testqgeosatelliteinfosource.cpp
+++ b/tests/auto/qgeosatelliteinfosource/testqgeosatelliteinfosource.cpp
@@ -82,7 +82,7 @@ public:
virtual int minimumUpdateInterval() const {
return 0;
}
- Error error() const { return QGeoSatelliteInfoSource::UnknownSourceError; }
+ Error error() const { return QGeoSatelliteInfoSource::NoError; }
};