• Skip to content
  • Skip to link menu
Trinity API Reference
  • Trinity API Reference
  • kdeui
 

kdeui

Public Slots | Signals | Public Member Functions | Protected Slots | Protected Member Functions | Properties | List of all members
KDoubleSpinBox Class Reference

#include <knuminput.h>

Inherits TQSpinBox.

Public Slots

virtual void setValue (double value)
 

Signals

void valueChanged (double value)
 

Public Member Functions

 KDoubleSpinBox (TQWidget *parent=0, const char *name=0)
 
 KDoubleSpinBox (double lower, double upper, double step, double value, int precision=2, TQWidget *parent=0, const char *name=0)
 
bool acceptLocalizedNumbers () const
 
virtual void setAcceptLocalizedNumbers (bool accept)
 
void setRange (double lower, double upper, double step=0.01, int precision=2)
 
int precision () const
 
void setPrecision (int precision)
 
virtual void setPrecision (int precision, bool force)
 
double value () const
 
double minValue () const
 
void setMinValue (double value)
 
double maxValue () const
 
void setMaxValue (double value)
 
double lineStep () const
 
void setLineStep (double step)
 
void setValidator (const TQValidator *)
 

Protected Slots

void slotValueChanged (int value)
 

Protected Member Functions

virtual TQString mapValueToText (int)
 
virtual int mapTextToValue (bool *)
 
virtual void virtual_hook (int id, void *data)
 

Properties

TQ_OBJECT bool acceptLocalizedNumbers
 
int precision
 

Detailed Description

A spin box for fractional numbers.

This class provides a spin box for fractional numbers.

KDE Fractional Number Spinbox

See below for code examples on how to use this class.

Parameters
To make successful use of KDoubleSpinBox, you need to understand the relationship between precision and available range.

  • precision: The number of digits after the decimal point.
  • maxValue/minValue: upper and lower bounds of the valid range
  • lineStep: the size of the step that is made when the user hits the up or down buttons

Since we work with fixed-point numbers internally, the maximum precision is a function of the valid range and vice versa. More precisely, the following relationships hold:

