| Portability | portable (depends on GHC) | 
|---|---|
| Stability | provisional | 
| Maintainer | gtk2hs-users@lists.sourceforge.net | 
| Safe Haskell | Safe-Infered | 
Graphics.UI.Gtk.Entry.SpinButton
Description
Retrieve an integer or floating-point number from the user
- data SpinButton
 - class EntryClass o => SpinButtonClass o
 - castToSpinButton :: GObjectClass obj => obj -> SpinButton
 - gTypeSpinButton :: GType
 - toSpinButton :: SpinButtonClass o => o -> SpinButton
 - spinButtonNew :: Adjustment -> Double -> Int -> IO SpinButton
 - spinButtonNewWithRange :: Double -> Double -> Double -> IO SpinButton
 - spinButtonConfigure :: SpinButtonClass self => self -> Adjustment -> Double -> Int -> IO ()
 - spinButtonSetAdjustment :: SpinButtonClass self => self -> Adjustment -> IO ()
 - spinButtonGetAdjustment :: SpinButtonClass self => self -> IO Adjustment
 - spinButtonSetDigits :: SpinButtonClass self => self -> Int -> IO ()
 - spinButtonGetDigits :: SpinButtonClass self => self -> IO Int
 - spinButtonSetIncrements :: SpinButtonClass self => self -> Double -> Double -> IO ()
 - spinButtonGetIncrements :: SpinButtonClass self => self -> IO (Double, Double)
 - spinButtonSetRange :: SpinButtonClass self => self -> Double -> Double -> IO ()
 - spinButtonGetRange :: SpinButtonClass self => self -> IO (Double, Double)
 - spinButtonGetValue :: SpinButtonClass self => self -> IO Double
 - spinButtonGetValueAsInt :: SpinButtonClass self => self -> IO Int
 - spinButtonSetValue :: SpinButtonClass self => self -> Double -> IO ()
 - data SpinButtonUpdatePolicy
 - spinButtonSetUpdatePolicy :: SpinButtonClass self => self -> SpinButtonUpdatePolicy -> IO ()
 - spinButtonGetUpdatePolicy :: SpinButtonClass self => self -> IO SpinButtonUpdatePolicy
 - spinButtonSetNumeric :: SpinButtonClass self => self -> Bool -> IO ()
 - spinButtonGetNumeric :: SpinButtonClass self => self -> IO Bool
 - data SpinType
 - spinButtonSpin :: SpinButtonClass self => self -> SpinType -> Double -> IO ()
 - spinButtonSetWrap :: SpinButtonClass self => self -> Bool -> IO ()
 - spinButtonGetWrap :: SpinButtonClass self => self -> IO Bool
 - spinButtonSetSnapToTicks :: SpinButtonClass self => self -> Bool -> IO ()
 - spinButtonGetSnapToTicks :: SpinButtonClass self => self -> IO Bool
 - spinButtonUpdate :: SpinButtonClass self => self -> IO ()
 - spinButtonAdjustment :: SpinButtonClass self => Attr self Adjustment
 - spinButtonClimbRate :: SpinButtonClass self => Attr self Double
 - spinButtonDigits :: SpinButtonClass self => Attr self Int
 - spinButtonSnapToTicks :: SpinButtonClass self => Attr self Bool
 - spinButtonNumeric :: SpinButtonClass self => Attr self Bool
 - spinButtonWrap :: SpinButtonClass self => Attr self Bool
 - spinButtonUpdatePolicy :: SpinButtonClass self => Attr self SpinButtonUpdatePolicy
 - spinButtonValue :: SpinButtonClass self => Attr self Double
 - onInput, afterInput :: SpinButtonClass sb => sb -> IO (Maybe Double) -> IO (ConnectId sb)
 - onOutput, afterOutput :: SpinButtonClass sb => sb -> IO Bool -> IO (ConnectId sb)
 - onValueSpinned, afterValueSpinned :: SpinButtonClass sb => sb -> IO () -> IO (ConnectId sb)
 
