Qwt User's Guide  6.1.3
QwtAnalogClock Class Reference

An analog clock. More...

#include <qwt_analog_clock.h>

Inheritance diagram for QwtAnalogClock:

Public Types

enum  Hand { SecondHand, MinuteHand, HourHand, NHands }
- Public Types inherited from QwtDial
enum  Shadow { Plain = QFrame::Plain, Raised = QFrame::Raised, Sunken = QFrame::Sunken }
 Frame shadow. More...
enum  Mode { RotateNeedle, RotateScale }
 Mode controlling whether the needle or the scale is rotating. More...

Public Slots

void setCurrentTime ()
 Set the current time.
void setTime (const QTime &)
- Public Slots inherited from QwtAbstractSlider
void setValue (double val)

Public Member Functions

 QwtAnalogClock (QWidget *parent=NULL)
virtual ~QwtAnalogClock ()
void setHand (Hand, QwtDialNeedle *)
const QwtDialNeedlehand (Hand) const
QwtDialNeedlehand (Hand)
- Public Member Functions inherited from QwtDial
 QwtDial (QWidget *parent=NULL)
 Constructor. More...
virtual ~QwtDial ()
void setFrameShadow (Shadow)
Shadow frameShadow () const
void setLineWidth (int)
int lineWidth () const
void setMode (Mode)
 Change the mode of the dial. More...
Mode mode () const
void setScaleArc (double min, double max)
void setMinScaleArc (double min)
double minScaleArc () const
void setMaxScaleArc (double min)
double maxScaleArc () const
virtual void setOrigin (double)
 Change the origin. More...
double origin () const
void setNeedle (QwtDialNeedle *)
const QwtDialNeedleneedle () const
QwtDialNeedleneedle ()
QRect boundingRect () const
QRect innerRect () const
virtual QRect scaleInnerRect () const
virtual QSize sizeHint () const
virtual QSize minimumSizeHint () const
void setScaleDraw (QwtRoundScaleDraw *)
QwtRoundScaleDrawscaleDraw ()
const QwtRoundScaleDrawscaleDraw () const
- Public Member Functions inherited from QwtAbstractSlider
 QwtAbstractSlider (QWidget *parent=NULL)
 Constructor. More...
virtual ~QwtAbstractSlider ()
void setValid (bool)
bool isValid () const
double value () const
 Returns the current value.
void setWrapping (bool)
bool wrapping () const
void setTotalSteps (uint)
 Set the number of steps. More...
uint totalSteps () const
void setSingleSteps (uint)
 Set the number of steps for a single increment. More...
uint singleSteps () const
void setPageSteps (uint)
 Set the number of steps for a page increment. More...
uint pageSteps () const
void setStepAlignment (bool)
 Enable step alignment. More...
bool stepAlignment () const
void setTracking (bool)
 Enables or disables tracking. More...
bool isTracking () const
void setReadOnly (bool)
bool isReadOnly () const
void setInvertedControls (bool)
bool invertedControls () const
- Public Member Functions inherited from QwtAbstractScale
 QwtAbstractScale (QWidget *parent=NULL)
virtual ~QwtAbstractScale ()
void setScale (double lowerBound, double upperBound)
 Specify a scale. More...
void setScale (const QwtInterval &)
 Specify a scale. More...
void setScale (const QwtScaleDiv &)
 Specify a scale. More...
const QwtScaleDivscaleDiv () const
void setLowerBound (double value)
double lowerBound () const
void setUpperBound (double value)
double upperBound () const
void setScaleStepSize (double stepSize)
 Set the step size used for calculating a scale division. More...
double scaleStepSize () const
void setScaleMaxMajor (int ticks)
 Set the maximum number of major tick intervals. More...
int scaleMaxMinor () const
void setScaleMaxMinor (int ticks)
 Set the maximum number of minor tick intervals. More...
int scaleMaxMajor () const
void setScaleEngine (QwtScaleEngine *)
 Set a scale engine. More...
const QwtScaleEnginescaleEngine () const
QwtScaleEnginescaleEngine ()
int transform (double) const
double invTransform (int) const
bool isInverted () const
double minimum () const
double maximum () const
const QwtScaleMapscaleMap () const

