---
name: "QwtThermo"
section: "3"
platform: "linux"
package: "libqwt-doc"
version: "6.1.4-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/QwtThermo"
---

# QwtThermo(3)

The Thermometer Widget.

## NAME

QwtThermo - The Thermometer Widget.

## SYNOPSIS

`#include <qwt_thermo.h>`

Inherits **QwtAbstractScale**.

### 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.  Qt::Orientation **orientation** () const\
 void **setScalePosition** (**ScalePosition**)\
 Change the position of the scale.  **ScalePosition** **scalePosition** () const\
 void **setSpacing** (int)\
 Change the spacing between pipe and scale.  int **spacing** () const\
 void **setBorderWidth** (int)\
 int **borderWidth** () const\
 void **setOriginMode** (**OriginMode**)\
 Change how the origin is determined.  **OriginMode** **originMode** () const\
 void **setOrigin** (double)\
 Specifies the custom origin.  double **origin** () const\
 void **setFillBrush** (const QBrush &)\
 Change the brush of the liquid.  QBrush **fillBrush** () const\
 void **setAlarmBrush** (const QBrush &)\
 Specify the liquid brush above the alarm threshold.  QBrush **alarmBrush** () const\
 void **setAlarmLevel** (double)\
 double **alarmLevel** () const\
 void **setAlarmEnabled** (bool)\
 Enable or disable the alarm threshold.  bool **alarmEnabled** () const\
 void **setColorMap** (**QwtColorMap** \*)\
 Assign a color map for the fill color.  **QwtColorMap** \* **colorMap** ()\
 const **QwtColorMap** \* **colorMap** () const\
 void **setPipeWidth** (int)\
 int **pipeWidth** () const\
 void **setRangeFlags** (**QwtInterval::BorderFlags**)\
 Exclude/Include min/max values.  **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.  const **QwtScaleDraw** \* **scaleDraw** () 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 \*)\
 **QwtScaleDraw** \* **scaleDraw** ()\
 QRect **pipeRect** () const\
 QRect **fillRect** (const QRect &) const\
 Calculate the filled rectangle of the pipe.  QRect **alarmRect** (const QRect &) const\
 Calculate the alarm rectangle of the pipe.

## 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

### enum QwtThermo::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.*

### enum QwtThermo::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 (QWidget \* parent = `NULL`)` [explicit]`

*Constructor*

**Parameters:**

*parent Parent widget*

## Member Function Documentation

### 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*

### 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*

### double QwtThermo::alarmLevel () const

**Returns:**

*Alarm threshold.*

**See also:**

**setAlarmLevel()**

**Warning:**

*The alarm threshold has no effect, when a color map has been assigned*

### QRect QwtThermo::alarmRect (const QRect & fillRect) const` [protected]`

*Calculate the alarm rectangle of the pipe.*

**Parameters:**

*fillRect Filled rectangle in the pipe*

**Returns:**

*Rectangle to be filled with the alarm brush*

**See also:**

**pipeRect()***,* **fillRect()***,* **alarmLevel()***,* **alarmBrush()**

### int QwtThermo::borderWidth () const

**Returns:**

*Border width of the thermometer pipe.*

**See also:**

**setBorderWidth()**

### void QwtThermo::changeEvent (QEvent \* event)` [protected]`, ` [virtual]`

*Qt change event handler*

**Parameters:**

*event Event*

### QwtColorMap \* QwtThermo::colorMap ()

**Returns:**

*Color map for the fill color*

**Warning:**

*The alarm threshold has no effect, when a color map has been assigned*

### 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*

### void QwtThermo::drawLiquid (QPainter \* painter, const QRect & pipeRect) const` [protected]`, ` [virtual]`

*Redraw the liquid in thermometer pipe.*

**Parameters:**

*painter Painter* \
 *pipeRect Bounding rectangle of the pipe without borders*

### QBrush QwtThermo::fillBrush () const

**Returns:**

*Liquid ( QPalette::ButtonText ) brush.*

**See also:**

**setFillBrush()***, QWidget::palette()*

### QRect QwtThermo::fillRect (const QRect & pipeRect) const` [protected]`

*Calculate the filled rectangle of the pipe.*

**Parameters:**

*pipeRect Rectangle of the pipe*

**Returns:**

*Rectangle to be filled ( fill and alarm brush )*

**See also:**

**pipeRect()***,* **alarmRect()**

### QSize QwtThermo::minimumSizeHint () const` [virtual]`

**Returns:**

*Minimum size hint*

**Warning:**

*The return value depends on the font and the scale.*

**See also:**

**sizeHint()**

### Qt::Orientation QwtThermo::orientation () const

**Returns:**

*Orientation*

**See also:**

**setOrientation()**

### double QwtThermo::origin () const

**Returns:**

*Origin of the thermo, when OriginCustom is enabled*

