Qwt User's Guide: QwtSlider Class Reference

- Main Page
- Classes
- Files
- Related Pages

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# QwtSlider Class Reference

Inheritance diagram for QwtSlider:

[legend]
Collaboration diagram for QwtSlider:

[legend]
List of all members.

## Detailed Description

The Slider Widget.

QwtSlider is a slider widget which operates on an interval of type double. QwtSlider supports different layouts as well as a scale.

See also:
  QwtAbstractSlider and QwtAbstractScale for the descriptions of the inherited members.

Definition at line 34 of file qwt_slider.h.

## Public Types
enum | ScalePos { NoScale, LeftScale, RightScale, TopScale, BottomScale }
enum | BGSTYLE { BgTrough = 0x1, BgSlot = 0x2, BgBoth = BgTrough | BgSlot }
## Public Member Functions
| QwtSlider (QWidget *parent, Qt::Orientation=Qt::Horizontal, ScalePos=NoScale, BGSTYLE bgStyle=BgTrough)
virtual | ~QwtSlider ()
virtual void | setOrientation (Qt::Orientation)
void | setBgStyle (BGSTYLE)
BGSTYLE | bgStyle () const
void | setScalePosition (ScalePos s)
ScalePos | scalePosition () const
int | thumbLength () const
int | thumbWidth () const
int | borderWidth () const
void | setThumbLength (int l)
void | setThumbWidth (int w)
void | setBorderWidth (int bw)
void | setMargins (int x, int y)
virtual QSize | sizeHint () const
virtual QSize | minimumSizeHint () const
void | setScaleDraw (QwtScaleDraw *)
const QwtScaleDraw * | scaleDraw () const
## Protected Member Functions
virtual double | getValue (const QPoint &p)
virtual void | getScrollMode (const QPoint &p, int &scrollMode, int &direction)
void | draw (QPainter *p, const QRect &update_rect)
virtual void | drawSlider (QPainter *p, const QRect &r)
virtual void | drawThumb (QPainter *p, const QRect &, int pos)
virtual void | resizeEvent (QResizeEvent *e)
virtual void | paintEvent (QPaintEvent *e)
virtual void | valueChange ()
virtual void | rangeChange ()
virtual void | scaleChange ()
virtual void | fontChange (const QFont &oldFont)
void | layoutSlider (bool update=true)
int | xyPosition (double v) const
QwtScaleDraw * | scaleDraw ()

## Member Enumeration Documentation

enum QwtSlider::BGSTYLE

| Background style. See also: QwtSlider::QwtSlider Definition at line 70 of file qwt_slider.h.

enum QwtSlider::ScalePos

| Scale position. QwtSlider tries to enforce valid combinations of its orientation and scale position: Qt::Horizonal combines with NoScale, TopScale and BottomScale Qt::Vertical combines with NoScale, LeftScale and RightScale See also: QwtSlider::QwtSlider Definition at line 56 of file qwt_slider.h.

## Constructor & Destructor Documentation

QwtSlider::QwtSlider | ( | QWidget * | parent,
|  | Qt::Orientation | orientation = `Qt::Horizontal`,
|  | ScalePos | scalePos = `NoScale`,
|  | BGSTYLE | bgStyle = `BgTrough`
| ) | `[explicit]`

  | Constructor. Parameters:
  | parent | parent widget
  | orientation | Orientation of the slider. Can be Qt::Horizontal or Qt::Vertical. Defaults to Qt::Horizontal.
  | scalePos | Position of the scale. Defaults to QwtSlider::NoScale.
  | bgStyle | Background style. QwtSlider::BgTrough draws the slider button in a trough, QwtSlider::BgSlot draws a slot underneath the button. An or-combination of both may also be used. The default is QwtSlider::BgTrough.
QwtSlider enforces valid combinations of its orientation and scale position. If the combination is invalid, the scale position will be set to NoScale. Valid combinations are: Qt::Horizonal with NoScale, TopScale, or BottomScale; Qt::Vertical with NoScale, LeftScale, or RightScale. Definition at line 64 of file qwt_slider.cpp.

