Reset indicator when the screen is locked
[ameter] / ameterwidget.h
1 #ifndef AMETERWIDGET_H
2 #define AMETERWIDGET_H
3
4 #include <QtCore/QTimer>
5 #include <QtGui/QWidget>
6
7 #include <QtSensors/QAccelerometer>
8
9 // Neccessary for Qt Mobility API usage
10 QTM_USE_NAMESPACE
11
12 class AMeterWidget : public QWidget, public QAccelerometerFilter
13 {
14     Q_OBJECT
15
16 public:
17     AMeterWidget(QWidget *parent = 0);
18     ~AMeterWidget();
19         
20     int setGravity(qreal g);
21     void reset();
22
23 public slots:
24     virtual bool filter(QAccelerometerReading *reading);
25
26 protected:
27     virtual void paintEvent(QPaintEvent *);
28     virtual void resizeEvent(QResizeEvent *);
29
30         void drawScale();
31         
32         // Background with scale
33     QImage *background;
34
35     qreal ax, ay, az;
36     qreal bx, by, bz;
37
38 private:
39     qreal r_g;  // 1/g
40     qreal r_a_max;  // 1/a_max
41     int in_reset;
42 };
43
44 #endif // AMETERWIDGET_H
45