summaryrefslogtreecommitdiffstats
path: root/src/sensors
diff options
context:
space:
mode:
Diffstat (limited to 'src/sensors')
-rw-r--r--src/sensors/qsensor.cpp15
-rw-r--r--src/sensors/qsensor.h3
2 files changed, 4 insertions, 14 deletions
diff --git a/src/sensors/qsensor.cpp b/src/sensors/qsensor.cpp
index 9d41dbf7..56c11bc4 100644
--- a/src/sensors/qsensor.cpp
+++ b/src/sensors/qsensor.cpp
@@ -480,20 +480,9 @@ int QSensor::dataRate() const
void QSensor::setDataRate(int rate)
{
Q_D(QSensor);
- if (rate == 0 || !isConnectedToBackend()) {
+ if (d->dataRate != rate) {
d->dataRate = rate;
- return;
- }
- bool warn = true;
- Q_FOREACH (const qrange &range, d->availableDataRates) {
- if (rate >= range.first && rate <= range.second) {
- warn = false;
- d->dataRate = rate;
- break;
- }
- }
- if (warn) {
- qWarning() << "setDataRate:" << rate << "is not supported by the sensor.";
+ emit dataRateChanged();
}
}
diff --git a/src/sensors/qsensor.h b/src/sensors/qsensor.h
index 43fe221c..bcdc09e2 100644
--- a/src/sensors/qsensor.h
+++ b/src/sensors/qsensor.h
@@ -84,7 +84,7 @@ class Q_SENSORS_EXPORT QSensor : public QObject
Q_PROPERTY(QByteArray type READ type)
Q_PROPERTY(bool connectedToBackend READ isConnectedToBackend)
Q_PROPERTY(qrangelist availableDataRates READ availableDataRates)
- Q_PROPERTY(int dataRate READ dataRate WRITE setDataRate)
+ Q_PROPERTY(int dataRate READ dataRate WRITE setDataRate NOTIFY dataRateChanged)
Q_PROPERTY(QSensorReading* reading READ reading NOTIFY readingChanged)
Q_PROPERTY(bool busy READ isBusy)
Q_PROPERTY(bool active READ isActive WRITE setActive NOTIFY activeChanged)
@@ -167,6 +167,7 @@ Q_SIGNALS:
void sensorError(int error);
void availableSensorsChanged();
void alwaysOnChanged();
+ void dataRateChanged();
protected:
explicit QSensor(const QByteArray &type, QSensorPrivate &dd, QObject* parent = 0);