KDEUI
KDoubleNumInput Class Reference
#include <knuminput.h>

Detailed Description
An input control for real numbers, consisting of a spinbox and a slider.KDoubleNumInput combines a QSpinBox and optionally a QSlider with a label to make an easy to use control for setting some float parameter. This is especially nice for configuration dialogs, which can have many such combinated controls.
The slider is created only when the user specifies a range for the control using the setRange function with the slider parameter set to "true".
A special feature of KDoubleNumInput, designed specifically for the situation when there are several instances in a column, is that you can specify what portion of the control is taken by the QSpinBox (the remaining portion is used by the slider). This makes it very simple to have all the sliders in a column be the same size.
It uses the KDoubleValidator validator class. KDoubleNumInput enforces the value to be in the given range, but see the class documentation of KDoubleSpinBox for the tricky interrelationship of precision and values. All of what is said there applies here, too.
- See also:
- KIntNumInput, KDoubleSpinBox
Definition at line 427 of file knuminput.h.
Public Slots | |
void | setPrefix (const QString &prefix) |
void | setReferencePoint (double ref) |
void | setRelativeValue (double) |
void | setSuffix (const QString &suffix) |
void | setValue (double) |
Signals | |
void | relativeValueChanged (double) |
void | valueChanged (double) |
Public Member Functions | |
int | decimals () const |
KDE_CONSTRUCTOR_DEPRECATED | KDoubleNumInput (KNumInput *below, double lower, double upper, double value, QWidget *parent=0, double step=0.02, int precision=2) |
KDoubleNumInput (double lower, double upper, double value, QWidget *parent=0, double step=0.01, int precision=2) | |
KDoubleNumInput (QWidget *parent=0) | |
double | maximum () const |
double | minimum () const |
virtual QSize | minimumSizeHint () const |
QString | prefix () const |
double | referencePoint () const |
double | relativeValue () const |
void | setDecimals (int decimals) |
virtual void | setLabel (const QString &label, Qt::Alignment a=Qt::AlignLeft|Qt::AlignTop) |
void | setMaximum (double max) |
void | setMinimum (double min) |
void | setPrecision (int precision) |
void | setRange (double min, double max, double step=1, bool slider=true) |
void | setSpecialValueText (const QString &text) |
QString | specialValueText () const |
QString | suffix () const |
double | value () const |
virtual | ~KDoubleNumInput () |
Protected Member Functions | |
virtual void | doLayout () |
void | resizeEvent (QResizeEvent *) |
Properties | |
int | decimals |
double | maximum |
double | minimum |
QString | prefix |
double | referencePoint |
double | relativeValue |
QString | specialValueText |
QString | suffix |
double | value |
Constructor & Destructor Documentation
KDoubleNumInput::KDoubleNumInput | ( | QWidget * | parent = 0 |
) | [explicit] |
Constructs an input control for double values with initial value 0.00.
Definition at line 616 of file knuminput.cpp.
KDoubleNumInput::KDoubleNumInput | ( | double | lower, | |
double | upper, | |||
double | value, | |||
QWidget * | parent = 0 , |
|||
double | step = 0.01 , |
|||
int | precision = 2 | |||
) |
Constructor.
- Parameters:
-
lower lower boundary value upper upper boundary value value initial value for the control step step size to use for up/down arrow clicks precision number of digits after the decimal point parent parent QWidget
Definition at line 624 of file knuminput.cpp.
KDoubleNumInput::~KDoubleNumInput | ( | ) | [virtual] |
KDoubleNumInput::KDoubleNumInput | ( | KNumInput * | below, | |
double | lower, | |||
double | upper, | |||
double | value, | |||
QWidget * | parent = 0 , |
|||
double | step = 0.02 , |
|||
int | precision = 2 | |||
) |
Constructor.
the difference here is the "below" parameter. It tells this instance that it is visually put below some other KNumInput widget. Note that these two KNumInput's need not to have the same parent widget or be in the same layout group. The effect is that it'll adjust its layout in correspondence with the layout of the other KNumInput's (you can build an arbitrary long chain).
- Parameters:
-
below append KDoubleNumInput to the KDoubleNumInput chain lower lower boundary value upper upper boundary value value initial value for the control step step size to use for up/down arrow clicks precision number of digits after the decimal point parent parent QWidget
- Deprecated:
- use the version without below instead
Definition at line 632 of file knuminput.cpp.
Member Function Documentation
int KDoubleNumInput::decimals | ( | ) | const |
void KDoubleNumInput::doLayout | ( | ) | [protected, virtual] |
You need to overwrite this method and implement your layout calculations there.
See KIntNumInput::doLayout and KDoubleNumInput::doLayout implementation for details.
Implements KNumInput.
Definition at line 789 of file knuminput.cpp.
double KDoubleNumInput::maximum | ( | ) | const |
- Returns:
- the maximum value.
double KDoubleNumInput::minimum | ( | ) | const |
- Returns:
- the minimum value.
QSize KDoubleNumInput::minimumSizeHint | ( | ) | const [virtual] |
Definition at line 721 of file knuminput.cpp.
QString KDoubleNumInput::prefix | ( | ) | const |
double KDoubleNumInput::referencePoint | ( | ) | const |
- Returns:
- the reference point for relativeValue calculation
double KDoubleNumInput::relativeValue | ( | ) | const |
- Returns:
- the current value in units of referencePoint.
void KDoubleNumInput::relativeValueChanged | ( | double | ) | [signal] |
This is an overloaded member function, provided for convenience.
It essentially behaves like the above function.
Contains the value in units of referencePoint.
void KDoubleNumInput::resizeEvent | ( | QResizeEvent * | e | ) | [protected] |
void KDoubleNumInput::setDecimals | ( | int | decimals | ) |
void KDoubleNumInput::setLabel | ( | const QString & | label, | |
Qt::Alignment | a = Qt::AlignLeft | Qt::AlignTop | |||
) | [virtual] |
Sets the text and alignment of the main description label.
- Parameters:
-
label The text of the label. Use QString() to remove an existing one. a The alignment of the label (Qt::Alignment). Default is Qt:AlignLeft
|Qt:AlignTop
.
Qt:AlignTop
The label is placed above the edit/sliderQt:AlignVCenter
The label is placed left beside the editQt:AlignBottom
The label is placed below the edit/slider
Reimplemented from KNumInput.
Definition at line 951 of file knuminput.cpp.
void KDoubleNumInput::setMaximum | ( | double | max | ) |
void KDoubleNumInput::setMinimum | ( | double | min | ) |
void KDoubleNumInput::setPrecision | ( | int | precision | ) | [inline] |
Definition at line 549 of file knuminput.h.
void KDoubleNumInput::setPrefix | ( | const QString & | prefix | ) | [slot] |
Sets the prefix to be displayed to prefix
.
Use QString() to disable this feature. Note that the prefix is attached to the value without any spacing.
- See also:
- setPrefix()
Definition at line 924 of file knuminput.cpp.
- Parameters:
-
min minimum value
- Parameters:
-
max maximum value step step size for the QSlider slider whether the slider is created or not
Definition at line 817 of file knuminput.cpp.
void KDoubleNumInput::setReferencePoint | ( | double | ref | ) | [slot] |
Sets the reference Point to ref
.
It ref
== 0, emitting of relativeValueChanged is blocked and relativeValue just returns 0.
Definition at line 810 of file knuminput.cpp.
void KDoubleNumInput::setRelativeValue | ( | double | r | ) | [slot] |
void KDoubleNumInput::setSpecialValueText | ( | const QString & | text | ) |
Sets the special value text.
If set, the spin box will display this text instead of the numeric value whenever the current value is equal to minVal(). Typically this is used for indicating that the choice has a special (default) meaning.
Definition at line 943 of file knuminput.cpp.
void KDoubleNumInput::setSuffix | ( | const QString & | suffix | ) | [slot] |
Sets the suffix to be displayed to suffix
.
Use QString() to disable this feature. Note that the suffix is attached to the value without any spacing. So if you prefer to display a space separator, set suffix to something like " cm".
- See also:
- setSuffix()
Definition at line 917 of file knuminput.cpp.
void KDoubleNumInput::setValue | ( | double | val | ) | [slot] |
QString KDoubleNumInput::specialValueText | ( | ) | const |
QString KDoubleNumInput::suffix | ( | ) | const |
double KDoubleNumInput::value | ( | ) | const |
- Returns:
- the current value.
void KDoubleNumInput::valueChanged | ( | double | ) | [signal] |
Emitted every time the value changes (by calling setValue() or by user interaction).
Property Documentation
int KDoubleNumInput::decimals [read, write] |
Definition at line 436 of file knuminput.h.
double KDoubleNumInput::maximum [read, write] |
Definition at line 432 of file knuminput.h.
double KDoubleNumInput::minimum [read, write] |
Definition at line 431 of file knuminput.h.
QString KDoubleNumInput::prefix [read, write] |
Definition at line 434 of file knuminput.h.
double KDoubleNumInput::referencePoint [read, write] |
Definition at line 437 of file knuminput.h.
double KDoubleNumInput::relativeValue [read, write] |
Definition at line 438 of file knuminput.h.
QString KDoubleNumInput::specialValueText [read, write] |
Definition at line 435 of file knuminput.h.
QString KDoubleNumInput::suffix [read, write] |
Definition at line 433 of file knuminput.h.
double KDoubleNumInput::value [read, write] |
Definition at line 430 of file knuminput.h.
The documentation for this class was generated from the following files: