Qwt User's Guide: QwtAbstractSlider Class Reference

Qwt User's Guide 6.2.0

Public Slots | Signals | Public Member Functions | Protected Member Functions | List of all members
QwtAbstractSlider Class Referenceabstract

An abstract base class for slider widgets with a scale. More...

`#include <qwt_abstract_slider.h>`

Inheritance diagram for QwtAbstractSlider:

## Public Slots
void | setValue (double value)

## Signals
void | valueChanged (double value)
| Notify a change of value. More...
void | sliderPressed ()
void | sliderReleased ()
void | sliderMoved (double value)

## Public Member Functions
| 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 | mousePressEvent (QMouseEvent *) override
virtual void | mouseReleaseEvent (QMouseEvent *) override
virtual void | mouseMoveEvent (QMouseEvent *) override
virtual void | keyPressEvent (QKeyEvent *) override
virtual void | wheelEvent (QWheelEvent *) override
virtual bool | isScrollPosition (const QPoint &pos) const =0
| Determine what to do when the user presses a mouse button. More...
virtual double | scrolledTo (const QPoint &pos) const =0
| Determine the value for a new position of the movable part of the slider. More...
void | incrementValue (int stepCount)
virtual void | scaleChange () override
virtual void | sliderChange ()
| Calling update()
double | incrementedValue (double value, int stepCount) const
Protected Member Functions inherited from QwtAbstractScale
virtual void | changeEvent (QEvent *) override
void | rescale (double lowerBound, double upperBound, double stepSize)
void | setAbstractScaleDraw (QwtAbstractScaleDraw *)
| Set a scale draw. More...
const QwtAbstractScaleDraw * | abstractScaleDraw () const
QwtAbstractScaleDraw * | abstractScaleDraw ()
void | updateScaleDraw ()

## Detailed Description

An abstract base class for slider widgets with a scale.

A slider widget displays a value according to a scale. The class is designed as a common super class for widgets like QwtKnob, QwtDial and QwtSlider.

When the slider is nor readOnly() its value can be modified by keyboard, mouse and wheel inputs.

The range of the slider is divided into a number of steps from which the value increments according to user inputs depend. Only for linear scales the number of steps correspond with a fixed step size.

Definition at line 32 of file qwt_abstract_slider.h.

## Constructor & Destructor Documentation

## ◆ QwtAbstractSlider()

QwtAbstractSlider::QwtAbstractSlider | ( | QWidget * | parent = `NULL` | ) |
| explicit

Constructor.

The scale is initialized to [0.0, 100.0], the number of steps is set to 100 with 1 and 10 and single an page step sizes. Step alignment is enabled.

The initial value is invalid.

Parameters

  parent | Parent widget

Definition at line 91 of file qwt_abstract_slider.cpp.

## Member Function Documentation

## ◆ incrementedValue()

double QwtAbstractSlider::incrementedValue | ( | double | value,
|  | int | stepCount
| ) |  | const
| protected

Increment a value

Parameters

  value | Value
  stepCount | Number of steps

Returns
  Incremented value

Definition at line 670 of file qwt_abstract_slider.cpp.

## ◆ incrementValue()

void QwtAbstractSlider::incrementValue | ( | int | stepCount | ) |
| protected

Increment the slider

The step size depends on the number of totalSteps()

Parameters

  stepCount | Number of steps

See also
  setTotalSteps(), incrementedValue()

Definition at line 650 of file qwt_abstract_slider.cpp.

## ◆ invertedControls()

bool QwtAbstractSlider::invertedControls | ( |  | ) | const

Returns
  True, when the controls are inverted

See also
  setInvertedControls()

Definition at line 637 of file qwt_abstract_slider.cpp.

## ◆ isReadOnly()

bool QwtAbstractSlider::isReadOnly | ( |  | ) | const

In read only mode the slider can't be controlled by mouse or keyboard.

Returns
  true if read only

See also
  setReadOnly()

Definition at line 159 of file qwt_abstract_slider.cpp.

## ◆ isScrollPosition()

virtual bool QwtAbstractSlider::isScrollPosition | ( | const QPoint & | pos | ) | const
| protectedpure virtual

Determine what to do when the user presses a mouse button.

Parameters

  pos | Mouse position

Return values

  True,when | pos is a valid scroll position

See also
  scrolledTo()

Implemented in QwtSlider, QwtKnob, and QwtDial.

## ◆ isTracking()

bool QwtAbstractSlider::isTracking | ( |  | ) | const

Returns
  True, when tracking has been enabled

See also
  setTracking()

Definition at line 186 of file qwt_abstract_slider.cpp.

## ◆ isValid()

bool QwtAbstractSlider::isValid | ( |  | ) | const

Returns
  True, when the value is invalid

