attitude_indicator.h
888 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include <qwt_dial.h>
#include <qwt_dial_needle.h>
class AttitudeIndicatorNeedle: public QwtDialNeedle
{
public:
AttitudeIndicatorNeedle( const QColor & );
protected:
virtual void drawNeedle( QPainter *,
double length, QPalette::ColorGroup ) const;
};
class AttitudeIndicator: public QwtDial
{
Q_OBJECT
public:
AttitudeIndicator( QWidget *parent = NULL );
double angle() const { return value(); }
double gradient() const { return d_gradient; }
public Q_SLOTS:
void setGradient( double );
void setAngle( double angle ) { setValue( angle ); }
protected:
virtual void keyPressEvent( QKeyEvent * );
virtual void drawScale( QPainter *,
const QPointF ¢er, double radius ) const;
virtual void drawScaleContents( QPainter *painter,
const QPointF ¢er, double radius ) const;
private:
double d_gradient;
};