Qwt User's Guide: QwtAnalogClock Class Reference

# QwtAnalogClock Class Reference

An analog clock. More...

`#include <qwt_analog_clock.h>`

Inheritance diagram for QwtAnalogClock:
[legend]

List of all members.

## Public Types
enum | Hand { SecondHand, MinuteHand, HourHand, NHands }
## Public Slots
void | setCurrentTime ()
void | setTime (const QTime &=QTime::currentTime())
## Public Member Functions
| QwtAnalogClock (QWidget *parent=NULL)
virtual | ~QwtAnalogClock ()
virtual void | setHand (Hand, QwtDialNeedle *)
const QwtDialNeedle * | hand (Hand) const
QwtDialNeedle * | hand (Hand)
## Protected Member Functions
virtual QwtText | scaleLabel (double) const
virtual void | drawNeedle (QPainter *, const QPoint &, int radius, double direction, QPalette::ColorGroup) const
virtual void | drawHand (QPainter *, Hand, const QPoint &, int radius, double direction, QPalette::ColorGroup) const

## Detailed Description

An analog clock.

Example

      #include <qwt_analog_clock.h>

        QwtAnalogClock *clock = new QwtAnalogClock(...);
        clock->scaleDraw()->setPenWidth(3);
        clock->setLineWidth(6);
        clock->setFrameShadow(QwtDial::Sunken);
        clock->setTime();

        // update the clock every second
        QTimer *timer = new QTimer(clock);
        timer->connect(timer, SIGNAL(timeout()), clock, SLOT(setCurrentTime()));
        timer->start(1000);

Qwt is missing a set of good looking hands. Contributions are very welcome.

Note:
  The examples/dials example shows how to use QwtAnalogClock.

## Member Enumeration Documentation

enum QwtAnalogClock::Hand

Hand type

See also:
  setHand(), hand()

## Constructor & Destructor Documentation

QwtAnalogClock::QwtAnalogClock | ( | QWidget * | parent = `NULL` | ) | `[explicit]`

Constructor

Parameters:

  | parent | Parent widget

QwtAnalogClock::~QwtAnalogClock | ( |  | ) | `[virtual]`

Destructor.

## Member Function Documentation

void QwtAnalogClock::drawHand | ( | QPainter * | painter,
|  | Hand | hd,
|  | const QPoint & | center,
|  | int | radius,
|  | double | direction,
|  | QPalette::ColorGroup | cg |
| ) |  |  | const`[protected, virtual]`

Draw a clock hand

Parameters:

  | painter | Painter
  | hd | Specify the type of hand
  | center | Center of the clock
  | radius | Maximum length for the hands
  | direction | Direction of the hand in degrees, counter clockwise
  | cg | ColorGroup

void QwtAnalogClock::drawNeedle | ( | QPainter * | painter,
|  | const QPoint & | center,
|  | int | radius,
|  | double | direction,
|  | QPalette::ColorGroup | cg |
| ) |  |  | const`[protected, virtual]`

Draw the needle.

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

Parameters:

  | painter | Painter
  | center | Center of the clock
  | radius | Maximum length for the hands
  | direction | Dummy, not used.
  | cg | ColorGroup

See also:
  drawHand()

Reimplemented from QwtDial.

QwtDialNeedle * QwtAnalogClock::hand | ( | Hand | hd | ) |

Returns:
  Clock hand

Parameters:

  | hd | Specifies the type of hand

See also:
  setHand()

const QwtDialNeedle * QwtAnalogClock::hand | ( | Hand | hd | ) | const

Returns:
  Clock hand

Parameters:

  | hd | Specifies the type of hand

See also:
  setHand()

QwtText QwtAnalogClock::scaleLabel | ( | double | value | ) | const`[protected, virtual]`

Find the scale label for a given value

Parameters:

  | value | Value

Returns:
  Label

Reimplemented from QwtDial.

void QwtAnalogClock::setCurrentTime | ( |  | ) | `[slot]`

Set the current time.

This is the same as QwtAnalogClock::setTime(), but Qt < 3.0 can't handle default parameters for slots.

void QwtAnalogClock::setHand | ( | Hand | hand,
|  | QwtDialNeedle * | needle |
| ) |  |  | `[virtual]`

Set a clockhand

Parameters:

  | hand | Specifies the type of hand
  | needle | Hand

See also:
  hand()

void QwtAnalogClock::setTime | ( | const QTime & | time = `QTime::currentTime()` | ) | `[slot]`

Set a time

Parameters:

  | time | Time to display