Detail
A SpinButton is an ideal way to allow the user to set the value of some
 attribute. Rather than having to directly type a number into a Entry,
 SpinButton allows the user to click on one of two arrows to increment or
 decrement the displayed value. A value can still be typed in, with the bonus
 that it can be checked to ensure it is in a given range.
The main properties of a SpinButton are through a Adjustment. See the
 Adjustment section for more details about an adjustment's properties.
Class Hierarchy
Types
data SpinButton Source
class EntryClass o => SpinButtonClass o Source
Instances
castToSpinButton :: GObjectClass obj => obj -> SpinButtonSource
toSpinButton :: SpinButtonClass o => o -> SpinButtonSource
Constructors
Arguments
| :: Adjustment | 
  | 
| -> Double | 
  | 
| -> Int | 
  | 
| -> IO SpinButton | 
Creates a new SpinButton.
Arguments
| :: Double | 
  | 
| -> Double | 
  | 
| -> Double | 
  | 
| -> IO SpinButton | 
This is a convenience constructor that allows creation of a numeric
 SpinButton without manually creating an adjustment. The value is initially
 set to the minimum value and a page increment of 10 * step is the default.
 The precision of the spin button is equivalent to the precision of step.
Note that the way in which the precision is derived works best if step
 is a power of ten. If the resulting precision is not suitable for your
 needs, use spinButtonSetDigits to correct it.
Methods
Arguments
| :: SpinButtonClass self | |
| => self | |
| -> Adjustment | 
  | 
| -> Double | 
  | 
| -> Int | 
  | 
| -> IO () | 
Changes the properties of an existing spin button. The adjustment, climb rate, and number of decimal places are all changed accordingly, after this function call.
Arguments
| :: SpinButtonClass self | |
| => self | |
| -> Adjustment | 
  | 
| -> IO () | 
Replaces the Adjustment associated with the spin button.
Arguments
| :: SpinButtonClass self | |
| => self | |
| -> IO Adjustment | returns the   | 
Get the adjustment associated with a SpinButton
Arguments
| :: SpinButtonClass self | |
| => self | |
| -> Int | 
  | 
| -> IO () | 
Set the precision to be displayed by spinButton. Up to 20 digit
 precision is allowed.
Arguments
| :: SpinButtonClass self | |
| => self | |
| -> IO Int | returns the current precision  | 
Fetches the precision of spinButton. See spinButtonSetDigits.
Arguments
| :: SpinButtonClass self | |
| => self | |
| -> Double | 
  | 
| -> Double | 
  | 
| -> IO () | 
Sets the step and page increments for the spin button. This affects how quickly the value changes when the spin button's arrows are activated.
Arguments
| :: SpinButtonClass self | |
| => self | |
| -> IO (Double, Double) | 
  | 
Gets the current step and page the increments used by the spin button. See
 spinButtonSetIncrements.
Arguments
| :: SpinButtonClass self | |
| => self | |
| -> Double | 
  | 
| -> Double | 
  | 
| -> IO () | 
Sets the minimum and maximum allowable values for the spin button
Arguments
| :: SpinButtonClass self | |
| => self | |
| -> IO (Double, Double) | 
  | 
Gets the range allowed for the spin button. See spinButtonSetRange.
spinButtonGetValue :: SpinButtonClass self => self -> IO DoubleSource
Get the value of the spin button as a floating point value.
spinButtonGetValueAsInt :: SpinButtonClass self => self -> IO IntSource
Get the value of the spin button as an integral value.
spinButtonSetValue :: SpinButtonClass self => self -> Double -> IO ()Source
Set the value of the spin button.
data SpinButtonUpdatePolicy Source
Whether to clamp or ignore illegal values.
Constructors
| UpdateAlways | |
| UpdateIfValid | 
spinButtonSetUpdatePolicySource
Arguments
| :: SpinButtonClass self | |
| => self | |
| -> SpinButtonUpdatePolicy | 
  | 
