Provided by: libqwt-doc_6.1.4-2_all
NAME
QwtKnob - The Knob Widget.
SYNOPSIS
#include <qwt_knob.h> Inherits QwtAbstractSlider. Public Types enum KnobStyle { Flat, Raised, Sunken, Styled } Style of the knob surface. enum MarkerStyle { NoMarker = -1, Tick, Triangle, Dot, Nub, Notch } Marker type. Public Member Functions QwtKnob (QWidget *parent=NULL) Constructor. virtual ~QwtKnob () Destructor. void setAlignment (Qt::Alignment) Set the alignment of the knob. Qt::Alignment alignment () const void setKnobWidth (int) Change the knob's width. int knobWidth () const Return the width of the knob. void setNumTurns (int) Set the number of turns. int numTurns () const void setTotalAngle (double angle) Set the total angle by which the knob can be turned. double totalAngle () const void setKnobStyle (KnobStyle) Set the knob type. KnobStyle knobStyle () const void setBorderWidth (int) Set the knob's border width. int borderWidth () const Return the border width. void setMarkerStyle (MarkerStyle) Set the marker type of the knob. MarkerStyle markerStyle () const void setMarkerSize (int) Set the size of the marker. int markerSize () const virtual QSize sizeHint () const virtual QSize minimumSizeHint () const void setScaleDraw (QwtRoundScaleDraw *) const QwtRoundScaleDraw * scaleDraw () const QwtRoundScaleDraw * scaleDraw () QRect knobRect () const Protected Member Functions virtual void paintEvent (QPaintEvent *) virtual void changeEvent (QEvent *) virtual void drawKnob (QPainter *, const QRectF &) const Draw the knob. virtual void drawFocusIndicator (QPainter *) const virtual void drawMarker (QPainter *, const QRectF &, double angle) const Draw the marker at the knob's front. virtual double scrolledTo (const QPoint &) const Determine the value for a new position of the mouse. virtual bool isScrollPosition (const QPoint &) const Determine what to do when the user presses a mouse button. Additional Inherited Members
Detailed Description
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(). • width > 0 The diameter of the knob is fixed and the knob is aligned according to the alignment() flags inside of the contentsRect(). • width <= 0 The knob is extended to the minimum of width/height of the contentsRect() and aligned in the other direction according to alignment(). Setting a fixed knobWidth() is helpful to align several knobs with different scale labels.
Member Enumeration Documentation
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(). See also: setKnobStyle(), knobStyle() Enumerator Flat Fill the knob with a brush from QPalette::Button. Raised Build a gradient from QPalette::Midlight and QPalette::Button. Sunken Build a gradient from QPalette::Midlight, QPalette::Button and QPalette::Midlight Styled Build a radial gradient from QPalette::Button like it is used for QDial in various Qt styles. enum QwtKnob::MarkerStyle Marker type. The marker indicates the current value on the knob The default setting is a Notch marker. See also: setMarkerStyle(), setMarkerSize() Enumerator NoMarker Don't paint any marker. Tick Paint a single tick in QPalette::ButtonText color. Triangle Paint a triangle in QPalette::ButtonText color. Dot Paint a circle in QPalette::ButtonText color. Nub Draw a raised ellipse with a gradient build from QPalette::Light and QPalette::Mid Notch Draw a sunken ellipse with a gradient build from QPalette::Light and QPalette::Mid
Constructor & Destructor Documentation
QwtKnob::QwtKnob (QWidget * parent = NULL) [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. Parameters: parent Parent widget See also: setTotalAngle()
Member Function Documentation
Qt::Alignment QwtKnob::alignment () const Returns: Alignment of the knob inside of contentsRect() See also: setAlignment(), knobWidth(), knobRect() void QwtKnob::changeEvent (QEvent * event) [protected], [virtual] Handle QEvent::StyleChange and QEvent::FontChange; Parameters: event Change event void QwtKnob::drawFocusIndicator (QPainter * painter) const [protected], [virtual] Draw the focus indicator Parameters: painter Painter void QwtKnob::drawKnob (QPainter * painter, const QRectF & knobRect) const [protected], [virtual] Draw the knob. Parameters: painter painter knobRect Bounding rectangle of the knob (without scale) void QwtKnob::drawMarker (QPainter * painter, const QRectF & rect, double angle) const [protected], [virtual] Draw the marker at the knob's front. Parameters: 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 ) bool QwtKnob::isScrollPosition (const QPoint & pos) const [protected], [virtual] Determine what to do when the user presses a mouse button. Parameters: pos Mouse position Return values: True,when pos is inside the circle of the knob. See also: scrolledTo() Implements QwtAbstractSlider. QRect QwtKnob::knobRect () const Calculate the bounding rectangle of the knob without the scale Returns: Bounding rectangle of the knob See also: knobWidth(), alignment(), QWidget::contentsRect() QwtKnob::KnobStyle QwtKnob::knobStyle () const Returns: Marker type of the knob See also: setKnobStyle(), setBorderWidth() int QwtKnob::markerSize () const Returns: Marker size See also: setMarkerSize() QwtKnob::MarkerStyle QwtKnob::markerStyle () const Returns: Marker type of the knob See also: setMarkerStyle(), setMarkerSize() QSize QwtKnob::minimumSizeHint () const [virtual] Returns: Minimum size hint See also: sizeHint() int QwtKnob::numTurns () const Returns: Number of turns. When the total angle is below 360° numTurns() is ceiled to 1. See also: setNumTurns(), setTotalAngle(), totalAngle() void QwtKnob::paintEvent (QPaintEvent * event) [protected], [virtual] Repaint the knob Parameters: event Paint event const QwtRoundScaleDraw * QwtKnob::scaleDraw () const Returns: the scale draw of the knob See also: setScaleDraw() QwtRoundScaleDraw * QwtKnob::scaleDraw () Returns: the scale draw of the knob See also: setScaleDraw() double QwtKnob::scrolledTo (const QPoint & pos) const [protected], [virtual] Determine the value for a new position of the mouse. Parameters: pos Mouse position Returns: Value for the mouse position See also: isScrollPosition() 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 Parameters: alignment Or'd alignment flags See also: alignment(), setKnobWidth(), knobRect() void QwtKnob::setBorderWidth (int borderWidth) Set the knob's border width. Parameters: borderWidth new border width void QwtKnob::setKnobStyle (KnobStyle knobStyle) Set the knob type. Parameters: knobStyle Knob type See also: knobStyle(), setBorderWidth() 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. Parameters: width New width See also: knobWidth(), setAlignment() Note: Modifies the sizePolicy() 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. See also: markerSize(), markerStyle() void QwtKnob::setMarkerStyle (MarkerStyle markerStyle) Set the marker type of the knob. Parameters: markerStyle Marker type See also: markerStyle(), setMarkerSize() void QwtKnob::setNumTurns (int numTurns) Set the number of turns. When numTurns > 1 the knob can be turned several times around its axis • otherwise the total angle is floored to 360°. See also: numTurns(), totalAngle(), setTotalAngle() 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(). See also: scaleDraw() void QwtKnob::setTotalAngle (double angle) Set the total angle by which the knob can be turned. Parameters: 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. See also: totalAngle(), setNumTurns() QSize QwtKnob::sizeHint () const [virtual] Returns: sizeHint() double QwtKnob::totalAngle () const Returns: the total angle See also: setTotalAngle(), setNumTurns(), numTurns()
Author
Generated automatically by Doxygen for Qwt User's Guide from the source code.