max( abs(minValue()), abs(maxValue() ) <= INT_MAX/10^precision
maxPrecision = floor( log10( INT_MAX/max(abs(minValue()),abs(maxValue())) ) )
KDoubleSpinBox::minValue
double minValue() const
Definition: knuminput.cpp:1120
KDoubleSpinBox::maxValue
double maxValue() const
Definition: knuminput.cpp:1132

Since the value, bounds and lineStep are rounded to the current precision, you may find that the order of setting these parameters matters. As an example, the following are not equivalent (try it!):

// sets precision,
// then min/max value (rounded to precision and clipped to obtainable range if needed)
// then value and lineStep
KDoubleSpinBox * spin = new KDoubleSpinBox( 0, 9.999, 0.001, 4.321, 3, this );
// sets minValue to 0; maxValue to 10.00(!); value to 4.32(!) and only then
// increases the precision - too late, since e.g. value has already been rounded...
KDoubleSpinBox * spin = new KDoubleSpinBox( this );
spin->setMinValue( 0 );
spin->setMaxValue( 9.999 );
spin->setValue( 4.321 );
spin->setPrecision( 3 );
KDoubleSpinBox
A spin box for fractional numbers.
Definition: knuminput.h:838
KDoubleSpinBox::KDoubleSpinBox
KDoubleSpinBox(TQWidget *parent=0, const char *name=0)
Constructs a KDoubleSpinBox with parent parent and default values for range and value (whatever QRang...
Definition: knuminput.cpp:1012
KDoubleSpinBox::setPrecision
void setPrecision(int precision)
Equivalent to setPrecision( precision, false ); Needed since Qt's moc doesn't ignore trailing paramet...
Definition: knuminput.cpp:1062
KDoubleSpinBox::setValue
virtual void setValue(double value)
Sets the current value to value, subject to the constraints that value is first rounded to the curren...
Definition: knuminput.cpp:1107
KDoubleSpinBox::setMaxValue
void setMaxValue(double value)
Sets the upper bound of the range to value, subject to the contraints that value is first rounded to ...
Definition: knuminput.cpp:1136
KDoubleSpinBox::setMinValue
void setMinValue(double value)
Sets the lower bound of the range to value, subject to the contraints that value is first rounded to ...
Definition: knuminput.cpp:1124
Author
Marc Mutz mutz@.nosp@m.kde..nosp@m.org
Version
$Id$
Since
3.1

Definition at line 838 of file knuminput.h.

Constructor & Destructor Documentation

◆ KDoubleSpinBox() [1/2]

KDoubleSpinBox::KDoubleSpinBox ( TQWidget *  parent = 0,
const char *  name = 0 
)

Constructs a KDoubleSpinBox with parent parent and default values for range and value (whatever QRangeControl uses) and precision (2).

Definition at line 1012 of file knuminput.cpp.

◆ KDoubleSpinBox() [2/2]

KDoubleSpinBox::KDoubleSpinBox ( double  lower,
double  upper,
double  step,
double  value,
int  precision = 2,
TQWidget *  parent = 0,
const char *  name = 0 
)

Constructs a KDoubleSpinBox with parent parent, range [ lower, upper ], lineStep step, precision precision and initial value value.

Definition at line 1021 of file knuminput.cpp.

Member Function Documentation

◆ acceptLocalizedNumbers()

bool KDoubleSpinBox::acceptLocalizedNumbers ( ) const
Returns
whether the spinbox uses localized numbers

Definition at line 1037 of file knuminput.cpp.

◆ lineStep()

double KDoubleSpinBox::lineStep ( ) const
Returns
the current step size

Definition at line 1143 of file knuminput.cpp.

◆ maxValue()

double KDoubleSpinBox::maxValue ( ) const
Returns
the current upper bound

Definition at line 1132 of file knuminput.cpp.

◆ minValue()

double KDoubleSpinBox::minValue ( ) const
Returns
the current lower bound

Definition at line 1120 of file knuminput.cpp.

◆ precision()

int KDoubleSpinBox::precision ( ) const
Returns
the current number of digits displayed to the right of the decimal point.

Definition at line 1058 of file knuminput.cpp.

◆ setAcceptLocalizedNumbers()

void KDoubleSpinBox::setAcceptLocalizedNumbers ( bool  accept)
virtual

Sets whether to use and accept localized numbers as returned by KLocale::formatNumber()

Definition at line 1043 of file knuminput.cpp.

◆ setLineStep()

void KDoubleSpinBox::setLineStep ( double  step)

Sets the step size for clicking the up/down buttons to step, subject to the constraints that step is first rounded to the current precision and then clipped to the meaningful interval [ 1, maxValue() - minValue() ].

Definition at line 1147 of file knuminput.cpp.

◆ setMaxValue()

void KDoubleSpinBox::setMaxValue ( double  value)

Sets the upper bound of the range to value, subject to the contraints that value is first rounded to the current precision and then clipped to the maximum range interval that can be handled at that precision.

See also
minValue, maxValue, setMinValue, setRange

Definition at line 1136 of file knuminput.cpp.

◆ setMinValue()

void KDoubleSpinBox::setMinValue ( double  value)

Sets the lower bound of the range to value, subject to the contraints that value is first rounded to the current precision and then clipped to the maximum range interval that can be handled at that precision.

See also
maxValue, minValue, setMaxValue, setRange

Definition at line 1124 of file knuminput.cpp.

◆ setPrecision() [1/2]

void KDoubleSpinBox::setPrecision ( int  precision)

Equivalent to setPrecision( precision, false ); Needed since Qt's moc doesn't ignore trailing parameters with default args when searching for a property setter method.

Definition at line 1062 of file knuminput.cpp.

◆ setPrecision() [2/2]

void KDoubleSpinBox::setPrecision ( int  precision,
bool  force 
)
virtual

Sets the precision (number of digits to the right of the decimal point).

Note that there is a tradeoff between the precision used and the available range of values. See the class documentation above for more information on this.

Parameters
precisionthe new precision to use
forceif true, disables checking of bounds violations that can arise if you increase the precision so much that the minimum and maximum values can't be represented anymore. Disabling is useful if you were going to disable range control in any case.

Definition at line 1066 of file knuminput.cpp.

◆ setRange()

void KDoubleSpinBox::setRange ( double  lower,
double  upper,
double  step = 0.01,
int  precision = 2 
)

Sets a new range for the spin box values.

Note that lower, upper and step are rounded to precision decimal points first.

Definition at line 1048 of file knuminput.cpp.

◆ setValidator()

void KDoubleSpinBox::setValidator ( const TQValidator *  )

Overridden to ignore any setValidator() calls.

Definition at line 1177 of file knuminput.cpp.

◆ setValue

void KDoubleSpinBox::setValue ( double  value)
virtualslot

Sets the current value to value, subject to the constraints that value is first rounded to the current precision and then clipped to the interval [ minValue() , maxValue() ].

Definition at line 1107 of file knuminput.cpp.

◆ value()

double KDoubleSpinBox::value ( ) const
Returns
the current value

Definition at line 1103 of file knuminput.cpp.

◆ valueChanged

void KDoubleSpinBox::valueChanged ( double  value)
signal

Emitted whenever TQSpinBox::valueChanged( int ) is emitted.


The documentation for this class was generated from the following files:
  • knuminput.h
  • knuminput.cpp

kdeui

Skip menu "kdeui"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

kdeui

Skip menu "kdeui"
  • arts
  • dcop
  • dnssd
  • interfaces
  •     interface
  •     library
  •   kspeech
  •   ktexteditor
  • kabc
  • kate
  • kcmshell
  • kdecore
  • kded
  • kdefx
  • kdeprint
  • kdesu
  • kdeui
  • kdoctools
  • khtml
  • kimgio
  • kinit
  • kio
  •   bookmarks
  •   httpfilter
  •   kfile
  •   kio
  •   kioexec
  •   kpasswdserver
  •   kssl
  • kioslave
  •   http
  • kjs
  • kmdi
  •   kmdi
  • knewstuff
  • kparts
  • krandr
  • kresources
  • kspell2
  • kunittest
  • kutils
  • kwallet
  • libkmid
  • libkscreensaver
Generated for kdeui by doxygen 1.9.1
This website is maintained by Timothy Pearson.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. |