|
Qwt User's Guide
6.1.5
|
The Knob Widget. More...
#include <qwt_knob.h>

Public Types | |
| enum | KnobStyle { Flat, Raised, Sunken, Styled } |
| Style of the knob surface. More... | |
| enum | MarkerStyle { NoMarker = -1, Tick, Triangle, Dot, Nub, Notch } |
| Marker type. More... | |
Public Member Functions | |
| QwtKnob (QWidget *parent=NULL) | |
| Constructor. More... | |
| virtual | ~QwtKnob () |
| Destructor. | |
| void | setAlignment (Qt::Alignment) |
| Set the alignment of the knob. More... | |
| Qt::Alignment | alignment () const |
| void | setKnobWidth (int) |
| Change the knob's width. More... | |
| int | knobWidth () const |
| Return the width of the knob. | |
| void | setNumTurns (int) |
| Set the number of turns. More... | |
| int | numTurns () const |
| void | setTotalAngle (double angle) |
| Set the total angle by which the knob can be turned. More... | |
| double | totalAngle () const |
| void | setKnobStyle (KnobStyle) |
| Set the knob type. More... | |
| KnobStyle | knobStyle () const |
| void | setBorderWidth (int) |
| Set the knob's border width. More... | |
| int | borderWidth () const |
| Return the border width. | |
| void | setMarkerStyle (MarkerStyle) |
| Set the marker type of the knob. More... | |
| MarkerStyle | markerStyle () const |
| void | setMarkerSize (int) |
| Set the size of the marker. More... | |
| int | markerSize () const |
| virtual QSize | sizeHint () const |
| virtual QSize | minimumSizeHint () const |
| void | setScaleDraw (QwtRoundScaleDraw *) |
| const QwtRoundScaleDraw * | scaleDraw () const |
| QwtRoundScaleDraw * | scaleDraw () |
| QRect | knobRect () const |
Public Member Functions inherited from QwtAbstractSlider | |
| QwtAbstractSlider (QWidget *parent=NULL) | |
| Constructor. More... | |
| virtual | ~QwtAbstractSlider () |
| Destructor. | |
| void | setValid (bool) |
| bool | isValid () const |
| double | value () const |
| Returns the current value. | |
| void | setWrapping (bool) |
| bool | wrapping () const |
| void | setTotalSteps (uint) |
| Set the number of steps. More... | |
| uint | totalSteps () const |
| void | setSingleSteps (uint) |
| Set the number of steps for a single increment. More... | |
| uint | singleSteps () const |
| void | setPageSteps (uint) |
| Set the number of steps for a page increment. More... | |
| uint | pageSteps () const |
| void | setStepAlignment (bool) |
| Enable step alignment. More... | |
| bool | stepAlignment () const |
| void | setTracking (bool) |
| Enables or disables tracking. More... | |
| bool | isTracking () const |
| void | setReadOnly (bool) |
| bool | isReadOnly () const |
| void | setInvertedControls (bool) |
| bool | invertedControls () 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 QwtScaleDiv & | scaleDiv () 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 QwtScaleEngine * | scaleEngine () const |
| QwtScaleEngine * | scaleEngine () |
| int | transform (double) const |
| double | invTransform (int) const |
| bool | isInverted () const |
| double | minimum () const |
| double | maximum () const |
| const QwtScaleMap & | scaleMap () const |
Protected Member Functions | |
| virtual void | paintEvent (QPaintEvent *) |
| virtual void | changeEvent (QEvent *) |
| virtual void | drawKnob (QPainter *, const QRectF &) const |
| Draw the knob. More... | |
| virtual void | drawFocusIndicator (QPainter *) const |
| virtual void | drawMarker (QPainter *, const QRectF &, double angle) const |
| Draw the marker at the knob's front. More... | |
| virtual double | scrolledTo (const QPoint &) const |
| Determine the value for a new position of the mouse. More... | |
| virtual bool | isScrollPosition (const QPoint &) const |
| Determine what to do when the user presses a mouse button. More... | |
Protected Member Functions inherited from QwtAbstractSlider | |
| virtual void | mousePressEvent (QMouseEvent *) |
| virtual void | mouseReleaseEvent (QMouseEvent *) |
| virtual void | mouseMoveEvent (QMouseEvent *) |
| virtual void | keyPressEvent (QKeyEvent *) |
| virtual void | wheelEvent (QWheelEvent *) |
| void | incrementValue (int stepCount) |
| virtual void | scaleChange () |
| virtual void | sliderChange () |
| Calling update() | |
| double | incrementedValue (double value, int stepCount) const |
Protected Member Functions inherited from QwtAbstractScale | |
| void | rescale (double lowerBound, double upperBound, double stepSize) |
| void | setAbstractScaleDraw (QwtAbstractScaleDraw *) |
| Set a scale draw. More... | |
| const QwtAbstractScaleDraw * | abstractScaleDraw () const |
| QwtAbstractScaleDraw * | abstractScaleDraw () |
Additional Inherited Members | |
Public Slots inherited from QwtAbstractSlider | |
| void | setValue (double value) |
Signals inherited from QwtAbstractSlider | |
| void | valueChanged (double value) |
| Notify a change of value. More... | |
| void | sliderPressed () |
| void | sliderReleased () |
| void | sliderMoved (double value) |
The Knob Widget.
The QwtKnob widget imitates look and behavior of a volume knob on a radio. It looks similar to QDial - not to QwtDial.
The value range of a knob might be divided into several turns.
The layout of the knob depends on the knobWidth().
Setting a fixed knobWidth() is helpful to align several knobs with different scale labels.
| enum QwtKnob::KnobStyle |
Style of the knob surface.
Depending on the KnobStyle the surface of the knob is filled from the brushes of the widget palette().
| enum QwtKnob::MarkerStyle |
Marker type.
The marker indicates the current value on the knob The default setting is a Notch marker.
|
explicit |
Constructor.
Construct a knob with an angle of 270°. The style is QwtKnob::Raised and the marker style is QwtKnob::Notch. The width of the knob is set to 50 pixels.
| parent | Parent widget |
| Qt::Alignment QwtKnob::alignment | ( | ) | const |
|
protectedvirtual |
Handle QEvent::StyleChange and QEvent::FontChange;
| event | Change event |
|
protectedvirtual |
Draw the focus indicator
| painter | Painter |
|
protectedvirtual |
Draw the knob.
| painter | painter |
| knobRect | Bounding rectangle of the knob (without scale) |
|
protectedvirtual |
Draw the marker at the knob's front.
| painter | Painter |
| rect | Bounding rectangle of the knob without scale |
| angle | Angle of the marker in degrees ( clockwise, 0 at the 12 o'clock position ) |
|
protectedvirtual |
Determine what to do when the user presses a mouse button.
| pos | Mouse position |
| True,when | pos is inside the circle of the knob. |
Implements QwtAbstractSlider.
| QRect QwtKnob::knobRect | ( | ) | const |
Calculate the bounding rectangle of the knob without the scale
| QwtKnob::KnobStyle QwtKnob::knobStyle | ( | ) | const |
| int QwtKnob::markerSize | ( | ) | const |
| QwtKnob::MarkerStyle QwtKnob::markerStyle | ( | ) | const |
|
virtual |
| int QwtKnob::numTurns | ( | ) | const |
When the total angle is below 360° numTurns() is ceiled to 1.
|
protectedvirtual |
Repaint the knob
| event | Paint event |
| QwtRoundScaleDraw * QwtKnob::scaleDraw | ( | ) |
| const QwtRoundScaleDraw * QwtKnob::scaleDraw | ( | ) | const |
|
protectedvirtual |
Determine the value for a new position of the mouse.
| pos | Mouse position |
Implements QwtAbstractSlider.
| void QwtKnob::setAlignment | ( | Qt::Alignment | alignment | ) |
Set the alignment of the knob.
Similar to a QLabel::alignment() the flags decide how to align the knob inside of contentsRect().
The default setting is Qt::AlignCenter
| alignment | Or'd alignment flags |
| void QwtKnob::setBorderWidth | ( | int | borderWidth | ) |
Set the knob's border width.
| borderWidth | new border width |
| void QwtKnob::setKnobStyle | ( | KnobStyle | knobStyle | ) |
| void QwtKnob::setKnobWidth | ( | int | width | ) |
Change the knob's width.
Setting a fixed value for the diameter of the knob is helpful for aligning several knobs in a row.
| width | New width |
| void QwtKnob::setMarkerSize | ( | int | size | ) |
Set the size of the marker.
When setting a size <= 0 the marker will automatically scaled to 40% of the radius of the knob.
| void QwtKnob::setMarkerStyle | ( | MarkerStyle | markerStyle | ) |
Set the marker type of the knob.
| markerStyle | Marker type |
| void QwtKnob::setNumTurns | ( | int | numTurns | ) |
Set the number of turns.
When numTurns > 1 the knob can be turned several times around its axis
| void QwtKnob::setScaleDraw | ( | QwtRoundScaleDraw * | scaleDraw | ) |
Change the scale draw of the knob
For changing the labels of the scales, it is necessary to derive from QwtRoundScaleDraw and overload QwtRoundScaleDraw::label().
| void QwtKnob::setTotalAngle | ( | double | angle | ) |
Set the total angle by which the knob can be turned.
| angle | Angle in degrees. |
The angle has to be between [10, 360] degrees. Angles above 360 ( so that the knob can be turned several times around its axis ) have to be set using setNumTurns().
The default angle is 270 degrees.
|
virtual |
| double QwtKnob::totalAngle | ( | ) | const |