Qwt User's Guide  6.2.0
qwt_analog_clock.h
1 /******************************************************************************
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 
16 class QwtDialNeedle;
17 
43 class QWT_EXPORT QwtAnalogClock : public QwtDial
44 {
45  Q_OBJECT
46 
47  public:
52  enum Hand
53  {
56 
59 
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&, double radius,
81  double direction, QPalette::ColorGroup ) const QWT_OVERRIDE;
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* m_hand[NHands];
91 };
92 
93 #endif
An analog clock.
@ MinuteHand
Needle displaying the minutes.
@ HourHand
Needle displaying the hours.
@ SecondHand
Needle displaying the seconds.
QwtDial class provides a rounded range control.
Definition: qwt_dial.h:51
void setNeedle(QwtDialNeedle *)
Definition: qwt_dial.cpp:522
virtual void drawNeedle(QPainter *, const QPointF &, double radius, double direction, QPalette::ColorGroup) const
Definition: qwt_dial.cpp:438
Base class for needles that can be used in a QwtDial.