| -> IO () | 
Sets the update behavior of a spin button. This determines whether the spin button is always updated or only when a valid value is set.
spinButtonGetUpdatePolicySource
Arguments
| :: SpinButtonClass self | |
| => self | |
| -> IO SpinButtonUpdatePolicy | returns the current update policy  | 
Gets the update behavior of a spin button. See
 spinButtonSetUpdatePolicy.
Arguments
| :: SpinButtonClass self | |
| => self | |
| -> Bool | 
  | 
| -> IO () | 
Sets the flag that determines if non-numeric text can be typed into the spin button.
Arguments
| :: SpinButtonClass self | |
| => self | |
| -> IO Bool | returns   | 
Returns whether non-numeric text can be typed into the spin button. See
 spinButtonSetNumeric.
Spin a SpinButton with the following method.
Arguments
| :: SpinButtonClass self | |
| => self | |
| -> SpinType | 
  | 
| -> Double | 
  | 
| -> IO () | 
Increment or decrement a spin button's value in a specified direction by a specified amount.
Arguments
| :: SpinButtonClass self | |
| => self | |
| -> Bool | 
  | 
| -> IO () | 
Sets the flag that determines if a spin button value wraps around to the opposite limit when the upper or lower limit of the range is exceeded.
Arguments
| :: SpinButtonClass self | |
| => self | |
| -> IO Bool | returns   | 
Returns whether the spin button's value wraps around to the opposite
 limit when the upper or lower limit of the range is exceeded. See
 spinButtonSetWrap.
spinButtonSetSnapToTicksSource
Arguments
| :: SpinButtonClass self | |
| => self | |
| -> Bool | 
  | 
| -> IO () | 
Sets the policy as to whether values are corrected to the nearest step increment when a spin button is activated after providing an invalid value.
spinButtonGetSnapToTicksSource
Arguments
| :: SpinButtonClass self | |
| => self | |
| -> IO Bool | returns   | 
Returns whether the values are corrected to the nearest step. See
 spinButtonSetSnapToTicks.
spinButtonUpdate :: SpinButtonClass self => self -> IO ()Source
Manually force an update of the spin button.
Attributes
spinButtonAdjustment :: SpinButtonClass self => Attr self AdjustmentSource
The adjustment that holds the value of the spinbutton.
spinButtonClimbRate :: SpinButtonClass self => Attr self DoubleSource
The acceleration rate when you hold down a button.
Allowed values: >= 0
Default value: 0
spinButtonDigits :: SpinButtonClass self => Attr self IntSource
The number of decimal places to display.
Allowed values: <= 20
Default value: 0
spinButtonSnapToTicks :: SpinButtonClass self => Attr self BoolSource
Whether erroneous values are automatically changed to a spin button's nearest step increment.
Default value: False
spinButtonNumeric :: SpinButtonClass self => Attr self BoolSource
Whether non-numeric characters should be ignored.
Default value: False
spinButtonWrap :: SpinButtonClass self => Attr self BoolSource
Whether a spin button should wrap upon reaching its limits.
Default value: False
spinButtonUpdatePolicy :: SpinButtonClass self => Attr self SpinButtonUpdatePolicySource
Whether the spin button should update always, or only when the value is legal.
Default value: UpdateAlways
spinButtonValue :: SpinButtonClass self => Attr self DoubleSource
Reads the current value, or sets a new value.
Default value: 0
Signals
onInput, afterInput :: SpinButtonClass sb => sb -> IO (Maybe Double) -> IO (ConnectId sb)Source
Install a custom input handler.
- This signal is called upon each time the value of the SpinButton is set by spinButtonSetValue. The function can return Nothing if the value is no good.
 
onOutput, afterOutput :: SpinButtonClass sb => sb -> IO Bool -> IO (ConnectId sb)Source
Install a custom output handler.
- This handler makes it possible to query the current value and to render something completely different to the screen using entrySetText. The return value must be False in order to let the default output routine run after this signal returns.
 
onValueSpinned, afterValueSpinned :: SpinButtonClass sb => sb -> IO () -> IO (ConnectId sb)Source
The value of the spin button has changed.