Definition at line 125 of file qwt_abstract_slider.cpp.

## ◆ keyPressEvent()

void QwtAbstractSlider::keyPressEvent | ( | QKeyEvent * | event | ) |
| overrideprotectedvirtual

Handles key events

QwtAbstractSlider handles the following keys:

- Qt::Key_Left
  Add/Subtract singleSteps() in direction to lowerBound();
- Qt::Key_Right
  Add/Subtract singleSteps() in direction to upperBound();
- Qt::Key_Down
  Subtract singleSteps(), when invertedControls() is false
- Qt::Key_Up
  Add singleSteps(), when invertedControls() is false
- Qt::Key_PageDown
  Subtract pageSteps(), when invertedControls() is false
- Qt::Key_PageUp
  Add pageSteps(), when invertedControls() is false
- Qt::Key_Home
  Set the value to the minimum()
- Qt::Key_End
  Set the value to the maximum()

Parameters

  event | Key event

See also
  isReadOnly()

Reimplemented in QwtCompass.

Definition at line 370 of file qwt_abstract_slider.cpp.

## ◆ mouseMoveEvent()

void QwtAbstractSlider::mouseMoveEvent | ( | QMouseEvent * | event | ) |
| overrideprotectedvirtual

Mouse Move Event handler

Parameters

  event | Mouse event

Definition at line 220 of file qwt_abstract_slider.cpp.

## ◆ mousePressEvent()

void QwtAbstractSlider::mousePressEvent | ( | QMouseEvent * | event | ) |
| overrideprotectedvirtual

Mouse press event handler

Parameters

  event | Mouse event

Reimplemented in QwtSlider.

Definition at line 195 of file qwt_abstract_slider.cpp.

## ◆ mouseReleaseEvent()

void QwtAbstractSlider::mouseReleaseEvent | ( | QMouseEvent * | event | ) |
| overrideprotectedvirtual

Mouse Release Event handler

Parameters

  event | Mouse event

Reimplemented in QwtSlider.

Definition at line 265 of file qwt_abstract_slider.cpp.

## ◆ pageSteps()

uint QwtAbstractSlider::pageSteps | ( |  | ) | const

Returns
  Number of steps

See also
  setPageSteps(), totalSteps(), singleSteps()

Definition at line 533 of file qwt_abstract_slider.cpp.

## ◆ scaleChange()

void QwtAbstractSlider::scaleChange | ( |  | ) |
| overrideprotectedvirtual

Update the slider according to modifications of the scale

Reimplemented from QwtAbstractScale.

Reimplemented in QwtSlider, and QwtDial.

Definition at line 811 of file qwt_abstract_slider.cpp.

## ◆ scrolledTo()

virtual double QwtAbstractSlider::scrolledTo | ( | const QPoint & | pos | ) | const
| protectedpure virtual

Determine the value for a new position of the movable part of the slider.

Parameters

  pos | Mouse position

Returns
  Value for the mouse position

See also
  isScrollPosition()

Implemented in QwtSlider, QwtKnob, and QwtDial.

## ◆ setInvertedControls()

void QwtAbstractSlider::setInvertedControls | ( | bool | on | ) |

Invert wheel and key events

Usually scrolling the mouse wheel "up" and using keys like page up will increase the slider's value towards its maximum. When invertedControls() is enabled the value is scrolled towards its minimum.

Inverting the controls might be f.e. useful for a vertical slider with an inverted scale ( decreasing from top to bottom ).

Parameters

  on | Invert controls, when true

See also
  invertedControls(), keyEvent(), wheelEvent()

Definition at line 628 of file qwt_abstract_slider.cpp.

## ◆ setPageSteps()

void QwtAbstractSlider::setPageSteps | ( | uint | stepCount | ) |

Set the number of steps for a page increment.

The range of the slider is divided into a number of steps from which the value increments according to user inputs depend.

Parameters

  stepCount | Number of steps

See also
  pageSteps(), setTotalSteps(), setSingleSteps()

Definition at line 524 of file qwt_abstract_slider.cpp.

## ◆ setReadOnly()

void QwtAbstractSlider::setReadOnly | ( | bool | on | ) |

En/Disable read only mode

In read only mode the slider can't be controlled by mouse or keyboard.

Parameters

  on | Enables in case of true

See also
  isReadOnly()

Warning
  The focus policy is set to Qt::StrongFocus or Qt::NoFocus

Definition at line 141 of file qwt_abstract_slider.cpp.

## ◆ setSingleSteps()

void QwtAbstractSlider::setSingleSteps | ( | uint | stepCount | ) |

Set the number of steps for a single increment.

The range of the slider is divided into a number of steps from which the value increments according to user inputs depend.

Parameters

  stepCount | Number of steps

See also
  singleSteps(), setTotalSteps(), setPageSteps()

Definition at line 499 of file qwt_abstract_slider.cpp.

## ◆ setStepAlignment()

void QwtAbstractSlider::setStepAlignment | ( | bool | on | ) |

Enable step alignment.

When step alignment is enabled values resulting from slider movements are aligned to the step size.

Parameters

  on | Enable step alignment when true

See also
  stepAlignment()

Definition at line 547 of file qwt_abstract_slider.cpp.

## ◆ setTotalSteps()

void QwtAbstractSlider::setTotalSteps | ( | uint | stepCount | ) |

Set the number of steps.

The range of the slider is divided into a number of steps from which the value increments according to user inputs depend.

The default setting is 100.

Parameters

  stepCount | Number of steps

See also
  totalSteps(), setSingleSteps(), setPageSteps()

Definition at line 474 of file qwt_abstract_slider.cpp.

## ◆ setTracking()

void QwtAbstractSlider::setTracking | ( | bool | on | ) |

Enables or disables tracking.

If tracking is enabled, the slider emits the valueChanged() signal while the movable part of the slider is being dragged. If tracking is disabled, the slider emits the valueChanged() signal only when the user releases the slider.

Tracking is enabled by default.

Parameters

  on | `true` (enable) or `false` (disable) tracking.

See also
  isTracking(), sliderMoved()

Definition at line 177 of file qwt_abstract_slider.cpp.

## ◆ setValid()

void QwtAbstractSlider::setValid | ( | bool | on | ) |

Set the value to be valid/invalid

Parameters

  on | When true, the value is invalidated

See also
  setValue()

Definition at line 113 of file qwt_abstract_slider.cpp.

## ◆ setValue

void QwtAbstractSlider::setValue | ( | double | value | ) |
| slot

Set the slider to the specified value

Parameters

  value | New value

See also
  setValid(), sliderChange(), valueChanged()

Definition at line 570 of file qwt_abstract_slider.cpp.

## ◆ setWrapping()

void QwtAbstractSlider::setWrapping | ( | bool | on | ) |

If wrapping is true stepping up from upperBound() value will take you to the minimum() value and vice versa.

Parameters

  on | En/Disable wrapping

See also
  wrapping()

Definition at line 599 of file qwt_abstract_slider.cpp.

## ◆ singleSteps()

uint QwtAbstractSlider::singleSteps | ( |  | ) | const

Returns
  Number of steps

See also
  setSingleSteps(), totalSteps(), pageSteps()

Definition at line 508 of file qwt_abstract_slider.cpp.

## ◆ sliderMoved

void QwtAbstractSlider::sliderMoved | ( | double | value | ) |
| signal

This signal is emitted when the user moves the slider with the mouse.

Parameters

  value | New value

See also
  valueChanged()

## ◆ sliderPressed

void QwtAbstractSlider::sliderPressed | ( |  | ) |
| signal

This signal is emitted when the user presses the movable part of the slider.

## ◆ sliderReleased

void QwtAbstractSlider::sliderReleased | ( |  | ) |
| signal

This signal is emitted when the user releases the movable part of the slider.

## ◆ stepAlignment()

bool QwtAbstractSlider::stepAlignment | ( |  | ) | const

Returns
  True, when step alignment is enabled

See also
  setStepAlignment()

Definition at line 559 of file qwt_abstract_slider.cpp.

## ◆ totalSteps()

uint QwtAbstractSlider::totalSteps | ( |  | ) | const

Returns
  Number of steps

See also
  setTotalSteps(), singleSteps(), pageSteps()

Definition at line 483 of file qwt_abstract_slider.cpp.

## ◆ valueChanged

void QwtAbstractSlider::valueChanged | ( | double | value | ) |
| signal

Notify a change of value.

When tracking is enabled (default setting), this signal will be emitted every time the value changes.

Parameters

  value | New value

See also
  setTracking(), sliderMoved()

## ◆ wheelEvent()

void QwtAbstractSlider::wheelEvent | ( | QWheelEvent * | event | ) |
| overrideprotectedvirtual

Wheel Event handler

In/decreases the value by s number of steps. The direction depends on the invertedControls() property.

When the control or shift modifier is pressed the wheel delta ( divided by 120 ) is mapped to an increment according to pageSteps(). Otherwise it is mapped to singleSteps().

Parameters

  event | Wheel event

Reimplemented in QwtDial.

Definition at line 296 of file qwt_abstract_slider.cpp.

## ◆ wrapping()

bool QwtAbstractSlider::wrapping | ( |  | ) | const

Returns
  True, when wrapping is set

See also
  setWrapping()

Definition at line 608 of file qwt_abstract_slider.cpp.