QwtAnalogClock Class Reference

Inheritance diagram for QwtAnalogClock:

Inheritance graph
[legend]
Collaboration diagram for QwtAnalogClock:

Collaboration graph
[legend]
List of all members.

Detailed Description

An analog clock.

analogclock.png

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.

Definition at line 45 of file qwt_analog_clock.h.

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 QwtDialNeedlehand (Hand) const
QwtDialNeedlehand (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


Member Enumeration Documentation

enum QwtAnalogClock::Hand
 

Hand type

See also:
setHand(), hand()

Definition at line 55 of file qwt_analog_clock.h.


Constructor & Destructor Documentation

QwtAnalogClock::QwtAnalogClock QWidget *  parent = NULL  )  [explicit]
 

Constructor

Parameters:
parent Parent widget

Definition at line 16 of file qwt_analog_clock.cpp.

QwtAnalogClock::~QwtAnalogClock  )  [virtual]
 

Destructor.

Definition at line 82 of file qwt_analog_clock.cpp.


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

Definition at line 220 of file qwt_analog_clock.cpp.

References QwtDialNeedle::draw(), hand(), and QwtDial::needle().

Referenced by drawNeedle().

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:
QwtAnalogClock::drawHand()

Reimplemented from QwtDial.

Definition at line 191 of file qwt_analog_clock.cpp.

References drawHand(), QwtAbstractSlider::isValid(), QwtDial::origin(), and QwtDoubleRange::value().

QwtDialNeedle * QwtAnalogClock::hand Hand  hd  ) 
 

Returns:
Clock hand
Parameters:
hd Specifies the type of hand
See also:
QwtAnalogClock::setHand

Definition at line 118 of file qwt_analog_clock.cpp.

const QwtDialNeedle * QwtAnalogClock::hand Hand  hd  )  const
 

Returns:
Clock hand
Parameters:
hd Specifies the type of hand
See also:
QwtAnalogClock::setHand

Definition at line 131 of file qwt_analog_clock.cpp.

Referenced by drawHand().

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

Find the scale label for a given value

Parameters:
value Value
Returns:
Label

Reimplemented from QwtDial.

Definition at line 168 of file qwt_analog_clock.cpp.

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.

Definition at line 142 of file qwt_analog_clock.cpp.

References setTime().

void QwtAnalogClock::setHand Hand  hand,
QwtDialNeedle needle
[virtual]
 

Set a clockhand

Parameters:
hand Specifies the type of hand
needle Hand
See also:
QwtAnalogClock::hand()

Definition at line 104 of file qwt_analog_clock.cpp.

References QwtDial::needle().

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

Set a time

Parameters:
time Time to display

Definition at line 151 of file qwt_analog_clock.cpp.

References QwtAbstractSlider::setValue().

Referenced by setCurrentTime().


Generated on Mon Feb 26 21:22:59 2007 for Qwt User's Guide by  doxygen 1.4.6