Qwt User's Guide  6.1.6
QwtThermo Class Reference

The Thermometer Widget. More...

#include <qwt_thermo.h>

Inheritance diagram for QwtThermo:

Public Types

enum  ScalePosition { NoScale, LeadingScale, TrailingScale }
 
enum  OriginMode { OriginMinimum, OriginMaximum, OriginCustom }
 

Public Slots

virtual void setValue (double)
 

Public Member Functions

 QwtThermo (QWidget *parent=NULL)
 
virtual ~QwtThermo ()
 Destructor.
 
void setOrientation (Qt::Orientation)
 Set the orientation. More...
 
Qt::Orientation orientation () const
 
void setScalePosition (ScalePosition)
 Change the position of the scale. More...
 
ScalePosition scalePosition () const
 
void setSpacing (int)
 Change the spacing between pipe and scale. More...
 
int spacing () const
 
void setBorderWidth (int)
 
int borderWidth () const
 
void setOriginMode (OriginMode)
 Change how the origin is determined. More...
 
OriginMode originMode () const
 
void setOrigin (double)
 Specifies the custom origin. More...
 
double origin () const
 
void setFillBrush (const QBrush &)
 Change the brush of the liquid. More...
 
QBrush fillBrush () const
 
void setAlarmBrush (const QBrush &)
 Specify the liquid brush above the alarm threshold. More...
 
QBrush alarmBrush () const
 
void setAlarmLevel (double)
 
double alarmLevel () const
 
void setAlarmEnabled (bool)
 Enable or disable the alarm threshold. More...
 
bool alarmEnabled () const
 
void setColorMap (QwtColorMap *)
 Assign a color map for the fill color. More...
 
QwtColorMapcolorMap ()
 
const QwtColorMapcolorMap () const
 
void setPipeWidth (int)
 
int pipeWidth () const
 
void setRangeFlags (QwtInterval::BorderFlags)
 Exclude/Include min/max values. More...
 
QwtInterval::BorderFlags rangeFlags () const
 
double value () const
 Return the value.
 
virtual QSize sizeHint () const
 
virtual QSize minimumSizeHint () const
 
void setScaleDraw (QwtScaleDraw *)
 Set a scale draw. More...
 
const QwtScaleDrawscaleDraw () const
 
- Public Member Functions inherited from QwtAbstractScale
 QwtAbstractScale (QWidget *parent=NULL)
 
virtual ~QwtAbstractScale ()
 Destructor.
 
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 drawLiquid (QPainter *, const QRect &) const
 
virtual void scaleChange ()
 Notify a scale change.
 
virtual void paintEvent (QPaintEvent *)
 
virtual void resizeEvent (QResizeEvent *)
 
virtual void changeEvent (QEvent *)
 
QwtScaleDrawscaleDraw ()
 
QRect pipeRect () const
 
QRect fillRect (const QRect &) const
 Calculate the filled rectangle of the pipe. More...
 
QRect alarmRect (const QRect &) const
 Calculate the alarm rectangle of the pipe. More...
 
- 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 ()
 

Detailed Description

The Thermometer Widget.

QwtThermo is a widget which displays a value in an interval. It supports:

  • a horizontal or vertical layout;
  • a range;
  • a scale;
  • an alarm level.

The fill colors might be calculated from an optional color map If no color map has been assigned QwtThermo uses the following colors/brushes from the widget palette:

  • QPalette::Base Background of the pipe
  • QPalette::ButtonText Fill brush below the alarm level
  • QPalette::Highlight Fill brush for the values above the alarm level
  • QPalette::WindowText For the axis of the scale
  • QPalette::Text For the labels of the scale

Member Enumeration Documentation

◆ OriginMode

Origin mode. This property specifies where the beginning of the liquid is placed.

See also
setOriginMode(), setOrigin()
Enumerator
OriginMinimum 

The origin is the minimum of the scale.

OriginMaximum 

The origin is the maximum of the scale.

OriginCustom 

The origin is specified using the origin() property.

◆ ScalePosition

Position of the scale

See also
setScalePosition(), setOrientation()
Enumerator
NoScale 

The slider has no scale.

LeadingScale 

The scale is right of a vertical or below of a horizontal slider.

TrailingScale 

The scale is left of a vertical or above of a horizontal slider.

Constructor & Destructor Documentation

◆ QwtThermo()