## Member Function Documentation

QwtSlider::BGSTYLE QwtSlider::bgStyle | ( |  | ) | const

| Returns: the background style. Definition at line 735 of file qwt_slider.cpp.

int QwtSlider::borderWidth | ( |  | ) | const

| Returns: the border width. Definition at line 759 of file qwt_slider.cpp.

void QwtSlider::draw | ( | QPainter * | p,
|  | const QRect & | update_rect
| ) | `[protected]`

| Draw the QwtSlider. Definition at line 517 of file qwt_slider.cpp. References QwtAbstractScaleDraw::draw(), QwtPainter::drawFocusRect(), drawSlider(), and scaleDraw(). Referenced by paintEvent().

void QwtSlider::drawSlider | ( | QPainter * | p,
|  | const QRect & | r
| ) | `[protected, virtual]`

| Draw the slider into the specified rectangle. Definition at line 319 of file qwt_slider.cpp. References drawThumb(), QwtAbstractSlider::isValid(), QwtAbstractSlider::orientation(), QwtDoubleRange::value(), and xyPosition(). Referenced by draw().

void QwtSlider::drawThumb | ( | QPainter * | p,
|  | const QRect & | ,
|  | int | pos
| ) | `[protected, virtual]`

| Draw the thumb at a position. Definition at line 395 of file qwt_slider.cpp. References QwtAbstractSlider::orientation(). Referenced by drawSlider().

void QwtSlider::fontChange | ( | const QFont & | oldFont | ) | `[protected, virtual]`

| Notify change in font. Definition at line 312 of file qwt_slider.cpp. References layoutSlider().

void QwtSlider::getScrollMode | ( | const QPoint & | p,
|  | int & | scrollMode,
|  | int & | direction
| ) | `[protected, virtual]`

  | Determine scrolling mode and direction. Parameters:
  | p | point
  | scrollMode | Scrolling mode
  | direction | Direction
Implements QwtAbstractSlider. Definition at line 472 of file qwt_slider.cpp.

double QwtSlider::getValue | ( | const QPoint & | p | ) | `[protected, virtual]`

| Determine the value corresponding to a specified mouse location. Implements QwtAbstractSlider. Definition at line 459 of file qwt_slider.cpp. References QwtAbstractSlider::orientation().

void QwtSlider::layoutSlider | ( | bool | update_geometry = `true` | ) | `[protected]`

  | Recalculate the slider's geometry and layout based on the current rect and fonts. Parameters:
  | update_geometry | notify the layout system and call update to redraw the scale
Definition at line 546 of file qwt_slider.cpp. References QwtScaleDraw::getBorderDistHint(), QwtScaleDraw::move(), QwtAbstractSlider::orientation(), scaleDraw(), and QwtScaleDraw::setLength(). Referenced by fontChange(), rangeChange(), resizeEvent(), scaleChange(), setBgStyle(), setBorderWidth(), setMargins(), setOrientation(), setScalePosition(), setThumbLength(), and setThumbWidth().

QSize QwtSlider::minimumSizeHint | ( |  | ) | const`[virtual]`

| Return a minimum size hint. Warning: The return value of QwtSlider::minimumSizeHint() depends on the font and the scale. Definition at line 777 of file qwt_slider.cpp. References QwtScaleDraw::extent(), QwtScaleDraw::getBorderDistHint(), QwtScaleDraw::minLength(), QwtAbstractSlider::orientation(), and scaleDraw(). Referenced by sizeHint().

void QwtSlider::paintEvent | ( | QPaintEvent * | e | ) | `[protected, virtual]`

| Qt paint event. Definition at line 501 of file qwt_slider.cpp. References draw().

void QwtSlider::rangeChange | ( |  | ) | `[protected, virtual]`