**See also:**

**setOrigin()***,* **setOriginMode()***,* **originMode()**

### QwtThermo::OriginMode QwtThermo::originMode () const

**Returns:**

*Mode, how the origin is determined.*

**See also:**

**setOriginMode()***, serOrigin(),* **origin()**

### void QwtThermo::paintEvent (QPaintEvent \* event)` [protected]`, ` [virtual]`

*Paint event handler*

**Parameters:**

*event Paint event*

### QRect QwtThermo::pipeRect () const` [protected]`

**Returns:**

*Bounding rectangle of the pipe ( without borders ) in widget coordinates*

### int QwtThermo::pipeWidth () const

**Returns:**

*Width of the pipe.*

**See also:**

**setPipeWidth()**

### QwtInterval::BorderFlags QwtThermo::rangeFlags () const

**Returns:**

*Range flags*

**See also:**

**setRangeFlags()**

### void QwtThermo::resizeEvent (QResizeEvent \* event)` [protected]`, ` [virtual]`

*Resize event handler*

**Parameters:**

*event Resize event*

### const QwtScaleDraw \* QwtThermo::scaleDraw () const

**Returns:**

*the scale draw of the thermo*

**See also:**

**setScaleDraw()**

### QwtScaleDraw \* QwtThermo::scaleDraw ()` [protected]`

**Returns:**

*the scale draw of the thermo*

**See also:**

**setScaleDraw()**

### QwtThermo::ScalePosition QwtThermo::scalePosition () const

**Returns:**

*Scale position.*

**See also:**

**setScalePosition()**

### void QwtThermo::setAlarmBrush (const QBrush & brush)

*Specify the liquid brush above the alarm threshold. Changes the QPalette::Highlight brush of the palette.*

**Parameters:**

*brush New brush.*

**See also:**

**alarmBrush()***, QWidget::setPalette()*

**Warning:**

*The alarm threshold has no effect, when a color map has been assigned*

### void QwtThermo::setAlarmEnabled (bool on)

*Enable or disable the alarm threshold.*

**Parameters:**

*on true (disabled) or false (enabled)*

**Warning:**

*The alarm threshold has no effect, when a color map has been assigned*

### void QwtThermo::setAlarmLevel (double level)

*Specify the alarm threshold.*

**Parameters:**

*level Alarm threshold*

**See also:**

**alarmLevel()**

**Warning:**

*The alarm threshold has no effect, when a color map has been assigned*

### void QwtThermo::setBorderWidth (int width)

*Set the border width of the pipe.*

**Parameters:**

*width Border width*

**See also:**

**borderWidth()**

### void QwtThermo::setColorMap (QwtColorMap \* colorMap)

*Assign a color map for the fill color.*

**Parameters:**

*colorMap Color map*

**Warning:**

*The alarm threshold has no effect, when a color map has been assigned*

### void QwtThermo::setFillBrush (const QBrush & brush)

*Change the brush of the liquid. Changes the QPalette::ButtonText brush of the palette.*

**Parameters:**

*brush New brush.*

**See also:**

**fillBrush()***, QWidget::setPalette()*

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

*Set the orientation.*

**Parameters:**

*orientation Allowed values are Qt::Horizontal and Qt::Vertical.*

**See also:**

**orientation()***,* **scalePosition()**

### void QwtThermo::setOrigin (double origin)

*Specifies the custom origin. If originMode is set to OriginCustom this property controls where the liquid starts.*

**Parameters:**

*origin New origin level*

**See also:**

**setOriginMode()***,* **originMode()***,* **origin()**

### void QwtThermo::setOriginMode (OriginMode m)

*Change how the origin is determined.*

**See also:**

**originMode()***, serOrigin(),* **origin()**

### void QwtThermo::setPipeWidth (int width)

*Change the width of the pipe.*

**Parameters:**

*width Width of the pipe*

**See also:**

**pipeWidth()**

### 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:**

*flags Range flags*

**See also:**

**rangeFlags()**

### 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:**

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

### void QwtThermo::setScalePosition (ScalePosition scalePosition)

*Change the position of the scale.*

**Parameters:**

*scalePosition Position of the scale.*

**See also:**

**ScalePosition***,* **scalePosition()**

### 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:**

*spacing Number of pixels*

**See also:**

**spacing()***;*

### void QwtThermo::setValue (double value)` [virtual]`, ` [slot]`

*Set the current value.*

**Parameters:**

*value New Value*

**See also:**

**value()**

### QSize QwtThermo::sizeHint () const` [virtual]`

**Returns:**

*the minimum size hint*

**See also:**

**minimumSizeHint()**

### int QwtThermo::spacing () const

**Returns:**

*Number of pixels between pipe and scale*

**See also:**

**setSpacing()**

## Author

*Generated automatically by Doxygen for Qwt User's Guide from the source code.*
