Fl_Widget | +----Fl_Valuator | +----Fl_Adjuster, Fl_Counter, Fl_Dial, Fl_Roller, Fl_Slider, Fl_Value_Input, Fl_Value_Output,
#include <FL/Fl_Valuator.H>
There are probably more of these classes in FLTK than any others:
In the above diagram each box surrounds an actual subclass. These are further differentiated by setting the type() of the widget to the symbolic value labeling the widget. The ones labelled "0" are the default versions with a type(0). For consistency the symbol FL_VERTICAL is defined as zero.
Creates a new Fl_Valuator widget using the given position, size, and label string. The default boxtype is FL_NO_BOX.
Destroys the valuator.
Sets the minimum (a) and maximum (b) values for the valuator widget.
This value is true if the user has moved the slider. It is turned off by value(x) and just before doing a callback (the callback can turn it back on if desired).
Clamps the passed value to the valuator range.
Clears the changed() flag.
Format the passed value to show enough digits so that for the current step value. If the step has been set to zero then it does a %g format. The characters are written into the passed buffer.
Adds n times the step value to the passed value. If step was set to zero it uses fabs(maximum() - minimum()) / 100.
Gets or sets the maximum value for the valuator.
Gets or sets the minimum value for the valuator.
Sets the step value to 1/10digits.
Sets the minimum and maximum values for the valuator. When
the user manipulates the widget, the value is limited to this
range. This clamping is done after rounding to the step
value (this makes a difference if the range is not a multiple of
the step).
The minimum may be greater than the maximum. This has the
effect of "reversing" the object so the larger values
are in the opposite direction. This also switches which end of
the filled sliders is filled. Some widgets consider this a "soft" range. This
means they will stop at the range, but if the user releases and
grabs the control again and tries to move it further, it is
allowed. The range may affect the display. You must redraw()
the widget after changing the range. Round the passed value to the nearest step increment. Does
nothing if step is zero.
Sets the changed() flag.
Gets or sets the step value. As the user moves the mouse the
value is rounded to the nearest multiple of the step value. This
is done before clamping it to the range. For most widgets
the default step is zero.
For precision the step is stored as the ratio of two
integers, A/B. You can set these integers directly. Currently
setting a floating point value sets the nearest A/1 or 1/B value
possible. Gets or sets the current value. The new value is not
clamped or otherwise changed before storing it. Use
clamp() or round() to modify the value before
calling value(). The widget is redrawn if the new value
is different than the current one. The initial value is zero.
void Fl_Valuator::range(double min,
double max);
double Fl_Valuator::round(double)
void Fl_Valuator::set_changed()
double Fl_Valuator::step() const
void Fl_Valuator::step(double)
void Fl_Valuator::step(int A, int B)double Fl_Valuator::value() const
int Fl_Valuator::value(double)