Qwt User's Guide 5.2.3

- Main Page
- Related Pages
- Classes

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Protected Member Functions
QwtDoubleRange Class Reference

`#include <qwt_double_range.h>`

Inheritance diagram for QwtDoubleRange:
[legend]

List of all members.

## Public Member Functions

| QwtDoubleRange ()
virtual | ~QwtDoubleRange ()
virtual void | fitValue (double)
virtual void | incPages (int)
virtual void | incValue (int)
bool | isValid () const
double | maxValue () const
double | minValue () const
int | pageSize () const
bool | periodic () const
void | setPeriodic (bool tf)
void | setRange (double vmin, double vmax, double vstep=0.0, int pagesize=1)
void | setStep (double)
void | setValid (bool)
virtual void | setValue (double)
double | step () const
double | value () const

## Protected Member Functions

double | exactPrevValue () const
double | exactValue () const
double | prevValue () const
virtual void | rangeChange ()
virtual void | stepChange ()
virtual void | valueChange ()

## Detailed Description

A class which controls a value within an interval.

This class is useful as a base class or a member for sliders. It represents an interval of type double within which a value can be moved. The value can be either an arbitrary point inside the interval (see QwtDoubleRange::setValue), or it can be fitted into a step raster (see QwtDoubleRange::fitValue and QwtDoubleRange::incValue).

As a special case, a QwtDoubleRange can be periodic, which means that a value outside the interval will be mapped to a value inside the interval when QwtDoubleRange::setValue(), QwtDoubleRange::fitValue(), QwtDoubleRange::incValue() or QwtDoubleRange::incPages() are called.

## Constructor & Destructor Documentation

QwtDoubleRange::QwtDoubleRange | ( |  | ) |

The range is initialized to [0.0, 100.0], the step size to 1.0, and the value to 0.0.

## Member Function Documentation

double QwtDoubleRange::exactValue | ( |  | ) | const

protected

Returns the exact value.

The exact value is the value which QwtDoubleRange::value would return if the value were not adjusted to the step raster. It differs from the current value only if QwtDoubleRange::fitValue or QwtDoubleRange::incValue have been used before. This function is intended for internal use in derived classes.

void QwtDoubleRange::fitValue | ( | double | x | ) |

virtual

Adjust the value to the closest point in the step raster.

Parameters:

  x | value

Warning:
  The value is clipped when it lies outside the range. When the range is QwtDoubleRange::periodic, it will be mapped to a point in the interval such that

      new value := x + n * (max. value - min. value)

  with an integer number n.

Reimplemented in QwtAbstractSlider.

void QwtDoubleRange::incPages | ( | int | nPages | ) |

virtual

Increment the value by a specified number of pages.

Parameters:

  nPages | Number of pages to increment. A negative number decrements the value.

Warning:
  The Page size is specified in the constructor.

void QwtDoubleRange::incValue | ( | int | nSteps | ) |

virtual

Increment the value by a specified number of steps.

Parameters:

  nSteps | Number of steps to increment

Warning:
  As a result of this operation, the new value will always be adjusted to the step raster.

Reimplemented in QwtAbstractSlider.

double QwtDoubleRange::maxValue | ( |  | ) | const

Returns the value of the second border of the range.

maxValue returns the value which has been specified as the second parameter in QwtDoubleRange::setRange.

See also:
  setRange()

double QwtDoubleRange::minValue | ( |  | ) | const

Returns the value at the first border of the range.

minValue returns the value which has been specified as the first parameter in setRange().

See also:
  setRange()

bool QwtDoubleRange::periodic | ( |  | ) | const

Returns true if the range is periodic.

See also:
  setPeriodic()

void QwtDoubleRange::rangeChange | ( |  | ) |

protected virtual

Notify a change of the range.

This virtual function is called whenever the range changes. The default implementation does nothing.

Reimplemented in QwtDial, QwtCounter, and QwtSlider.

void QwtDoubleRange::setPeriodic | ( | bool | tf | ) |

Make the range periodic.

When the range is periodic, the value will be set to a point inside the interval such that

    point = value + n * width

if the user tries to set a new value which is outside the range. If the range is nonperiodic (the default), values outside the range will be clipped.

Parameters:

  tf | true for a periodic range

void QwtDoubleRange::setRange | ( | double | vmin,
|  | double | vmax,
|  | double | vstep = `0.0`,
|  | int | pageSize = `1`
| ) |  |

Specify range and step size.

Parameters:

  vmin | lower boundary of the interval
  vmax | higher boundary of the interval
  vstep | step width
  pageSize | page size in steps

Warning:
  - A change of the range changes the value if it lies outside the new range. The current value will not be adjusted to the new step raster.
  - vmax < vmin is allowed.
  - If the step size is left out or set to zero, it will be set to 1/100 of the interval length.
  - If the step size has an absurd value, it will be corrected to a better one.

void QwtDoubleRange::setStep | ( | double | vstep | ) |

Change the step raster.

Parameters:

  vstep | new step width

Warning:
  The value will not be adjusted to the new step raster.

Reimplemented in QwtCounter.

void QwtDoubleRange::setValue | ( | double | x | ) |

virtual

Set a new value without adjusting to the step raster.

Parameters:

  x | new value

Warning:
  The value is clipped when it lies outside the range. When the range is QwtDoubleRange::periodic, it will be mapped to a point in the interval such that

      new value := x + n * (max. value - min. value)

  with an integer number n.

Reimplemented in QwtCounter, and QwtAbstractSlider.

double QwtDoubleRange::step | ( |  | ) | const

Returns:
  the step size

See also:
  setStep(), setRange()

Reimplemented in QwtCounter.

void QwtDoubleRange::stepChange | ( |  | ) |

protected virtual

Notify a change of the step size.

This virtual function is called whenever the step size changes. The default implementation does nothing.

void QwtDoubleRange::valueChange | ( |  | ) |

protected virtual

Notify a change of value.

This virtual function is called whenever the value changes. The default implementation does nothing.

Reimplemented in QwtDial, QwtAbstractSlider, QwtSlider, and QwtWheel.