QwtThermo::QwtThermo ( QWidget *  parent = NULL)
explicit

Constructor

Parameters
parentParent widget

Member Function Documentation

◆ alarmBrush()

QBrush QwtThermo::alarmBrush ( ) const
Returns
Liquid brush ( QPalette::Highlight ) above the alarm threshold.
See also
setAlarmBrush(), QWidget::palette()
Warning
The alarm threshold has no effect, when a color map has been assigned

◆ alarmEnabled()

bool QwtThermo::alarmEnabled ( ) const
Returns
True, when the alarm threshold is enabled.
Warning
The alarm threshold has no effect, when a color map has been assigned

◆ alarmLevel()

double QwtThermo::alarmLevel ( ) const
Returns
Alarm threshold.
See also
setAlarmLevel()
Warning
The alarm threshold has no effect, when a color map has been assigned

◆ alarmRect()

QRect QwtThermo::alarmRect ( const QRect &  fillRect) const
protected

Calculate the alarm rectangle of the pipe.

Parameters
fillRectFilled rectangle in the pipe
Returns
Rectangle to be filled with the alarm brush
See also
pipeRect(), fillRect(), alarmLevel(), alarmBrush()

◆ borderWidth()

int QwtThermo::borderWidth ( ) const
Returns
Border width of the thermometer pipe.
See also
setBorderWidth()

◆ changeEvent()

void QwtThermo::changeEvent ( QEvent *  event)
protectedvirtual

Qt change event handler

Parameters
eventEvent

◆ colorMap() [1/2]

QwtColorMap * QwtThermo::colorMap ( )
Returns
Color map for the fill color
Warning
The alarm threshold has no effect, when a color map has been assigned

◆ colorMap() [2/2]

const QwtColorMap * QwtThermo::colorMap ( ) const
Returns
Color map for the fill color
Warning
The alarm threshold has no effect, when a color map has been assigned

◆ drawLiquid()

void QwtThermo::drawLiquid ( QPainter *  painter,
const QRect &  pipeRect 
) const
protectedvirtual

Redraw the liquid in thermometer pipe.

Parameters
painterPainter
pipeRectBounding rectangle of the pipe without borders

◆ fillBrush()

QBrush QwtThermo::fillBrush ( ) const
Returns
Liquid ( QPalette::ButtonText ) brush.
See also
setFillBrush(), QWidget::palette()

◆ fillRect()

QRect QwtThermo::fillRect ( const QRect &  pipeRect) const
protected

Calculate the filled rectangle of the pipe.

Parameters
pipeRectRectangle of the pipe
Returns
Rectangle to be filled ( fill and alarm brush )
See also
pipeRect(), alarmRect()

◆ minimumSizeHint()

QSize QwtThermo::minimumSizeHint ( ) const
virtual
Returns
Minimum size hint
Warning
The return value depends on the font and the scale.
See also
sizeHint()

◆ orientation()

Qt::Orientation QwtThermo::orientation ( ) const
Returns
Orientation
See also
setOrientation()

◆ origin()

double QwtThermo::origin ( ) const
Returns
Origin of the thermo, when OriginCustom is enabled
See also
setOrigin(), setOriginMode(), originMode()

◆ originMode()

QwtThermo::OriginMode QwtThermo::originMode ( ) const
Returns
Mode, how the origin is determined.
See also
setOriginMode(), serOrigin(), origin()

◆ paintEvent()

void QwtThermo::paintEvent ( QPaintEvent *  event)
protectedvirtual

Paint event handler

Parameters
eventPaint event

◆ pipeRect()

QRect QwtThermo::pipeRect ( ) const
protected
Returns
Bounding rectangle of the pipe ( without borders ) in widget coordinates

◆ pipeWidth()

int QwtThermo::pipeWidth ( ) const
Returns
Width of the pipe.
See also
setPipeWidth()

◆ rangeFlags()

QwtInterval::BorderFlags QwtThermo::rangeFlags ( ) const
Returns
Range flags
See also
setRangeFlags()

◆ resizeEvent()

void QwtThermo::resizeEvent ( QResizeEvent *  event)
protectedvirtual

Resize event handler

Parameters
eventResize event

◆ scaleDraw() [1/2]

QwtScaleDraw * QwtThermo::scaleDraw ( )
protected
Returns
the scale draw of the thermo
See also
setScaleDraw()

◆ scaleDraw() [2/2]

