.TH "QwtKnob" 3 "Wed Jan 2 2019" "Version 6.1.4" "Qwt User's Guide" \" -*- nroff -*- .ad l .nh .SH NAME QwtKnob \- The Knob Widget\&. .SH SYNOPSIS .br .PP .PP \fC#include \fP .PP Inherits \fBQwtAbstractSlider\fP\&. .SS "Public Types" .in +1c .ti -1c .RI "enum \fBKnobStyle\fP { \fBFlat\fP, \fBRaised\fP, \fBSunken\fP, \fBStyled\fP }" .br .RI "Style of the knob surface\&. " .ti -1c .RI "enum \fBMarkerStyle\fP { \fBNoMarker\fP = -1, \fBTick\fP, \fBTriangle\fP, \fBDot\fP, \fBNub\fP, \fBNotch\fP }" .br .RI "Marker type\&. " .in -1c .SS "Public Member Functions" .in +1c .ti -1c .RI "\fBQwtKnob\fP (QWidget *parent=NULL)" .br .RI "Constructor\&. " .ti -1c .RI "virtual \fB~QwtKnob\fP ()" .br .RI "Destructor\&. " .ti -1c .RI "void \fBsetAlignment\fP (Qt::Alignment)" .br .RI "Set the alignment of the knob\&. " .ti -1c .RI "Qt::Alignment \fBalignment\fP () const" .br .ti -1c .RI "void \fBsetKnobWidth\fP (int)" .br .RI "Change the knob's width\&. " .ti -1c .RI "int \fBknobWidth\fP () const" .br .RI "Return the width of the knob\&. " .ti -1c .RI "void \fBsetNumTurns\fP (int)" .br .RI "Set the number of turns\&. " .ti -1c .RI "int \fBnumTurns\fP () const" .br .ti -1c .RI "void \fBsetTotalAngle\fP (double angle)" .br .RI "Set the total angle by which the knob can be turned\&. " .ti -1c .RI "double \fBtotalAngle\fP () const" .br .ti -1c .RI "void \fBsetKnobStyle\fP (\fBKnobStyle\fP)" .br .RI "Set the knob type\&. " .ti -1c .RI "\fBKnobStyle\fP \fBknobStyle\fP () const" .br .ti -1c .RI "void \fBsetBorderWidth\fP (int)" .br .RI "Set the knob's border width\&. " .ti -1c .RI "int \fBborderWidth\fP () const" .br .RI "Return the border width\&. " .ti -1c .RI "void \fBsetMarkerStyle\fP (\fBMarkerStyle\fP)" .br .RI "Set the marker type of the knob\&. " .ti -1c .RI "\fBMarkerStyle\fP \fBmarkerStyle\fP () const" .br .ti -1c .RI "void \fBsetMarkerSize\fP (int)" .br .RI "Set the size of the marker\&. " .ti -1c .RI "int \fBmarkerSize\fP () const" .br .ti -1c .RI "virtual QSize \fBsizeHint\fP () const" .br .ti -1c .RI "virtual QSize \fBminimumSizeHint\fP () const" .br .ti -1c .RI "void \fBsetScaleDraw\fP (\fBQwtRoundScaleDraw\fP *)" .br .ti -1c .RI "const \fBQwtRoundScaleDraw\fP * \fBscaleDraw\fP () const" .br .ti -1c .RI "\fBQwtRoundScaleDraw\fP * \fBscaleDraw\fP ()" .br .ti -1c .RI "QRect \fBknobRect\fP () const" .br .in -1c .SS "Protected Member Functions" .in +1c .ti -1c .RI "virtual void \fBpaintEvent\fP (QPaintEvent *)" .br .ti -1c .RI "virtual void \fBchangeEvent\fP (QEvent *)" .br .ti -1c .RI "virtual void \fBdrawKnob\fP (QPainter *, const QRectF &) const" .br .RI "Draw the knob\&. " .ti -1c .RI "virtual void \fBdrawFocusIndicator\fP (QPainter *) const" .br .ti -1c .RI "virtual void \fBdrawMarker\fP (QPainter *, const QRectF &, double angle) const" .br .RI "Draw the marker at the knob's front\&. " .ti -1c .RI "virtual double \fBscrolledTo\fP (const QPoint &) const" .br .RI "Determine the value for a new position of the mouse\&. " .ti -1c .RI "virtual bool \fBisScrollPosition\fP (const QPoint &) const" .br .RI "Determine what to do when the user presses a mouse button\&. " .in -1c .SS "Additional Inherited Members" .SH "Detailed Description" .PP The Knob Widget\&. The \fBQwtKnob\fP widget imitates look and behavior of a volume knob on a radio\&. It looks similar to QDial - not to \fBQwtDial\fP\&. .PP The value range of a knob might be divided into several turns\&. .PP The layout of the knob depends on the \fBknobWidth()\fP\&. .PP .IP "\(bu" 2 width > 0 The diameter of the knob is fixed and the knob is aligned according to the \fBalignment()\fP flags inside of the contentsRect()\&. .IP "\(bu" 2 width <= 0 The knob is extended to the minimum of width/height of the contentsRect() and aligned in the other direction according to \fBalignment()\fP\&. .PP .PP Setting a fixed \fBknobWidth()\fP is helpful to align several knobs with different scale labels\&. .PP .SH "Member Enumeration Documentation" .PP .SS "enum \fBQwtKnob::KnobStyle\fP" .PP Style of the knob surface\&. Depending on the KnobStyle the surface of the knob is filled from the brushes of the widget palette()\&. .PP \fBSee also:\fP .RS 4 \fBsetKnobStyle()\fP, \fBknobStyle()\fP .RE .PP .PP \fBEnumerator\fP .in +1c .TP \fB\fIFlat \fP\fP Fill the knob with a brush from QPalette::Button\&. .TP \fB\fIRaised \fP\fP Build a gradient from QPalette::Midlight and QPalette::Button\&. .TP \fB\fISunken \fP\fP Build a gradient from QPalette::Midlight, QPalette::Button and QPalette::Midlight .TP \fB\fIStyled \fP\fP Build a radial gradient from QPalette::Button like it is used for QDial in various Qt styles\&. .SS "enum \fBQwtKnob::MarkerStyle\fP" .PP Marker type\&. The marker indicates the current value on the knob The default setting is a Notch marker\&. .PP \fBSee also:\fP .RS 4 \fBsetMarkerStyle()\fP, \fBsetMarkerSize()\fP .RE .PP .PP \fBEnumerator\fP .in +1c .TP \fB\fINoMarker \fP\fP Don't paint any marker\&. .TP \fB\fITick \fP\fP Paint a single tick in QPalette::ButtonText color\&. .TP \fB\fITriangle \fP\fP Paint a triangle in QPalette::ButtonText color\&. .TP \fB\fIDot \fP\fP Paint a circle in QPalette::ButtonText color\&. .TP \fB\fINub \fP\fP Draw a raised ellipse with a gradient build from QPalette::Light and QPalette::Mid .TP \fB\fINotch \fP\fP Draw a sunken ellipse with a gradient build from QPalette::Light and QPalette::Mid .SH "Constructor & Destructor Documentation" .PP .SS "QwtKnob::QwtKnob (QWidget * parent = \fCNULL\fP)\fC [explicit]\fP" .PP Constructor\&. Construct a knob with an angle of 270°\&. The style is \fBQwtKnob::Raised\fP and the marker style is \fBQwtKnob::Notch\fP\&. The width of the knob is set to 50 pixels\&. .PP \fBParameters:\fP .RS 4 \fIparent\fP Parent widget .RE .PP \fBSee also:\fP .RS 4 \fBsetTotalAngle()\fP .RE .PP .SH "Member Function Documentation" .PP .SS "Qt::Alignment QwtKnob::alignment () const" .PP \fBReturns:\fP .RS 4 Alignment of the knob inside of contentsRect() .RE .PP \fBSee also:\fP .RS 4 \fBsetAlignment()\fP, \fBknobWidth()\fP, \fBknobRect()\fP .RE .PP .SS "void QwtKnob::changeEvent (QEvent * event)\fC [protected]\fP, \fC [virtual]\fP" Handle QEvent::StyleChange and QEvent::FontChange; .PP \fBParameters:\fP .RS 4 \fIevent\fP Change event .RE .PP .SS "void QwtKnob::drawFocusIndicator (QPainter * painter) const\fC [protected]\fP, \fC [virtual]\fP" Draw the focus indicator .PP \fBParameters:\fP .RS 4 \fIpainter\fP Painter .RE .PP .SS "void QwtKnob::drawKnob (QPainter * painter, const QRectF & knobRect) const\fC [protected]\fP, \fC [virtual]\fP" .PP Draw the knob\&. .PP \fBParameters:\fP .RS 4 \fIpainter\fP painter .br \fIknobRect\fP Bounding rectangle of the knob (without scale) .RE .PP .SS "void QwtKnob::drawMarker (QPainter * painter, const QRectF & rect, double angle) const\fC [protected]\fP, \fC [virtual]\fP" .PP Draw the marker at the knob's front\&. .PP \fBParameters:\fP .RS 4 \fIpainter\fP Painter .br \fIrect\fP Bounding rectangle of the knob without scale .br \fIangle\fP Angle of the marker in degrees ( clockwise, 0 at the 12 o'clock position ) .RE .PP .SS "bool QwtKnob::isScrollPosition (const QPoint & pos) const\fC [protected]\fP, \fC [virtual]\fP" .PP Determine what to do when the user presses a mouse button\&. .PP \fBParameters:\fP .RS 4 \fIpos\fP Mouse position .RE .PP \fBReturn values:\fP .RS 4 \fITrue,when\fP pos is inside the circle of the knob\&. .RE .PP \fBSee also:\fP .RS 4 \fBscrolledTo()\fP .RE .PP .PP Implements \fBQwtAbstractSlider\fP\&. .SS "QRect QwtKnob::knobRect () const" Calculate the bounding rectangle of the knob without the scale .PP \fBReturns:\fP .RS 4 Bounding rectangle of the knob .RE .PP \fBSee also:\fP .RS 4 \fBknobWidth()\fP, \fBalignment()\fP, QWidget::contentsRect() .RE .PP .SS "\fBQwtKnob::KnobStyle\fP QwtKnob::knobStyle () const" .PP \fBReturns:\fP .RS 4 Marker type of the knob .RE .PP \fBSee also:\fP .RS 4 \fBsetKnobStyle()\fP, \fBsetBorderWidth()\fP .RE .PP .SS "int QwtKnob::markerSize () const" .PP \fBReturns:\fP .RS 4 Marker size .RE .PP \fBSee also:\fP .RS 4 \fBsetMarkerSize()\fP .RE .PP .SS "\fBQwtKnob::MarkerStyle\fP QwtKnob::markerStyle () const" .PP \fBReturns:\fP .RS 4 Marker type of the knob .RE .PP \fBSee also:\fP .RS 4 \fBsetMarkerStyle()\fP, \fBsetMarkerSize()\fP .RE .PP .SS "QSize QwtKnob::minimumSizeHint () const\fC [virtual]\fP" .PP \fBReturns:\fP .RS 4 Minimum size hint .RE .PP \fBSee also:\fP .RS 4 \fBsizeHint()\fP .RE .PP .SS "int QwtKnob::numTurns () const" .PP \fBReturns:\fP .RS 4 Number of turns\&. .RE .PP When the total angle is below 360° \fBnumTurns()\fP is ceiled to 1\&. .PP \fBSee also:\fP .RS 4 \fBsetNumTurns()\fP, \fBsetTotalAngle()\fP, \fBtotalAngle()\fP .RE .PP .SS "void QwtKnob::paintEvent (QPaintEvent * event)\fC [protected]\fP, \fC [virtual]\fP" Repaint the knob .PP \fBParameters:\fP .RS 4 \fIevent\fP Paint event .RE .PP .SS "const \fBQwtRoundScaleDraw\fP * QwtKnob::scaleDraw () const" .PP \fBReturns:\fP .RS 4 the scale draw of the knob .RE .PP \fBSee also:\fP .RS 4 \fBsetScaleDraw()\fP .RE .PP .SS "\fBQwtRoundScaleDraw\fP * QwtKnob::scaleDraw ()" .PP \fBReturns:\fP .RS 4 the scale draw of the knob .RE .PP \fBSee also:\fP .RS 4 \fBsetScaleDraw()\fP .RE .PP .SS "double QwtKnob::scrolledTo (const QPoint & pos) const\fC [protected]\fP, \fC [virtual]\fP" .PP Determine the value for a new position of the mouse\&. .PP \fBParameters:\fP .RS 4 \fIpos\fP Mouse position .RE .PP \fBReturns:\fP .RS 4 Value for the mouse position .RE .PP \fBSee also:\fP .RS 4 \fBisScrollPosition()\fP .RE .PP .PP Implements \fBQwtAbstractSlider\fP\&. .SS "void QwtKnob::setAlignment (Qt::Alignment alignment)" .PP Set the alignment of the knob\&. Similar to a QLabel::alignment() the flags decide how to align the knob inside of contentsRect()\&. .PP The default setting is Qt::AlignCenter .PP \fBParameters:\fP .RS 4 \fIalignment\fP Or'd alignment flags .RE .PP \fBSee also:\fP .RS 4 \fBalignment()\fP, \fBsetKnobWidth()\fP, \fBknobRect()\fP .RE .PP .SS "void QwtKnob::setBorderWidth (int borderWidth)" .PP Set the knob's border width\&. .PP \fBParameters:\fP .RS 4 \fIborderWidth\fP new border width .RE .PP .SS "void QwtKnob::setKnobStyle (\fBKnobStyle\fP knobStyle)" .PP Set the knob type\&. .PP \fBParameters:\fP .RS 4 \fIknobStyle\fP Knob type .RE .PP \fBSee also:\fP .RS 4 \fBknobStyle()\fP, \fBsetBorderWidth()\fP .RE .PP .SS "void QwtKnob::setKnobWidth (int width)" .PP Change the knob's width\&. Setting a fixed value for the diameter of the knob is helpful for aligning several knobs in a row\&. .PP \fBParameters:\fP .RS 4 \fIwidth\fP New width .RE .PP \fBSee also:\fP .RS 4 \fBknobWidth()\fP, \fBsetAlignment()\fP .RE .PP \fBNote:\fP .RS 4 Modifies the sizePolicy() .RE .PP .SS "void QwtKnob::setMarkerSize (int size)" .PP Set the size of the marker\&. When setting a size <= 0 the marker will automatically scaled to 40% of the radius of the knob\&. .PP \fBSee also:\fP .RS 4 \fBmarkerSize()\fP, \fBmarkerStyle()\fP .RE .PP .SS "void QwtKnob::setMarkerStyle (\fBMarkerStyle\fP markerStyle)" .PP Set the marker type of the knob\&. .PP \fBParameters:\fP .RS 4 \fImarkerStyle\fP Marker type .RE .PP \fBSee also:\fP .RS 4 \fBmarkerStyle()\fP, \fBsetMarkerSize()\fP .RE .PP .SS "void QwtKnob::setNumTurns (int numTurns)" .PP Set the number of turns\&. When numTurns > 1 the knob can be turned several times around its axis .IP "\(bu" 2 otherwise the total angle is floored to 360°\&. .PP .PP \fBSee also:\fP .RS 4 \fBnumTurns()\fP, \fBtotalAngle()\fP, \fBsetTotalAngle()\fP .RE .PP .SS "void QwtKnob::setScaleDraw (\fBQwtRoundScaleDraw\fP * scaleDraw)" Change the scale draw of the knob .PP For changing the labels of the scales, it is necessary to derive from \fBQwtRoundScaleDraw\fP and overload \fBQwtRoundScaleDraw::label()\fP\&. .PP \fBSee also:\fP .RS 4 \fBscaleDraw()\fP .RE .PP .SS "void QwtKnob::setTotalAngle (double angle)" .PP Set the total angle by which the knob can be turned\&. .PP \fBParameters:\fP .RS 4 \fIangle\fP Angle in degrees\&. .RE .PP 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 \fBsetNumTurns()\fP\&. .PP The default angle is 270 degrees\&. .PP \fBSee also:\fP .RS 4 \fBtotalAngle()\fP, \fBsetNumTurns()\fP .RE .PP .SS "QSize QwtKnob::sizeHint () const\fC [virtual]\fP" .PP \fBReturns:\fP .RS 4 \fBsizeHint()\fP .RE .PP .SS "double QwtKnob::totalAngle () const" .PP \fBReturns:\fP .RS 4 the total angle .RE .PP \fBSee also:\fP .RS 4 \fBsetTotalAngle()\fP, \fBsetNumTurns()\fP, \fBnumTurns()\fP .RE .PP .SH "Author" .PP Generated automatically by Doxygen for Qwt User's Guide from the source code\&.