Qwt User's Guide svn
Public Member Functions | Protected Member Functions
QwtDoubleRange Class Reference

#include <qwt_double_range.h>

Inherited by QwtAbstractSlider, and QwtCounter.

List of all members.

Public Member Functions

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
 QwtDoubleRange ()
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
virtual ~QwtDoubleRange ()

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.

QwtDoubleRange::~QwtDoubleRange ( ) [virtual]

Destroys the QwtDoubleRange.


Member Function Documentation

double QwtDoubleRange::exactPrevValue ( ) const [protected]

Returns the exact previous value.

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 fitValue() or 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:
xvalue
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:
nPagesNumber 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:
nStepsNumber 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.

bool QwtDoubleRange::isValid ( ) const

Indicates if the value is valid.

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()

Reimplemented in QwtCounter.

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()

Reimplemented in QwtCounter.

int QwtDoubleRange::pageSize ( ) const

Returns the page size in steps.

bool QwtDoubleRange::periodic ( ) const

Returns true if the range is periodic.

See also:
setPeriodic()
double QwtDoubleRange::prevValue ( ) const [protected]

Returns the previous value.

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:
tftrue for a periodic range
void QwtDoubleRange::setRange ( double  vmin,
double  vmax,
double  vstep = 0.0,
int  pageSize = 1 
)

Specify range and step size.

Parameters:
vminlower boundary of the interval
vmaxhigher boundary of the interval
vstepstep width
pageSizepage 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:
vstepnew step width
Warning:
The value will not be adjusted to the new step raster.

Reimplemented in QwtCounter.

void QwtDoubleRange::setValid ( bool  isValid)

Set the value to be valid/invalid.

Reimplemented in QwtAbstractSlider.

void QwtDoubleRange::setValue ( double  x) [virtual]

Set a new value without adjusting to the step raster.

Parameters:
xnew 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, and QwtCounter.

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.

double QwtDoubleRange::value ( ) const

Returns the current value.

Reimplemented in QwtCounter.

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.

qmi style