The Wheel Widget. More...
#include <qwt_wheel.h>
Classes | |
class | PrivateData |
Public Slots | |
void | setMass (double) |
Set the slider's mass for flywheel effect. | |
void | setTotalAngle (double) |
Set the total angle which the wheel can be turned. | |
void | setValue (double) |
Set a new value without adjusting to the step raster. | |
void | setViewAngle (double) |
Specify the visible portion of the wheel. | |
Signals | |
void | valueChanged (double value) |
Notify a change of value. | |
void | wheelMoved (double value) |
void | wheelPressed () |
void | wheelReleased () |
Public Member Functions | |
int | borderWidth () const |
bool | isInverted () const |
bool | isTracking () const |
double | mass () const |
double | maximum () const |
double | minimum () const |
Qt::Orientation | orientation () const |
int | pageStepCount () const |
QwtWheel (QWidget *parent=NULL) | |
Constructor. | |
void | setBorderWidth (int) |
Set the border width. | |
void | setInverted (bool tf) |
En/Disable inverted appearance. | |
void | setMaximum (double max) |
void | setMinimum (double min) |
void | setOrientation (Qt::Orientation) |
Set the wheel's orientation. | |
void | setPageStepCount (int) |
Set the page step count. | |
void | setRange (double vmin, double vmax) |
Set the minimum and maximum values. | |
void | setSingleStep (double) |
Set the step size of the counter. | |
void | setStepAlignment (bool on) |
En/Disable step alignment. | |
void | setTickCount (int) |
Adjust the number of grooves in the wheel's surface. | |
void | setTracking (bool enable) |
En/Disable tracking. | |
void | setUpdateInterval (int) |
Specify the update interval when the wheel is flying. | |
void | setWheelBorderWidth (int) |
Set the wheel border width of the wheel. | |
void | setWheelWidth (int) |
Set the width of the wheel. | |
void | setWrapping (bool tf) |
En/Disable wrapping. | |
double | singleStep () const |
bool | stepAlignment () const |
int | tickCount () const |
double | totalAngle () const |
int | updateInterval () const |
double | value () const |
double | viewAngle () const |
int | wheelBorderWidth () const |
int | wheelWidth () const |
bool | wrapping () const |
virtual | ~QwtWheel () |
Destructor. | |
Protected Member Functions | |
virtual void | drawTicks (QPainter *, const QRectF &) |
virtual void | drawWheelBackground (QPainter *, const QRectF &) |
virtual void | keyPressEvent (QKeyEvent *) |
virtual QSize | minimumSizeHint () const |
virtual void | mouseMoveEvent (QMouseEvent *) |
Mouse Move Event handler. | |
virtual void | mousePressEvent (QMouseEvent *) |
Mouse press event handler. | |
virtual void | mouseReleaseEvent (QMouseEvent *) |
Mouse Release Event handler. | |
virtual void | paintEvent (QPaintEvent *) |
Qt Paint Event. | |
virtual QSize | sizeHint () const |
void | stopFlying () |
Stop the flying movement of the wheel. | |
virtual void | timerEvent (QTimerEvent *) |
Qt timer event. | |
virtual double | valueAt (const QPoint &) const |
virtual void | wheelEvent (QWheelEvent *) |
Handle wheel events. | |
QRect | wheelRect () const |
Properties | |
int | borderWidth |
bool | inverted |
double | mass |
double | maximum |
double | minimum |
Qt::Orientation | orientation |
int | pageStepCount |
double | singleStep |
bool | stepAlignment |
int | tickCount |
double | totalAngle |
bool | tracking |
int | updateInterval |
double | value |
double | viewAngle |
int | wheelBorderWidth |
int | wheelWidth |
bool | wrapping |
Private Member Functions | |
double | alignedValue (double) const |
double | boundedValue (double) const |
Private Attributes | |
PrivateData * | d_data |
The Wheel Widget.
The wheel widget can be used to change values over a very large range in very small steps. Using the setMass() member, it can be configured as a flying wheel.
The default range of the wheel is [0.0, 100.0]
Definition at line 27 of file qwt_wheel.h.
QwtWheel::QwtWheel | ( | QWidget * | parent = NULL | ) | [explicit] |
Constructor.
Definition at line 97 of file qwt_wheel.cpp.
QwtWheel::~QwtWheel | ( | ) | [virtual] |
Destructor.
Definition at line 108 of file qwt_wheel.cpp.
double QwtWheel::alignedValue | ( | double | value | ) | const [private] |
Definition at line 1273 of file qwt_wheel.cpp.
int QwtWheel::borderWidth | ( | ) | const |
double QwtWheel::boundedValue | ( | double | value | ) | const [private] |
Definition at line 1250 of file qwt_wheel.cpp.
void QwtWheel::drawTicks | ( | QPainter * | painter, |
const QRectF & | rect | ||
) | [protected, virtual] |
Draw the Wheel's ticks
painter | Painter |
rect | Geometry for the wheel |
Definition at line 811 of file qwt_wheel.cpp.
void QwtWheel::drawWheelBackground | ( | QPainter * | painter, |
const QRectF & | rect | ||
) | [protected, virtual] |
Draw the Wheel's background gradient
painter | Painter |
rect | Geometry for the wheel |
Definition at line 755 of file qwt_wheel.cpp.
bool QwtWheel::isInverted | ( | ) | const |
Definition at line 1170 of file qwt_wheel.cpp.
bool QwtWheel::isTracking | ( | ) | const |
Definition at line 134 of file qwt_wheel.cpp.
void QwtWheel::keyPressEvent | ( | QKeyEvent * | event | ) | [protected, virtual] |
Handle key events
event | Key event |
Definition at line 403 of file qwt_wheel.cpp.
double QwtWheel::mass | ( | ) | const |
double QwtWheel::maximum | ( | ) | const |
double QwtWheel::minimum | ( | ) | const |
QSize QwtWheel::minimumSizeHint | ( | ) | const [protected, virtual] |
Definition at line 956 of file qwt_wheel.cpp.
void QwtWheel::mouseMoveEvent | ( | QMouseEvent * | event | ) | [protected, virtual] |
Mouse Move Event handler.
Turn the wheel according to the mouse position
event | Mouse event |
Definition at line 193 of file qwt_wheel.cpp.
void QwtWheel::mousePressEvent | ( | QMouseEvent * | event | ) | [protected, virtual] |
Mouse press event handler.
Start movement of the wheel.
event | Mouse event |
Definition at line 168 of file qwt_wheel.cpp.
void QwtWheel::mouseReleaseEvent | ( | QMouseEvent * | event | ) | [protected, virtual] |
Mouse Release Event handler.
When the wheel has no mass the movement of the wheel stops, otherwise it starts flying.
event | Mouse event |
Definition at line 242 of file qwt_wheel.cpp.
Qt::Orientation QwtWheel::orientation | ( | ) | const |
int QwtWheel::pageStepCount | ( | ) | const |
void QwtWheel::paintEvent | ( | QPaintEvent * | event | ) | [protected, virtual] |
void QwtWheel::setBorderWidth | ( | int | width | ) |
Set the border width.
The border defaults to 2.
width | Border width |
Definition at line 570 of file qwt_wheel.cpp.
void QwtWheel::setInverted | ( | bool | on | ) |
En/Disable inverted appearance.
An inverted wheel increases its values in the opposite direction. The direction of an inverted horizontal wheel will be from right to left an inverted vertical wheel will increase from bottom to top.
on | En/Disable inverted appearance |
Definition at line 1157 of file qwt_wheel.cpp.
void QwtWheel::setMass | ( | double | mass | ) | [slot] |
Set the slider's mass for flywheel effect.
If the slider's mass is greater then 0, it will continue to move after the mouse button has been released. Its speed decreases with time at a rate depending on the slider's mass. A large mass means that it will continue to move for a long time.
Derived widgets may overload this function to make it public.
mass | New mass in kg |
Definition at line 1215 of file qwt_wheel.cpp.
void QwtWheel::setMaximum | ( | double | value | ) |
Set the maximum value of the range
value | Maximum value |
Definition at line 1099 of file qwt_wheel.cpp.
void QwtWheel::setMinimum | ( | double | value | ) |
Set the minimum value of the range
value | Minimum value |
Definition at line 1079 of file qwt_wheel.cpp.
void QwtWheel::setOrientation | ( | Qt::Orientation | orientation | ) |
Set the wheel's orientation.
The default orientation is Qt::Horizontal.
orientation | Qt::Horizontal or Qt::Vertical. |
Definition at line 633 of file qwt_wheel.cpp.
void QwtWheel::setPageStepCount | ( | int | count | ) |
Set the page step count.
pageStepCount is a multiplicator for the single step size that typically corresponds to the user pressing PageUp or PageDown.
A value of 0 disables page stepping.
The default value is 1.
count | Multiplicator for the single step size |
Definition at line 1028 of file qwt_wheel.cpp.
void QwtWheel::setRange | ( | double | min, |
double | max | ||
) |
Set the minimum and maximum values.
The maximum is adjusted if necessary to ensure that the range remains valid. The value might be modified to be inside of the range.
min | Minimum value |
max | Maximum value |
Definition at line 1053 of file qwt_wheel.cpp.
void QwtWheel::setSingleStep | ( | double | stepSize | ) |
Set the step size of the counter.
A value <= 0.0 disables stepping
stepSize | Single step size |
Definition at line 974 of file qwt_wheel.cpp.
void QwtWheel::setStepAlignment | ( | bool | on | ) |
En/Disable step alignment.
When step alignment is enabled value changes initiated by user input ( mouse, keyboard, wheel ) are aligned to the multiples of the single step.
on | On/Off |
Definition at line 998 of file qwt_wheel.cpp.
void QwtWheel::setTickCount | ( | int | count | ) |
Adjust the number of grooves in the wheel's surface.
The number of grooves is limited to 6 <= count <= 50. Values outside this range will be clipped. The default value is 10.
count | Number of grooves per 360 degrees |
Definition at line 513 of file qwt_wheel.cpp.
void QwtWheel::setTotalAngle | ( | double | angle | ) | [slot] |
Set the total angle which the wheel can be turned.
One full turn of the wheel corresponds to an angle of 360 degrees. A total angle of n*360 degrees means that the wheel has to be turned n times around its axis to get from the minimum value to the maximum value.
The default setting of the total angle is 360 degrees.
angle | total angle in degrees |
Definition at line 607 of file qwt_wheel.cpp.
void QwtWheel::setTracking | ( | bool | enable | ) |
En/Disable tracking.
If tracking is enabled (the default), the wheel emits the valueChanged() signal while the wheel is moving. If tracking is disabled, the wheel emits the valueChanged() signal only when the wheel movement is terminated.
The wheelMoved() signal is emitted regardless id tracking is enabled or not.
enable | On/Off |
Definition at line 125 of file qwt_wheel.cpp.
void QwtWheel::setUpdateInterval | ( | int | interval | ) |
Specify the update interval when the wheel is flying.
Default and minimum value is 50 ms.
interval | Interval in milliseconds |
Definition at line 147 of file qwt_wheel.cpp.
void QwtWheel::setValue | ( | double | value | ) | [slot] |
Set a new value without adjusting to the step raster.
value | New value |
Definition at line 1121 of file qwt_wheel.cpp.
void QwtWheel::setViewAngle | ( | double | angle | ) | [slot] |
Specify the visible portion of the wheel.
You may use this function for fine-tuning the appearance of the wheel. The default value is 175 degrees. The value is limited from 10 to 175 degrees.
angle | Visible angle in degrees |
Definition at line 670 of file qwt_wheel.cpp.
void QwtWheel::setWheelBorderWidth | ( | int | borderWidth | ) |
Set the wheel border width of the wheel.
The wheel border must not be smaller than 1 and is limited in dependence on the wheel's size. Values outside the allowed range will be clipped.
The wheel border defaults to 2.
borderWidth | Border width |
Definition at line 545 of file qwt_wheel.cpp.
void QwtWheel::setWheelWidth | ( | int | width | ) |
Set the width of the wheel.
Corresponds to the wheel height for horizontal orientation, and the wheel width for vertical orientation.
width | the wheel's width |
Definition at line 928 of file qwt_wheel.cpp.
void QwtWheel::setWrapping | ( | bool | on | ) |
En/Disable wrapping.
If wrapping is true stepping up from maximum() value will take you to the minimum() value and vice versa.
on | En/Disable wrapping |
Definition at line 1184 of file qwt_wheel.cpp.
double QwtWheel::singleStep | ( | ) | const |
QSize QwtWheel::sizeHint | ( | ) | const [protected, virtual] |
Definition at line 946 of file qwt_wheel.cpp.
bool QwtWheel::stepAlignment | ( | ) | const |
void QwtWheel::stopFlying | ( | ) | [protected] |
Stop the flying movement of the wheel.
Definition at line 1240 of file qwt_wheel.cpp.
int QwtWheel::tickCount | ( | ) | const |
void QwtWheel::timerEvent | ( | QTimerEvent * | event | ) | [protected, virtual] |
Qt timer event.
The flying wheel effect is implemented using a timer
event | Timer event |
Definition at line 288 of file qwt_wheel.cpp.
double QwtWheel::totalAngle | ( | ) | const |
int QwtWheel::updateInterval | ( | ) | const |
double QwtWheel::value | ( | ) | const |
double QwtWheel::valueAt | ( | const QPoint & | pos | ) | const [protected, virtual] |
Determine the value corresponding to a specified point
pos | Position |
Definition at line 691 of file qwt_wheel.cpp.
void QwtWheel::valueChanged | ( | double | value | ) | [signal] |
Notify a change of value.
When tracking is enabled this signal will be emitted every time the value changes.
value | new value |
double QwtWheel::viewAngle | ( | ) | const |
int QwtWheel::wheelBorderWidth | ( | ) | const |
void QwtWheel::wheelEvent | ( | QWheelEvent * | event | ) | [protected, virtual] |
Handle wheel events.
In/Decrement the value
event | Wheel event |
Definition at line 329 of file qwt_wheel.cpp.
void QwtWheel::wheelMoved | ( | double | value | ) | [signal] |
This signal is emitted when the user moves the wheel with the mouse.
value | new value |
void QwtWheel::wheelPressed | ( | ) | [signal] |
This signal is emitted when the user presses the the wheel with the mouse
QRect QwtWheel::wheelRect | ( | ) | const [protected] |
Definition at line 588 of file qwt_wheel.cpp.
void QwtWheel::wheelReleased | ( | ) | [signal] |
This signal is emitted when the user releases the mouse
int QwtWheel::wheelWidth | ( | ) | const |
bool QwtWheel::wrapping | ( | ) | const |
PrivateData* QwtWheel::d_data [private] |
Definition at line 175 of file qwt_wheel.h.
int QwtWheel::borderWidth [read, write] |
bool QwtWheel::inverted [read, write] |
Definition at line 45 of file qwt_wheel.h.
double QwtWheel::mass [read, write] |
double QwtWheel::maximum [read, write] |
Definition at line 37 of file qwt_wheel.h.
double QwtWheel::minimum [read, write] |
Definition at line 36 of file qwt_wheel.h.
Qt::Orientation QwtWheel::orientation [read, write] |
int QwtWheel::pageStepCount [read, write] |
Definition at line 40 of file qwt_wheel.h.
double QwtWheel::singleStep [read, write] |
bool QwtWheel::stepAlignment [read, write] |
Definition at line 41 of file qwt_wheel.h.
int QwtWheel::tickCount [read, write] |
Definition at line 52 of file qwt_wheel.h.
double QwtWheel::totalAngle [read, write] |
Definition at line 50 of file qwt_wheel.h.
bool QwtWheel::tracking [read, write] |
Definition at line 43 of file qwt_wheel.h.
int QwtWheel::updateInterval [read, write] |
Definition at line 48 of file qwt_wheel.h.
double QwtWheel::value [read, write] |
Definition at line 34 of file qwt_wheel.h.
double QwtWheel::viewAngle [read, write] |
Definition at line 51 of file qwt_wheel.h.
int QwtWheel::wheelBorderWidth [read, write] |
Definition at line 55 of file qwt_wheel.h.
int QwtWheel::wheelWidth [read, write] |
bool QwtWheel::wrapping [read, write] |
Definition at line 44 of file qwt_wheel.h.