summaryrefslogtreecommitdiffstats
path: root/src/sensors/qaccelerometer.h
diff options
context:
space:
mode:
authorThomas McGuire <thomas.mcguire.qnx@kdab.com>2012-07-02 16:18:35 +0200
committerThomas McGuire <thomas.mcguire@kdab.com>2012-11-29 13:00:50 +0100
commitc8a5b1494dfa26173eca1ac6ff2cca9ea6b41b85 (patch)
treed6bff66f85e2d8ce0c522c23022c0b2544377cad /src/sensors/qaccelerometer.h
parent0ad111b1bf5a3a8aeb5d82623c02cac792792936 (diff)
QAccelerometer: Add AccelerationMode property
Adds a private class. Ctor was de-inlined, this is BC, apps linked against old versions don't use the AccelerationMode property so don't need to call the new ctor anyway. Change-Id: I943ba91f33612922911515527380add648155d31 Reviewed-by: Lorn Potter <lorn.potter@gmail.com> Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
Diffstat (limited to 'src/sensors/qaccelerometer.h')
-rw-r--r--src/sensors/qaccelerometer.h32
1 files changed, 30 insertions, 2 deletions
diff --git a/src/sensors/qaccelerometer.h b/src/sensors/qaccelerometer.h
index 540112053b..c518734460 100644
--- a/src/sensors/qaccelerometer.h
+++ b/src/sensors/qaccelerometer.h
@@ -74,14 +74,42 @@ private:
bool filter(QSensorReading *reading) { return filter(static_cast<QAccelerometerReading*>(reading)); }
};
+class QAccelerometerPrivate;
+
class Q_SENSORS_EXPORT QAccelerometer : public QSensor
{
Q_OBJECT
+ Q_ENUMS(AccelerationMode)
+ Q_PROPERTY(AccelerationMode accelerationMode READ accelerationMode WRITE setAccelerationMode
+ NOTIFY accelerationModeChanged)
public:
- explicit QAccelerometer(QObject *parent = 0) : QSensor(QAccelerometer::type, parent) {}
- virtual ~QAccelerometer() {}
+ explicit QAccelerometer(QObject *parent = 0);
+ virtual ~QAccelerometer();
+
+ enum AccelerationMode {
+ Gravity,
+ User,
+ Combined
+ };
+
+ AccelerationMode accelerationMode() const;
+ void setAccelerationMode(AccelerationMode accelerationMode);
+
QAccelerometerReading *reading() const { return static_cast<QAccelerometerReading*>(QSensor::reading()); }
static char const * const type;
+
+public slots:
+ void setUserAcceleration();
+ void setGravityAcceleration();
+ void setCombinedAcceleration();
+
+signals:
+ void accelerationModeChanged(AccelerationMode accelerationMode);
+
+private:
+ friend class QAccelerometerPrivate;
+ QAccelerometerPrivate *d_func() const;
+ Q_DISABLE_COPY(QAccelerometer)
};
QTM_END_NAMESPACE