Eneboo - Documentación para desarrolladores
|
The Thermometer Widget. Más...
#include <qwt_thermo.h>
Clases | |
class | PrivateData |
Tipos públicos | |
enum | ScalePos { NoScale, LeftScale, RightScale, TopScale, BottomScale } |
Slots públicos | |
void | setValue (double val) |
Set the current value. | |
Métodos públicos | |
QwtThermo (QWidget *parent=NULL) | |
QwtThermo (QWidget *parent, const char *name) | |
virtual | ~QwtThermo () |
Destructor. | |
void | setOrientation (Qt::Orientation o, ScalePos s) |
Set the thermometer orientation and the scale position. | |
void | setScalePosition (ScalePos s) |
Change the scale position (and thermometer orientation). | |
ScalePos | scalePosition () const |
void | setBorderWidth (int w) |
Set the border width of the pipe. | |
int | borderWidth () const |
void | setFillBrush (const QBrush &b) |
Change the brush of the liquid. | |
const QBrush & | fillBrush () const |
void | setFillColor (const QColor &c) |
Change the color of the liquid. | |
const QColor & | fillColor () const |
void | setAlarmBrush (const QBrush &b) |
Specify the liquid brush above the alarm threshold. | |
const QBrush & | alarmBrush () const |
void | setAlarmColor (const QColor &c) |
Specify the liquid color above the alarm threshold. | |
const QColor & | alarmColor () const |
void | setAlarmLevel (double v) |
Specify the alarm threshold. | |
double | alarmLevel () const |
void | setAlarmEnabled (bool tf) |
Enable or disable the alarm threshold. | |
bool | alarmEnabled () const |
void | setPipeWidth (int w) |
Change the width of the pipe. | |
int | pipeWidth () const |
void | setMaxValue (double v) |
Set the maximum value. | |
double | maxValue () const |
void | setMinValue (double v) |
Set the minimum value. | |
double | minValue () const |
double | value () const |
void | setRange (double vmin, double vmax, bool lg=false) |
Set the range. | |
void | setMargin (int m) |
Specify the distance between the pipe's endpoints and the widget's border. | |
virtual QSize | sizeHint () const |
virtual QSize | minimumSizeHint () const |
Return a minimum size hint. | |
void | setScaleDraw (QwtScaleDraw *) |
Set a scale draw. | |
const QwtScaleDraw * | scaleDraw () const |
Métodos protegidos | |
void | draw (QPainter *p, const QRect &update_rect) |
Draw the whole QwtThermo. | |
void | drawThermo (QPainter *p) |
Redraw the liquid in thermometer pipe. | |
void | layoutThermo (bool update=true) |
virtual void | scaleChange () |
Notify a scale change. | |
virtual void | fontChange (const QFont &oldFont) |
Notify a font change. | |
virtual void | paintEvent (QPaintEvent *e) |
Qt paint event. | |
virtual void | resizeEvent (QResizeEvent *e) |
Qt resize event handler. | |
QwtScaleDraw * | scaleDraw () |
Propiedades | |
QBrush | alarmBrush |
Return the liquid brush above the alarm threshold. | |
QColor | alarmColor |
Return the liquid color above the alarm threshold. | |
bool | alarmEnabled |
Return if the alarm threshold is enabled or disabled. | |
double | alarmLevel |
Return the alarm threshold. | |
ScalePos | scalePosition |
Return the scale position. | |
int | borderWidth |
Return the border width of the thermometer pipe. | |
QBrush | fillBrush |
Return the liquid brush. | |
QColor | fillColor |
Return the liquid color. | |
double | maxValue |
Return the maximum value. | |
double | minValue |
Return the minimum value. | |
int | pipeWidth |
Return the width of the pipe. | |
double | value |
Return the value. |
The Thermometer Widget.
QwtThermo is a widget which displays a value in an interval. It supports:
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(); }
enum QwtThermo::ScalePos |
Constructor
parent | Parent widget |
QwtThermo::QwtThermo | ( | QWidget * | parent, |
const char * | name | ||
) | [explicit] |
Constructor
parent | Parent widget |
name | Object name |
QwtThermo::~QwtThermo | ( | ) | [virtual] |
Destructor.
const QBrush& QwtThermo::alarmBrush | ( | ) | const |
const QColor& QwtThermo::alarmColor | ( | ) | const |
bool QwtThermo::alarmEnabled | ( | ) | const |
double QwtThermo::alarmLevel | ( | ) | const |
int QwtThermo::borderWidth | ( | ) | const |
Draw the whole QwtThermo.
void QwtThermo::drawThermo | ( | QPainter * | p | ) | [protected] |
Redraw the liquid in thermometer pipe.
const QBrush& QwtThermo::fillBrush | ( | ) | const |
const QColor& QwtThermo::fillColor | ( | ) | const |
void QwtThermo::fontChange | ( | const QFont & | oldFont | ) | [protected, virtual] |
Notify a font change.
Reimplementado de QWidget.
void QwtThermo::layoutThermo | ( | bool | update_geometry = true | ) | [protected] |
Recalculate the QwtThermo geometry and layout based on the QwtThermo::rect() and the fonts.
update_geometry | notify the layout system and call update to redraw the scale |
double QwtThermo::maxValue | ( | ) | const |
QSize QwtThermo::minimumSizeHint | ( | ) | const [virtual] |
Return a minimum size hint.
Reimplementado de QWidget.
double QwtThermo::minValue | ( | ) | const |
void QwtThermo::paintEvent | ( | QPaintEvent * | e | ) | [protected, virtual] |
int QwtThermo::pipeWidth | ( | ) | const |
void QwtThermo::resizeEvent | ( | QResizeEvent * | e | ) | [protected, virtual] |
void QwtThermo::scaleChange | ( | ) | [protected, virtual] |
Notify a scale change.
Reimplementado de QwtAbstractScale.
QwtScaleDraw * QwtThermo::scaleDraw | ( | ) | [protected] |
const QwtScaleDraw * QwtThermo::scaleDraw | ( | ) | const |
ScalePos QwtThermo::scalePosition | ( | ) | const |
void QwtThermo::setAlarmBrush | ( | const QBrush & | brush | ) |
Specify the liquid brush above the alarm threshold.
brush | New brush. The default is solid white. |
void QwtThermo::setAlarmColor | ( | const QColor & | c | ) |
Specify the liquid color above the alarm threshold.
c | New color. The default is white. |
void QwtThermo::setAlarmEnabled | ( | bool | tf | ) |
Enable or disable the alarm threshold.
tf | true (disabled) or false (enabled) |
void QwtThermo::setAlarmLevel | ( | double | v | ) |
Specify the alarm threshold.
void QwtThermo::setFillBrush | ( | const QBrush & | brush | ) |
Change the brush of the liquid.
brush | New brush. The default brush is solid black. |
void QwtThermo::setFillColor | ( | const QColor & | c | ) |
Change the color of the liquid.
c | New color. The default color is black. |
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.
m | New Margin. The default values are 10 for horizontal orientation and 20 for vertical orientation. |
void QwtThermo::setMaxValue | ( | double | v | ) |
Set the maximum value.
void QwtThermo::setMinValue | ( | double | v | ) |
Set the minimum value.
void QwtThermo::setOrientation | ( | Qt::Orientation | o, |
ScalePos | s | ||
) |
Set the thermometer orientation and the scale position.
The scale position NoScale disables the scale.
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:
void QwtThermo::setPipeWidth | ( | int | w | ) |
Change the width of the pipe.
void QwtThermo::setRange | ( | double | vmin, |
double | vmax, | ||
bool | logarithmic = false |
||
) |
Set the range.
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 |
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().
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 | ( | ScalePos | s | ) |
Change the scale position (and thermometer orientation).
s | Position of the scale. |
A valid combination of scale position and orientation is enforced:
void QwtThermo::setValue | ( | double | val | ) | [slot] |
Set the current value.
QSize QwtThermo::sizeHint | ( | ) | const [virtual] |
double QwtThermo::value | ( | ) | const |
const QBrush & QwtThermo::alarmBrush [read, write] |
Return the liquid brush above the alarm threshold.
const QColor & QwtThermo::alarmColor [read, write] |
Return the liquid color above the alarm threshold.
bool QwtThermo::alarmEnabled [read, write] |
Return if the alarm threshold is enabled or disabled.
double QwtThermo::alarmLevel [read, write] |
Return the alarm threshold.
int QwtThermo::borderWidth [read, write] |
Return the border width of the thermometer pipe.
const QBrush & QwtThermo::fillBrush [read, write] |
Return the liquid brush.
const QColor & QwtThermo::fillColor [read, write] |
Return the liquid color.
double QwtThermo::maxValue [read, write] |
Return the maximum value.
double QwtThermo::minValue [read, write] |
Return the minimum value.
int QwtThermo::pipeWidth [read, write] |
Return the width of the pipe.
QwtThermo::ScalePos QwtThermo::scalePosition [read, write] |
Return the scale position.
double QwtThermo::value [read, write] |
Return the value.