Rechercher une page de manuel
QwtThermo
Langue: en
Version: 169140 (fedora - 05/07/09)
Section: 3 (Bibliothèques de fonctions)
Sommaire
- NAME
- SYNOPSIS
- Detailed Description
- Constructor & Destructor Documentation
- Member Function Documentation
- void QwtThermo::setOrientation (Qt::Orientation o, ScalePos s)
- void QwtThermo::setScalePosition (ScalePos s)
- QwtThermo::ScalePos QwtThermo::scalePosition () const
- void QwtThermo::setBorderWidth (int w)
- int QwtThermo::borderWidth () const
- void QwtThermo::setFillBrush (const QBrush & brush)
- const QBrush & QwtThermo::fillBrush () const
- void QwtThermo::setFillColor (const QColor & c)
- const QColor & QwtThermo::fillColor () const
- void QwtThermo::setAlarmBrush (const QBrush & brush)
- const QBrush & QwtThermo::alarmBrush () const
- void QwtThermo::setAlarmColor (const QColor & c)
- const QColor & QwtThermo::alarmColor () const
- void QwtThermo::setAlarmLevel (double v)
- double QwtThermo::alarmLevel () const
- void QwtThermo::setAlarmEnabled (bool tf)
- bool QwtThermo::alarmEnabled () const
- void QwtThermo::setPipeWidth (int w)
- int QwtThermo::pipeWidth () const
- void QwtThermo::setMaxValue (double v)
- double QwtThermo::maxValue () const
- void QwtThermo::setMinValue (double v)
- double QwtThermo::minValue () const
- double QwtThermo::value () const
- void QwtThermo::setRange (double vmin, double vmax, bool logarithmic = false)
- void QwtThermo::setMargin (int m)
- QSize QwtThermo::sizeHint () const [virtual]
- QSize QwtThermo::minimumSizeHint () const [virtual]
- void QwtThermo::setScaleDraw (QwtScaleDraw * scaleDraw)
- const QwtScaleDraw * QwtThermo::scaleDraw () const
- void QwtThermo::setValue (double val) [slot]
- void QwtThermo::draw (QPainter * p, const QRect & update_rect) [protected]
- void QwtThermo::drawThermo (QPainter * p) [protected]
- void QwtThermo::layoutThermo (bool update_geometry = true) [protected]
- void QwtThermo::scaleChange () [protected, virtual]
- void QwtThermo::fontChange (const QFont & oldFont) [protected, virtual]
- void QwtThermo::paintEvent (QPaintEvent * e) [protected, virtual]
- void QwtThermo::resizeEvent (QResizeEvent * e) [protected, virtual]
- QwtScaleDraw * QwtThermo::scaleDraw () [protected]
- Author
NAME
QwtThermo -SYNOPSIS
Inherits QwtAbstractScale.
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.
By default, the scale and range run over the same interval of values. QwtAbstractScale::setScale() changes the interval of the scale and allows easy conversion between physical units.
The example shows how to make the scale indicate in degrees Fahrenheit and to set the value in degrees Kelvin:
#include <qapplication.h> #include <qwt_thermo.h> double Kelvin2Fahrenheit(double kelvin) { // see http://en.wikipedia.org/wiki/Kelvin return 1.8*kelvin - 459.67; } int main(int argc, char **argv) { const double minKelvin = 0.0; const double maxKelvin = 500.0; QApplication a(argc, argv); QwtThermo t; t.setRange(minKelvin, maxKelvin); t.setScale(Kelvin2Fahrenheit(minKelvin), Kelvin2Fahrenheit(maxKelvin)); // set the value in Kelvin but the scale displays in Fahrenheit // 273.15 Kelvin = 0 Celsius = 32 Fahrenheit t.setValue(273.15); a.setMainWidget(&t); t.show(); return a.exec(); }
Todo
- Improve the support for a logarithmic range and/or scale.
Definition at line 69 of file qwt_thermo.h.
Public Types
enum ScalePos { NoScale, LeftScale, RightScale, TopScale, BottomScale, NoScale, LeftScale, RightScale, TopScale, BottomScale }
Public Slots
void setValue (double val)
Public Member Functions
QwtThermo (QWidget *parent=NULL)
virtual ~QwtThermo ()
void setOrientation (Qt::Orientation o, ScalePos s)
void setScalePosition (ScalePos s)
ScalePos scalePosition () const
void setBorderWidth (int w)
int borderWidth () const
void setFillBrush (const QBrush &b)
const QBrush & fillBrush () const
void setFillColor (const QColor &c)
const QColor & fillColor () const
void setAlarmBrush (const QBrush &b)
const QBrush & alarmBrush () const
void setAlarmColor (const QColor &c)
const QColor & alarmColor () const
void setAlarmLevel (double v)
double alarmLevel () const
void setAlarmEnabled (bool tf)
bool alarmEnabled () const
void setPipeWidth (int w)
int pipeWidth () const
void setMaxValue (double v)
double maxValue () const
void setMinValue (double v)
double minValue () const
double value () const
void setRange (double vmin, double vmax, bool lg=false)
void setMargin (int m)
virtual QSize sizeHint () const
virtual QSize minimumSizeHint () const
void setScaleDraw (QwtScaleDraw *)
const QwtScaleDraw * scaleDraw () const
Protected Member Functions
void draw (QPainter *p, const QRect &update_rect)
void drawThermo (QPainter *p)
void layoutThermo (bool update=true)
virtual void scaleChange ()
virtual void fontChange (const QFont &oldFont)
virtual void paintEvent (QPaintEvent *e)
virtual void resizeEvent (QResizeEvent *e)
QwtScaleDraw * scaleDraw ()
Constructor & Destructor Documentation
QwtThermo::QwtThermo (QWidget * parent = NULL) [explicit]
Constructor
Parameters:
- parent Parent widget
Definition at line 64 of file qwt_thermo.cpp.
QwtThermo::~QwtThermo () [virtual]
Destructor.
Definition at line 105 of file qwt_thermo.cpp.
Member Function Documentation
void QwtThermo::setOrientation (Qt::Orientation o, ScalePos s)
Set the thermometer orientation and the scale position.
The scale position NoScale disables the scale.
Parameters:
- o orientation. Possible values are Qt::Horizontal and Qt::Vertical. The default value is Qt::Vertical.
s Position of the scale. The default value is NoScale.
A valid combination of scale position and orientation is enforced:
- •
- a horizontal thermometer can have the scale positions TopScale, BottomScale or NoScale;
- •
- a vertical thermometer can have the scale positions LeftScale, RightScale or NoScale;
- •
- an invalid scale position will default to NoScale.
See also:
- QwtThermo::setScalePosition()
Definition at line 365 of file qwt_thermo.cpp.
References layoutThermo().
Referenced by setScalePosition().
void QwtThermo::setScalePosition (ScalePos s)
Change the scale position (and thermometer orientation).
Parameters:
- s Position of the scale.
A valid combination of scale position and orientation is enforced:
- •
- if the new scale position is LeftScale or RightScale, the scale orientation will become Qt::Vertical;
- •
- if the new scale position is BottomScale or TopScale, the scale orientation will become Qt::Horizontal;
- •
- if the new scale position is NoScale, the scale orientation will not change.
See also:
- QwtThermo::setOrientation()
Definition at line 428 of file qwt_thermo.cpp.
References setOrientation().
QwtThermo::ScalePos QwtThermo::scalePosition () const
Return the scale position.
Definition at line 439 of file qwt_thermo.cpp.
void QwtThermo::setBorderWidth (int w)
Set the border width of the pipe.
Definition at line 623 of file qwt_thermo.cpp.
References layoutThermo().
int QwtThermo::borderWidth () const
Return the border width of the thermometer pipe.
Definition at line 634 of file qwt_thermo.cpp.
void QwtThermo::setFillBrush (const QBrush & brush)
Change the brush of the liquid.
Parameters:
- brush New brush. The default brush is solid black.
Definition at line 674 of file qwt_thermo.cpp.
const QBrush & QwtThermo::fillBrush () const
Return the liquid brush.
Definition at line 681 of file qwt_thermo.cpp.
void QwtThermo::setFillColor (const QColor & c)
Change the color of the liquid.
Parameters:
- c New color. The default color is black.
Definition at line 690 of file qwt_thermo.cpp.
const QColor & QwtThermo::fillColor () const
Return the liquid color.
Definition at line 697 of file qwt_thermo.cpp.
void QwtThermo::setAlarmBrush (const QBrush & brush)
Specify the liquid brush above the alarm threshold.
Parameters:
- brush New brush. The default is solid white.
Definition at line 706 of file qwt_thermo.cpp.
const QBrush & QwtThermo::alarmBrush () const
Return the liquid brush above the alarm threshold.
Definition at line 713 of file qwt_thermo.cpp.
void QwtThermo::setAlarmColor (const QColor & c)
Specify the liquid color above the alarm threshold.
Parameters:
- c New color. The default is white.
Definition at line 722 of file qwt_thermo.cpp.
const QColor & QwtThermo::alarmColor () const
Return the liquid color above the alarm threshold.
Definition at line 729 of file qwt_thermo.cpp.
void QwtThermo::setAlarmLevel (double v)
Specify the alarm threshold.
Definition at line 735 of file qwt_thermo.cpp.
double QwtThermo::alarmLevel () const
Return the alarm threshold.
Definition at line 743 of file qwt_thermo.cpp.
void QwtThermo::setAlarmEnabled (bool tf)
Enable or disable the alarm threshold.
Parameters:
- tf true (disabled) or false (enabled)
Definition at line 788 of file qwt_thermo.cpp.
bool QwtThermo::alarmEnabled () const
Return if the alarm threshold is enabled or disabled.
Definition at line 795 of file qwt_thermo.cpp.
void QwtThermo::setPipeWidth (int w)
Change the width of the pipe.
Definition at line 749 of file qwt_thermo.cpp.
References layoutThermo().
int QwtThermo::pipeWidth () const
Return the width of the pipe.
Definition at line 759 of file qwt_thermo.cpp.
void QwtThermo::setMaxValue (double v)
Set the maximum value.
Definition at line 111 of file qwt_thermo.cpp.
References setRange().
double QwtThermo::maxValue () const
Return the maximum value.
Definition at line 117 of file qwt_thermo.cpp.
void QwtThermo::setMinValue (double v)
Set the minimum value.
Definition at line 123 of file qwt_thermo.cpp.
References setRange().
double QwtThermo::minValue () const
Return the minimum value.
Definition at line 129 of file qwt_thermo.cpp.
double QwtThermo::value () const
Return the value.
Definition at line 145 of file qwt_thermo.cpp.
void QwtThermo::setRange (double vmin, double vmax, bool logarithmic = false)
Set the range.
Parameters:
- vmin value corresponding lower or left end of the thermometer
vmax value corresponding to the upper or right end of the thermometer
logarithmic logarithmic mapping, true or false
Definition at line 645 of file qwt_thermo.cpp.
References QwtAbstractScale::autoScale(), layoutThermo(), QwtAbstractScale::rescale(), QwtAbstractScale::scaleEngine(), and QwtAbstractScale::setScaleEngine().
Referenced by setMaxValue(), and setMinValue().
void QwtThermo::setMargin (int m)
Specify the distance between the pipe's endpoints and the widget's border.
The margin is used to leave some space for the scale labels. If a large font is used, it is advisable to adjust the margins.
Parameters:
- m New Margin. The default values are 10 for horizontal orientation and 20 for vertical orientation.
Warning:
- The margin has no effect if the scale is disabled.
This function is a NOOP because margins are determined automatically.
Definition at line 779 of file qwt_thermo.cpp.
QSize QwtThermo::sizeHint () const [virtual]
Returns:
- the minimum size hint
See also:
- QwtThermo::minimumSizeHint
Definition at line 804 of file qwt_thermo.cpp.
References minimumSizeHint().
QSize QwtThermo::minimumSizeHint () const [virtual]
Return a minimum size hint.
Warning:
- The return value depends on the font and the scale.
See also:
- QwtThermo::sizeHint
Definition at line 814 of file qwt_thermo.cpp.
References QwtScaleDraw::extent(), QwtScaleDraw::minLength(), and scaleDraw().
Referenced by sizeHint().
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().
Definition at line 161 of file qwt_thermo.cpp.
References scaleDraw(), and QwtAbstractScale::setAbstractScaleDraw().
const QwtScaleDraw * QwtThermo::scaleDraw () const
Returns:
- the scale draw of the thermo
See also:
- setScaleDraw()
Definition at line 170 of file qwt_thermo.cpp.
References QwtAbstractScale::abstractScaleDraw().
Referenced by draw(), layoutThermo(), minimumSizeHint(), and setScaleDraw().
void QwtThermo::setValue (double val) [slot]
Set the current value.
Definition at line 135 of file qwt_thermo.cpp.
void QwtThermo::draw (QPainter * p, const QRect & update_rect) [protected]
Draw the whole QwtThermo.
Definition at line 202 of file qwt_thermo.cpp.
References QwtAbstractScaleDraw::draw(), drawThermo(), and scaleDraw().
Referenced by paintEvent().
void QwtThermo::drawThermo (QPainter * p) [protected]
Redraw the liquid in thermometer pipe.
Definition at line 459 of file qwt_thermo.cpp.
Referenced by draw().
void QwtThermo::layoutThermo (bool update_geometry = true) [protected]
Recalculate the QwtThermo geometry and layout based on the QwtThermo::rect() and the fonts.
Parameters:
- update_geometry notify the layout system and call update to redraw the scale
Definition at line 242 of file qwt_thermo.cpp.
References QwtScaleDraw::getBorderDistHint(), QwtScaleDraw::move(), scaleDraw(), QwtScaleDraw::setAlignment(), and QwtScaleDraw::setLength().
Referenced by fontChange(), resizeEvent(), scaleChange(), setBorderWidth(), setOrientation(), setPipeWidth(), and setRange().
void QwtThermo::scaleChange () [protected, virtual]
Notify a scale change.
Reimplemented from QwtAbstractScale.
Definition at line 452 of file qwt_thermo.cpp.
References layoutThermo().
void QwtThermo::fontChange (const QFont & oldFont) [protected, virtual]
Notify a font change.
Definition at line 445 of file qwt_thermo.cpp.
References layoutThermo().
void QwtThermo::paintEvent (QPaintEvent * e) [protected, virtual]
Qt paint event.
Definition at line 185 of file qwt_thermo.cpp.
References draw().
void QwtThermo::resizeEvent (QResizeEvent * e) [protected, virtual]
Qt resize event handler.
Definition at line 231 of file qwt_thermo.cpp.
References layoutThermo().
QwtScaleDraw * QwtThermo::scaleDraw () [protected]
Returns:
- the scale draw of the thermo
See also:
- setScaleDraw()
Definition at line 179 of file qwt_thermo.cpp.
References QwtAbstractScale::abstractScaleDraw().
Author
Generated automatically by Doxygen for Qwt User's Guide from the source code.
Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre