QwtKnob Class Reference

Inheritance diagram for QwtKnob:

Inheritance graph
[legend]
Collaboration diagram for QwtKnob:

Collaboration graph
[legend]

List of all members.


Detailed Description

The Knob Widget.

The QwtKnob widget imitates look and behaviour of a volume knob on a radio. It contains a scale around the knob which is set up automatically or can be configured manually (see QwtAbstractScale). Automatic scrolling is enabled when the user presses a mouse button on the scale. For a description of signals, slots and other members, see QwtAbstractSlider.

knob.png
See also:
QwtAbstractSlider and QwtAbstractScale for the descriptions of the inherited members.

Definition at line 34 of file qwt_knob.h.


Public Types

enum  Symbol {
  Line,
  Dot
}

Public Member Functions

 QwtKnob (QWidget *parent=NULL)
virtual ~QwtKnob ()
void setKnobWidth (int w)
int knobWidth () const
void setTotalAngle (double angle)
double totalAngle () const
void setBorderWidth (int bw)
int borderWidth () const
void setSymbol (Symbol)
Symbol symbol () const
virtual QSize sizeHint () const
virtual QSize minimumSizeHint () const
void setScaleDraw (QwtRoundScaleDraw *)
const QwtRoundScaleDrawscaleDraw () const
QwtRoundScaleDrawscaleDraw ()

Protected Member Functions

virtual void paintEvent (QPaintEvent *e)
virtual void resizeEvent (QResizeEvent *e)
void draw (QPainter *p, const QRect &ur)
void drawKnob (QPainter *p, const QRect &r)
void drawMarker (QPainter *p, double arc, const QColor &c)

Member Enumeration Documentation

Symbol

See also:
QwtKnob::QwtKnob()

Definition at line 49 of file qwt_knob.h.


Constructor & Destructor Documentation

QwtKnob::QwtKnob ( QWidget *  parent = NULL  )  [explicit]

Constructor

Parameters:
parent Parent widget

Definition at line 59 of file qwt_knob.cpp.

QwtKnob::~QwtKnob (  )  [virtual]

Destructor.

Definition at line 99 of file qwt_knob.cpp.


Member Function Documentation

void QwtKnob::setKnobWidth ( int  w  ) 

Change the knob's width.

The specified width must be >= 5, or it will be clipped.

Parameters:
w New width

Definition at line 453 of file qwt_knob.cpp.

int QwtKnob::knobWidth (  )  const

Return the width of the knob.

Definition at line 460 of file qwt_knob.cpp.

void QwtKnob::setTotalAngle ( double  angle  ) 

Set the total angle by which the knob can be turned.

Parameters:
angle Angle in degrees.
The default angle is 270 degrees. It is possible to specify an angle of more than 360 degrees so that the knob can be turned several times around its axis.

Definition at line 134 of file qwt_knob.cpp.

References scaleDraw(), and QwtRoundScaleDraw::setAngleRange().

Referenced by setScaleDraw().

double QwtKnob::totalAngle (  )  const

Return the total angle.

Definition at line 147 of file qwt_knob.cpp.

void QwtKnob::setBorderWidth ( int  bw  ) 

Set the knob's border width.

Parameters:
bw new border width

Definition at line 469 of file qwt_knob.cpp.

int QwtKnob::borderWidth (  )  const

Return the border width.

Definition at line 476 of file qwt_knob.cpp.

void QwtKnob::setSymbol ( QwtKnob::Symbol  s  ) 

Set the symbol of the knob.

See also:
symbol()

Definition at line 108 of file qwt_knob.cpp.

QwtKnob::Symbol QwtKnob::symbol (  )  const

Returns:
symbol of the knob
See also:
setSymbol()

Definition at line 121 of file qwt_knob.cpp.

QSize QwtKnob::sizeHint (  )  const [virtual]

Returns:
minimumSizeHint()

Definition at line 527 of file qwt_knob.cpp.

References minimumSizeHint().

QSize QwtKnob::minimumSizeHint (  )  const [virtual]

Return a minimum size hint.

Warning:
The return value of QwtKnob::minimumSizeHint() depends on the font and the scale.

Definition at line 537 of file qwt_knob.cpp.

References QwtRoundScaleDraw::extent(), and scaleDraw().

Referenced by sizeHint().

void QwtKnob::setScaleDraw ( QwtRoundScaleDraw scaleDraw  ) 

Change the scale draw of the knob

For changing the labels of the scales, it is necessary to derive from QwtRoundScaleDraw and overload QwtRoundScaleDraw::label().

See also:
scaleDraw()

Definition at line 161 of file qwt_knob.cpp.

References QwtAbstractScale::setAbstractScaleDraw(), and setTotalAngle().

const QwtRoundScaleDraw * QwtKnob::scaleDraw (  )  const

Returns:
the scale draw of the knob
See also:
setScaleDraw()

Definition at line 171 of file qwt_knob.cpp.

References QwtAbstractScale::abstractScaleDraw().

Referenced by draw(), minimumSizeHint(), and setTotalAngle().

QwtRoundScaleDraw * QwtKnob::scaleDraw (  ) 

Returns:
the scale draw of the knob
See also:
setScaleDraw()

Definition at line 180 of file qwt_knob.cpp.

References QwtAbstractScale::abstractScaleDraw().

void QwtKnob::paintEvent ( QPaintEvent *  e  )  [protected, virtual]

Repaint the knob.

Definition at line 363 of file qwt_knob.cpp.

References draw().

void QwtKnob::resizeEvent ( QResizeEvent *  e  )  [protected, virtual]

Qt Resize Event.

Definition at line 332 of file qwt_knob.cpp.

void QwtKnob::draw ( QPainter *  p,
const QRect &  ur 
) [protected]

Repaint the knob.

Definition at line 383 of file qwt_knob.cpp.

References QwtAbstractScaleDraw::draw(), drawKnob(), and scaleDraw().

Referenced by paintEvent().

void QwtKnob::drawKnob ( QPainter *  painter,
const QRect &  r 
) [protected]

Draw the knob.

Parameters:
painter painter
r Bounding rectangle of the knob (without scale)

Definition at line 190 of file qwt_knob.cpp.

References drawMarker(), and QwtAbstractSlider::isValid().

Referenced by draw().

void QwtKnob::drawMarker ( QPainter *  p,
double  arc,
const QColor &  c 
) [protected]

Draw the marker at the knob's front.

Parameters:
p Painter
arc Angle of the marker
c Marker color

Definition at line 406 of file qwt_knob.cpp.

Referenced by drawKnob().


Generated on Sat May 31 11:11:13 2008 for Qwt User's Guide by  doxygen 1.5.5