|
QWT API (English) 7.3.0
Qt Widget Library for Technical Applications - English API Documentation
|
QwtDial class provides a rounded range control. More...
#include <qwt_dial.h>
Classes | |
| class | PrivateData |
Public Types | |
| enum | Shadow { Plain = QFrame::Plain , Raised = QFrame::Raised , Sunken = QFrame::Sunken } |
| Frame shadow. More... | |
| enum | Mode { RotateNeedle , RotateScale } |
| Mode controlling whether the needle or the scale is rotating. More... | |
Public Member Functions | |
| QwtDial (QWidget *parent=nullptr) | |
| Constructor. | |
| ~QwtDial () override | |
| Destructor. | |
| void | setFrameShadow (Shadow) |
| Set the frame shadow. | |
| Shadow | frameShadow () const |
| Return the frame shadow. | |
| void | setLineWidth (int) |
| Set the line width. | |
| int | lineWidth () const |
| Return the line width. | |
| void | setMode (Mode) |
| Set the mode. | |
| Mode | mode () const |
| Return the mode. | |
| void | setScaleArc (double minArc, double maxArc) |
| Set the scale arc range. | |
| void | setMinScaleArc (double) |
| Set the minimum scale arc. | |
| double | minScaleArc () const |
| Return the minimum scale arc. | |
| void | setMaxScaleArc (double) |
| Set the maximum scale arc. | |
| double | maxScaleArc () const |
| Return the maximum scale arc. | |
| virtual void | setOrigin (double) |
| Set the origin. | |
| double | origin () const |
| Return the origin. | |
| void | setNeedle (QwtDialNeedle *) |
| Set the needle. | |
| const QwtDialNeedle * | needle () const |
| Return the needle (const version) | |
| QwtDialNeedle * | needle () |
| Return the needle. | |
| QRect | boundingRect () const |
| Return the bounding rectangle. | |
| QRect | innerRect () const |
| Return the inner rectangle. | |
| virtual QRect | scaleInnerRect () const |
| Return the scale inner rectangle. | |
| virtual QSize | sizeHint () const override |
| Return the size hint. | |
| virtual QSize | minimumSizeHint () const override |
| Return the minimum size hint. | |
| void | setScaleDraw (QwtRoundScaleDraw *) |
| Set the scale draw. | |
| QwtRoundScaleDraw * | scaleDraw () |
| Return the scale draw. | |
| const QwtRoundScaleDraw * | scaleDraw () const |
| Return the scale draw (const version) | |
Public Member Functions inherited from QwtAbstractSlider | |
| QwtAbstractSlider (QWidget *parent=nullptr) | |
| Constructor for QwtAbstractSlider (English only) | |
| ~QwtAbstractSlider () override | |
| Destructor for QwtAbstractSlider (English only) | |
| void | setValid (bool) |
| Set whether the slider is valid (English only) | |
| bool | isValid () const |
| Return whether the slider is valid (English only) | |
| double | value () const |
| Return the current value (English only) | |
| void | setWrapping (bool) |
| Set whether wrapping is enabled (English only) | |
| bool | wrapping () const |
| Return whether wrapping is enabled (English only) | |
| void | setTotalSteps (uint) |
| Set the total number of steps (English only) | |
| uint | totalSteps () const |
| Return the total number of steps (English only) | |
| void | setSingleSteps (uint) |
| Set the number of single steps (English only) | |
| uint | singleSteps () const |
| Return the number of single steps (English only) | |
| void | setPageSteps (uint) |
| Set the number of page steps (English only) | |
| uint | pageSteps () const |
| Return the number of page steps (English only) | |
| void | setStepAlignment (bool) |
| Set whether step alignment is enabled (English only) | |
| bool | stepAlignment () const |
| Return whether step alignment is enabled (English only) | |
| void | setTracking (bool) |
| Set whether tracking is enabled (English only) | |
| bool | isTracking () const |
| Return whether tracking is enabled (English only) | |
| void | setReadOnly (bool) |
| Set whether the slider is read-only (English only) | |
| bool | isReadOnly () const |
| Return whether the slider is read-only (English only) | |
| void | setInvertedControls (bool) |
| Set whether controls are inverted (English only) | |
| bool | invertedControls () const |
| Return whether controls are inverted (English only) | |
Public Member Functions inherited from QwtAbstractScale | |
| QwtAbstractScale (QWidget *parent=nullptr) | |
| Constructor for QwtAbstractScale. | |
| void | setScale (double lowerBound, double upperBound) |
| Specify a scale by interval bounds. | |
| void | setScale (const QwtInterval &) |
| Specify a scale by interval. | |
| void | setScale (const QwtScaleDiv &) |
| Specify a scale by scale division. | |
| const QwtScaleDiv & | scaleDiv () const |
| Return the scale division. | |
| void | setLowerBound (double value) |
| Set the lower bound of the scale. | |
| double | lowerBound () const |
| Return the lower bound of the scale. | |
| void | setUpperBound (double value) |
| Set the upper bound of the scale. | |
| double | upperBound () const |
| Return the upper bound of the scale. | |
| void | setScaleStepSize (double stepSize) |
| Set the step size used for calculating scale division. | |
| double | scaleStepSize () const |
| Return the step size hint. | |
| void | setScaleMaxMajor (int ticks) |
| Set the maximum number of major tick intervals. | |
| int | scaleMaxMinor () const |
| Return the maximum number of minor tick intervals. | |
| void | setScaleMaxMinor (int ticks) |
| Set the maximum number of minor tick intervals. | |
| int | scaleMaxMajor () const |
| Return the maximum number of major tick intervals. | |
| void | setScaleEngine (QwtScaleEngine *) |
| Set the scale engine. | |
| const QwtScaleEngine * | scaleEngine () const |
| Return the scale engine (const version) | |
| QwtScaleEngine * | scaleEngine () |
| Return the scale engine (non-const version) | |
| int | transform (double) const |
| Transform a scale value to widget coordinates. | |
| double | invTransform (int) const |
| Transform a widget coordinate to scale value. | |
| bool | isInverted () const |
| Check if scale is inverted. | |
| double | minimum () const |
| Return the minimum boundary. | |
| double | maximum () const |
| Return the maximum boundary. | |
| const QwtScaleMap & | scaleMap () const |
| Return the scale map. | |
Protected Member Functions | |
| virtual void | wheelEvent (QWheelEvent *) override |
| Wheel Event handler. | |
| virtual void | paintEvent (QPaintEvent *) override |
| Paint the dial. | |
| virtual void | changeEvent (QEvent *) override |
| Change Event handler. | |
| virtual void | drawFrame (QPainter *) |
| Draw the frame around the dial. | |
| virtual void | drawContents (QPainter *) const |
| Draw the contents inside the frame. | |
| virtual void | drawFocusIndicator (QPainter *) const |
| Draw the focus indicator. | |
| void | invalidateCache () |
| Invalidate the internal caches used to speed up repainting. | |
| virtual void | drawScale (QPainter *, const QPointF ¢er, double radius) const |
| Draw the scale. | |
| virtual void | drawScaleContents (QPainter *painter, const QPointF ¢er, double radius) const |
| Draw the contents inside the scale. | |
| virtual void | drawNeedle (QPainter *, const QPointF &, double radius, double direction, QPalette::ColorGroup) const |
| Draw the needle. | |
| virtual double | scrolledTo (const QPoint &) const override |
| Determine the value for a new position of the slider handle. | |
| virtual bool | isScrollPosition (const QPoint &) const override |
| Determine what to do when the user presses a mouse button. | |
| virtual void | sliderChange () override |
| Handle slider changes (English only) | |
| virtual void | scaleChange () override |
| Invalidate the internal caches and call QwtAbstractSlider::scaleChange() | |
Protected Member Functions inherited from QwtAbstractSlider | |
| virtual void | mousePressEvent (QMouseEvent *) override |
| Handle mouse press events (English only) | |
| virtual void | mouseReleaseEvent (QMouseEvent *) override |
| Handle mouse release events (English only) | |
| virtual void | mouseMoveEvent (QMouseEvent *) override |
| Handle mouse move events (English only) | |
| virtual void | keyPressEvent (QKeyEvent *) override |
| Handle key press events (English only) | |
| void | incrementValue (int stepCount) |
| Increment the value by a number of steps (English only) | |
| double | incrementedValue (double value, int stepCount) const |
| Calculate incremented value (English only) | |
Protected Member Functions inherited from QwtAbstractScale | |
| void | rescale (double lowerBound, double upperBound, double stepSize) |
| Recalculate scale and update scale draw (English only) | |
| void | setAbstractScaleDraw (QwtAbstractScaleDraw *) |
| Set the scale draw object (English only) | |
| const QwtAbstractScaleDraw * | abstractScaleDraw () const |
| Return the scale draw (const version) (English only) | |
| QwtAbstractScaleDraw * | abstractScaleDraw () |
| Return the scale draw (non-const version) (English only) | |
| void | updateScaleDraw () |
| Update the scale draw (English only) | |
Properties | |
| int | lineWidth |
| Shadow | frameShadow |
| Mode | mode |
| double | origin |
| double | minScaleArc |
| double | maxScaleArc |
Properties inherited from QwtAbstractSlider | |
| double | value |
| uint | totalSteps |
| uint | singleSteps |
| uint | pageSteps |
| bool | stepAlignment |
| bool | readOnly |
| bool | tracking |
| bool | wrapping |
| bool | invertedControls |
Properties inherited from QwtAbstractScale | |
| double | lowerBound |
| double | upperBound |
| int | scaleMaxMajor |
| int | scaleMaxMinor |
| double | scaleStepSize |
Additional Inherited Members | |
Public Slots inherited from QwtAbstractSlider | |
| void | setValue (double value) |
| Set the slider value (English only) | |
Signals inherited from QwtAbstractSlider | |
| void | valueChanged (double value) |
| Notify a change of value. | |
| void | sliderPressed () |
| Signal emitted when the user presses the movable part of the slider. | |
| void | sliderReleased () |
| Signal emitted when the user releases the movable part of the slider. | |
| void | sliderMoved (double value) |
| Signal emitted when the user moves the slider with the mouse. | |
QwtDial class provides a rounded range control.
QwtDial is intended as base class for dial widgets like speedometers, compass widgets, clocks... A dial contains a scale and a needle indicating the current value of the dial. Depending on Mode one of them is fixed and the other is rotating. If not isReadOnly() the dial can be rotated by dragging the mouse or using keyboard inputs (see QwtAbstractSlider::keyPressEvent()). A dial might be wrapping, what means a rotation below/above one limit continues on the other limit (f.e compass). The scale might cover any arc of the dial, its values are related to the origin() of the dial. Often dials have to be updated very often according to values from external devices. For these high refresh rates QwtDial caches as much as possible. For derived classes it might be necessary to clear these caches manually according to attribute changes using invalidateCache().
| enum QwtDial::Mode |
| enum QwtDial::Shadow |
|
explicit |
Constructor.
Create a dial widget with no needle. The scale is initialized to [ 0.0, 360.0 ] and 360 steps ( QwtAbstractSlider::setTotalSteps() ). The origin of the scale is at 90°, The value is set to 0.0. The default mode is QwtDial::RotateNeedle.
| parent | Parent widget |
Destructor
| QRect QwtDial::boundingRect | ( | ) | const |
Return the bounding rectangle.
Return bounding rectangle of the dial including the frame.
|
overrideprotectedvirtual |
Change Event handler.
| event | Change event |
Invalidates internal paint caches if necessary
Reimplemented from QwtAbstractScale.
|
protectedvirtual |
Draw the contents inside the frame.
QPalette::Window is the background color outside of the frame. QPalette::Base is the background color inside the frame. QPalette::WindowText is the background color inside the scale.
| painter | Painter |
|
protectedvirtual |
Draw the focus indicator.
| painter | Painter |
|
protectedvirtual |
Draw the frame around the dial.
| painter | Painter |
|
protectedvirtual |
Draw the needle.
| painter | Painter |
| center | Center of the dial |
| radius | Length for the needle |
| direction | Direction of the needle in degrees, counter clockwise |
| colorGroup | ColorGroup |
Reimplemented in QwtAnalogClock.
|
protectedvirtual |
Draw the scale.
| painter | Painter |
| center | Center of the dial |
| radius | Radius of the scale |
|
protectedvirtual |
Draw the contents inside the scale.
Paints nothing.
| painter | Painter |
| center | Center of the contents circle |
| radius | Radius of the contents circle |
Reimplemented in QwtCompass.
| QwtDial::Shadow QwtDial::frameShadow | ( | ) | const |
Return the frame shadow.
Return frame shadow.
| QRect QwtDial::innerRect | ( | ) | const |
Return the inner rectangle.
Return bounding rectangle of the circle inside the frame.
|
overrideprotectedvirtual |
Determine what to do when the user presses a mouse button.
| pos | Mouse position |
| True,when | the inner circle contains pos |
Implements QwtAbstractSlider.
| int QwtDial::lineWidth | ( | ) | const |
Return the line width.
Return line width of the frame.
| double QwtDial::maxScaleArc | ( | ) | const |
|
overridevirtual |
| double QwtDial::minScaleArc | ( | ) | const |
| QwtDial::Mode QwtDial::mode | ( | ) | const |
| QwtDialNeedle * QwtDial::needle | ( | ) |
| const QwtDialNeedle * QwtDial::needle | ( | ) | const |
| double QwtDial::origin | ( | ) | const |
Return the origin.
The origin is the angle where scale and needle is relative to.
|
overrideprotectedvirtual |
Paint the dial.
| event | Paint event |
|
overrideprotectedvirtual |
Invalidate the internal caches and call QwtAbstractSlider::scaleChange()
Reimplemented from QwtAbstractSlider.
| const QwtRoundScaleDraw * QwtDial::scaleDraw | ( | ) | const |
Return the scale draw (const version)
Return the scale draw.
|
virtual |
Return the scale inner rectangle.
Return rectangle inside the scale.
|
overrideprotectedvirtual |
Determine the value for a new position of the slider handle.
| pos | Mouse position |
Implements QwtAbstractSlider.
| void QwtDial::setFrameShadow | ( | Shadow | shadow | ) |
Set the frame shadow.
Sets the frame shadow value from the frame style.
| shadow | Frame shadow |
| void QwtDial::setLineWidth | ( | int | lineWidth | ) |
Set the line width.
Sets the line width of the frame.
| lineWidth | Line width |
| void QwtDial::setMaxScaleArc | ( | double | max | ) |
Set the maximum scale arc.
Set the upper limit for the scale arc.
| max | Upper limit of the scale arc |
| void QwtDial::setMinScaleArc | ( | double | min | ) |
Set the minimum scale arc.
Set the lower limit for the scale arc.
| min | Lower limit of the scale arc |
| void QwtDial::setMode | ( | Mode | mode | ) |
Set the mode.
Change the mode of the dial.
In case of QwtDial::RotateNeedle the needle is rotating, in case of QwtDial::RotateScale, the needle points to origin() and the scale is rotating. The default mode is QwtDial::RotateNeedle.
| mode | New mode |
| void QwtDial::setNeedle | ( | QwtDialNeedle * | needle | ) |
Set the needle.
Set a needle for the dial.
| needle | Needle |
|
virtual |
Set the origin.
Change the origin.
The origin is the angle where scale and needle is relative to.
| origin | New origin |
| void QwtDial::setScaleArc | ( | double | minArc, |
| double | maxArc | ||
| ) |
Set the scale arc range.
Change the arc of the scale.
| minArc | Lower limit |
| maxArc | Upper limit |
| void QwtDial::setScaleDraw | ( | QwtRoundScaleDraw * | scaleDraw | ) |
Set the scale draw.
Set an individual scale draw.
The motivation for setting a scale draw is often to overload QwtRoundScaleDraw::label() to return individual tick labels.
| scaleDraw | Scale draw |
|
overridevirtual |
|
overrideprotectedvirtual |
Handle slider changes (English only)
Handle slider changes.
Called when the slider needs to update its appearance. The default implementation calls update().
Reimplemented from QwtAbstractSlider.
|
overrideprotectedvirtual |