Qwt User's Guide 6.1.0

- Main Page
- Related Pages
- Classes

All Classes Functions Variables Typedefs Enumerations Enumerator Pages
qwt_analog_clock.h
1 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
2 * Qwt Widget Library
3 * Copyright (C) 1997 Josef Wilgen
4 * Copyright (C) 2002 Uwe Rathmann
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the Qwt License, Version 1.0
8 *****************************************************************************/
9
10 #ifndef QWT_ANALOG_CLOCK_H
11 #define QWT_ANALOG_CLOCK_H
12
13 #include "qwt_global.h"
14 #include "qwt_dial.h"
15 #include "qwt_dial_needle.h"
16 #include <qdatetime.h>
17
43 class QWT_EXPORT QwtAnalogClock: public QwtDial
44 {
45 Q_OBJECT
46
47 public:
52 enum Hand
53 {
55 SecondHand,
56
58 MinuteHand,
59
61 HourHand,
62
64 NHands
65 };
66
67 explicit QwtAnalogClock( QWidget* parent = NULL );
68 virtual ~QwtAnalogClock();
69
70 void setHand( Hand, QwtDialNeedle * );
71
72 const QwtDialNeedle *hand( Hand ) const;
73 QwtDialNeedle *hand( Hand );
74
75 public Q_SLOTS:
76 void setCurrentTime();
77 void setTime( const QTime & );
78
79 protected:
80 virtual void drawNeedle( QPainter *, const QPointF &,
81 double radius, double direction, QPalette::ColorGroup ) const;
82
83 virtual void drawHand( QPainter *, Hand, const QPointF &,
84 double radius, double direction, QPalette::ColorGroup ) const;
85
86 private:
87 // use setHand instead
88 void setNeedle( QwtDialNeedle * );
89
90 QwtDialNeedle *d_hand[NHands];
91 };
92
93 #endif