const QwtScaleDraw * QwtThermo::scaleDraw ( ) const
Returns
the scale draw of the thermo
See also
setScaleDraw()

◆ scalePosition()

QwtThermo::ScalePosition QwtThermo::scalePosition ( ) const
Returns
Scale position.
See also
setScalePosition()

◆ setAlarmBrush()

void QwtThermo::setAlarmBrush ( const QBrush &  brush)

Specify the liquid brush above the alarm threshold.

Changes the QPalette::Highlight brush of the palette.

Parameters
brushNew brush.
See also
alarmBrush(), QWidget::setPalette()
Warning
The alarm threshold has no effect, when a color map has been assigned

◆ setAlarmEnabled()

void QwtThermo::setAlarmEnabled ( bool  on)

Enable or disable the alarm threshold.

Parameters
ontrue (disabled) or false (enabled)
Warning
The alarm threshold has no effect, when a color map has been assigned

◆ setAlarmLevel()

void QwtThermo::setAlarmLevel ( double  level)

Specify the alarm threshold.

Parameters
levelAlarm threshold
See also
alarmLevel()
Warning
The alarm threshold has no effect, when a color map has been assigned

◆ setBorderWidth()

void QwtThermo::setBorderWidth ( int  width)

Set the border width of the pipe.

Parameters
widthBorder width
See also
borderWidth()

◆ setColorMap()

void QwtThermo::setColorMap ( QwtColorMap colorMap)

Assign a color map for the fill color.

Parameters
colorMapColor map
Warning
The alarm threshold has no effect, when a color map has been assigned

◆ setFillBrush()

void QwtThermo::setFillBrush ( const QBrush &  brush)

Change the brush of the liquid.

Changes the QPalette::ButtonText brush of the palette.

Parameters
brushNew brush.
See also
fillBrush(), QWidget::setPalette()

◆ setOrientation()

void QwtThermo::setOrientation ( Qt::Orientation  orientation)

Set the orientation.

Parameters
orientationAllowed values are Qt::Horizontal and Qt::Vertical.
See also
orientation(), scalePosition()

◆ setOrigin()

void QwtThermo::setOrigin ( double  origin)

Specifies the custom origin.

If originMode is set to OriginCustom this property controls where the liquid starts.

Parameters
originNew origin level
See also
setOriginMode(), originMode(), origin()

◆ setOriginMode()

void QwtThermo::setOriginMode ( OriginMode  m)

Change how the origin is determined.

See also
originMode(), serOrigin(), origin()

◆ setPipeWidth()

void QwtThermo::setPipeWidth ( int  width)

Change the width of the pipe.

Parameters
widthWidth of the pipe
See also
pipeWidth()

◆ setRangeFlags()

void QwtThermo::setRangeFlags ( QwtInterval::BorderFlags  flags)

Exclude/Include min/max values.

According to the flags minValue() and maxValue() are included/excluded from the pipe. In case of an excluded value the corresponding tick is painted 1 pixel off of the pipeRect().

F.e. when a minimum of 0.0 has to be displayed as an empty pipe the minValue() needs to be excluded.

Parameters
flagsRange flags
See also
rangeFlags()

◆ setScaleDraw()

void QwtThermo::setScaleDraw ( QwtScaleDraw scaleDraw)

Set a scale draw.

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

Parameters
scaleDrawScaleDraw object, that has to be created with new and will be deleted in ~QwtThermo() or the next call of setScaleDraw().

◆ setScalePosition()

void QwtThermo::setScalePosition ( ScalePosition  scalePosition)

Change the position of the scale.

Parameters
scalePositionPosition of the scale.
See also
ScalePosition, scalePosition()

◆ setSpacing()

void QwtThermo::setSpacing ( int  spacing)

Change the spacing between pipe and scale.

A spacing of 0 means, that the backbone of the scale is below the pipe.

The default setting is 3 pixels.

Parameters
spacingNumber of pixels
See also
spacing();

◆ setValue

void QwtThermo::setValue ( double  value)
virtualslot

Set the current value.

Parameters
valueNew Value
See also
value()

◆ sizeHint()

QSize QwtThermo::sizeHint ( ) const
virtual
Returns
the minimum size hint
See also
minimumSizeHint()

◆ spacing()

int QwtThermo::spacing ( ) const
Returns
Number of pixels between pipe and scale
See also
setSpacing()