| Notify change of range. Reimplemented from QwtDoubleRange. Definition at line 692 of file qwt_slider.cpp. References QwtAbstractScale::autoScale(), layoutSlider(), QwtDoubleRange::maxValue(), QwtDoubleRange::minValue(), QwtDoubleRange::rangeChange(), and QwtAbstractScale::rescale().

void QwtSlider::resizeEvent | ( | QResizeEvent * | e | ) | `[protected, virtual]`

| Qt resize event. Definition at line 535 of file qwt_slider.cpp. References layoutSlider().

void QwtSlider::scaleChange | ( |  | ) | `[protected, virtual]`

| Notify changed scale. Reimplemented from QwtAbstractScale. Definition at line 305 of file qwt_slider.cpp. References layoutSlider().

QwtSlider::ScalePos QwtSlider::scalePosition | ( |  | ) | const

| Return the scale position. Definition at line 236 of file qwt_slider.cpp.

void QwtSlider::setBgStyle | ( | BGSTYLE | st | ) |

| Set the background style. Definition at line 726 of file qwt_slider.cpp. References layoutSlider().

void QwtSlider::setBorderWidth | ( | int | bd | ) |

  | Change the slider's border width. Parameters:
  | bd | border width
Definition at line 245 of file qwt_slider.cpp. References layoutSlider().

void QwtSlider::setMargins | ( | int | xMargin,
|  | int | yMargin
| ) |

  | Set distances between the widget's border and internals. Parameters:
  | xMargin | Horizontal margin
  | yMargin | Vertical margin
Definition at line 708 of file qwt_slider.cpp. References layoutSlider().

void QwtSlider::setOrientation | ( | Qt::Orientation | o | ) | `[virtual]`

  | Set the orientation. Parameters:
  | o | Orientation. Allowed values are Qt::Horizontal and Qt::Vertical.
If the new orientation and the old scale position are an invalid combination, the scale position will be set to QwtSlider::NoScale. See also: QwtAbstractSlider::orientation() Reimplemented from QwtAbstractSlider. Definition at line 174 of file qwt_slider.cpp. References layoutSlider(), QwtAbstractSlider::orientation(), and QwtAbstractSlider::setOrientation(). Referenced by setScalePosition().

void QwtSlider::setScalePosition | ( | ScalePos | s | ) |

  | Change the scale position (and slider orientation). Parameters:
  | s | Position of the scale.
A valid combination of scale position and orientation is enforced: if the new scale position is Left or Right, the scale orientation will become Qt::Vertical; if the new scale position is Bottom or Top the scale orientation will become Qt::Horizontal; if the new scale position is QwtSlider::NoScale, the scale orientation will not change. Definition at line 224 of file qwt_slider.cpp. References layoutSlider(), and setOrientation().

void QwtSlider::setThumbLength | ( | int | thumbLength | ) |

  | Set the slider's thumb length. Parameters:
  | thumbLength | new length
Definition at line 261 of file qwt_slider.cpp. References layoutSlider().

void QwtSlider::setThumbWidth | ( | int | w | ) |

  | Change the width of the thumb. Parameters:
  | w | new width
Definition at line 277 of file qwt_slider.cpp. References layoutSlider().

QSize QwtSlider::sizeHint | ( |  | ) | const`[virtual]`

| Returns: QwtSlider::minimumSizeHint() Definition at line 767 of file qwt_slider.cpp. References minimumSizeHint().

int QwtSlider::thumbLength | ( |  | ) | const

| Returns: the thumb length. Definition at line 743 of file qwt_slider.cpp.

int QwtSlider::thumbWidth | ( |  | ) | const

| Returns: the thumb width. Definition at line 751 of file qwt_slider.cpp.

void QwtSlider::valueChange | ( |  | ) | `[protected, virtual]`

| Notify change of value. Reimplemented from QwtAbstractSlider. Definition at line 684 of file qwt_slider.cpp. References QwtAbstractSlider::valueChange().

int QwtSlider::xyPosition | ( | double | v | ) | const`[protected]`

| Find the x/y position for a given value v. Definition at line 453 of file qwt_slider.cpp. Referenced by drawSlider().