Protected Member Functions

virtual void drawNeedle (QPainter *, const QPointF &, double radius, double direction, QPalette::ColorGroup) const
 Draw the needle. More...
virtual void drawHand (QPainter *, Hand, const QPointF &, double radius, double direction, QPalette::ColorGroup) const
- Protected Member Functions inherited from QwtDial
virtual void wheelEvent (QWheelEvent *)
virtual void paintEvent (QPaintEvent *)
virtual void changeEvent (QEvent *)
virtual void drawFrame (QPainter *p)
virtual void drawContents (QPainter *) const
 Draw the contents inside the frame. More...
virtual void drawFocusIndicator (QPainter *) const
void invalidateCache ()
virtual void drawScale (QPainter *, const QPointF &center, double radius) const
virtual void drawScaleContents (QPainter *painter, const QPointF &center, double radius) const
virtual double scrolledTo (const QPoint &) const
 Determine the value for a new position of the slider handle. More...
virtual bool isScrollPosition (const QPoint &) const
 Determine what to do when the user presses a mouse button. More...
virtual void sliderChange ()
 Calling update()
virtual void scaleChange ()
- Protected Member Functions inherited from QwtAbstractSlider
virtual void mousePressEvent (QMouseEvent *)
virtual void mouseReleaseEvent (QMouseEvent *)
virtual void mouseMoveEvent (QMouseEvent *)
virtual void keyPressEvent (QKeyEvent *)
void incrementValue (int numSteps)
double incrementedValue (double value, int stepCount) const
- Protected Member Functions inherited from QwtAbstractScale
void rescale (double lowerBound, double upperBound, double stepSize)
void setAbstractScaleDraw (QwtAbstractScaleDraw *)
 Set a scale draw. More...
const QwtAbstractScaleDrawabstractScaleDraw () const
QwtAbstractScaleDrawabstractScaleDraw ()

Additional Inherited Members

- Signals inherited from QwtAbstractSlider
void valueChanged (double value)
 Notify a change of value. More...
void sliderPressed ()
void sliderReleased ()
void sliderMoved (double value)

Detailed Description

An analog clock.

#include <qwt_analog_clock.h>
QwtAnalogClock *clock = new QwtAnalogClock(...);
// update the clock every second
QTimer *timer = new QTimer(clock);
timer->connect(timer, SIGNAL(timeout()), clock, SLOT(setCurrentTime()));
The examples/dials example shows how to use QwtAnalogClock.

Member Enumeration Documentation

Hand type

See also
setHand(), hand()

Needle displaying the seconds.


Needle displaying the minutes.


Needle displaying the hours.


Number of needles.

Constructor & Destructor Documentation

QwtAnalogClock::QwtAnalogClock ( QWidget *  parent = NULL)


parentParent widget

Member Function Documentation

void QwtAnalogClock::drawHand ( QPainter *  painter,
Hand  hd,
const QPointF &  center,
double  radius,
double  direction,
QPalette::ColorGroup  cg 
) const

Draw a clock hand

hdSpecify the type of hand
centerCenter of the clock
radiusMaximum length for the hands
directionDirection of the hand in degrees, counter clockwise
void QwtAnalogClock::drawNeedle ( QPainter *  painter,
const QPointF &  center,
double  radius,
double  dir,
QPalette::ColorGroup  colorGroup 
) const

Draw the needle.

A clock has no single needle but three hands instead. drawNeedle() translates value() into directions for the hands and calls drawHand().

centerCenter of the clock
radiusMaximum length for the hands
dirDummy, not used.
See also

Reimplemented from QwtDial.

const QwtDialNeedle * QwtAnalogClock::hand ( Hand  hd) const
Clock hand
hdSpecifies the type of hand
See also
QwtDialNeedle * QwtAnalogClock::hand ( Hand  hd)
Clock hand
hdSpecifies the type of hand
See also
void QwtAnalogClock::setHand ( Hand  hand,
QwtDialNeedle needle 

Set a clock hand

handSpecifies the type of hand
See also
void QwtAnalogClock::setTime ( const QTime &  time)

Set a time

timeTime to display