|
Graphics.UI.Gtk.Entry.SpinButton | Portability | portable (depends on GHC) | Stability | provisional | Maintainer | gtk2hs-users@lists.sourceforge.net |
|
|
|
|
|
Description |
Retrieve an integer or floating-point number from the user
|
|
Synopsis |
|
|
|
|
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
|
|
| GObject
| +----Object
| +----Widget
| +----Entry
| +----SpinButton
|
|
Types
|
|
data SpinButton |
Instances | |
|
|
class EntryClass o => SpinButtonClass o |
| Instances | |
|
|
castToSpinButton :: GObjectClass obj => obj -> SpinButton |
|
toSpinButton :: SpinButtonClass o => o -> SpinButton |
|
Constructors
|
|
spinButtonNew |
:: Adjustment | adjustment - the Adjustment object that this spin
button should use.
| -> Double | climbRate - specifies how much the spin button
changes when an arrow is clicked on.
| -> Int | digits - the number of decimal places to display.
| -> IO SpinButton | | Creates a new SpinButton.
|
|
|
spinButtonNewWithRange |
:: Double | min - Minimum allowable value
| -> Double | max - Maximum allowable value
| -> Double | step - Increment added or subtracted by spinning the
widget
| -> 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
|
|
spinButtonConfigure |
:: SpinButtonClass self | | => self | | -> Adjustment | adjustment - a Adjustment.
| -> Double | climbRate - the new climb rate.
| -> Int | digits - the number of decimal places to display in the
spin button.
| -> 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.
|
|
|
spinButtonSetAdjustment |
|
|
spinButtonGetAdjustment |
|
|
spinButtonSetDigits |
:: SpinButtonClass self | | => self | | -> Int | digits - the number of digits after the decimal point to be
displayed for the spin button's value
| -> IO () | | Set the precision to be displayed by spinButton. Up to 20 digit
precision is allowed.
|
|
|
spinButtonGetDigits |
|
|
spinButtonSetIncrements |
:: SpinButtonClass self | | => self | | -> Double | step - increment applied for a button 1 press.
| -> Double | page - increment applied for a button 2 press.
| -> 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.
|
|
|
spinButtonGetIncrements |
:: SpinButtonClass self | | => self | | -> IO (Double, Double) | (step, page) - step increment and page increment
| Gets the current step and page the increments used by the spin button. See
spinButtonSetIncrements.
|
|
|
spinButtonSetRange |
:: SpinButtonClass self | | => self | | -> Double | min - minimum allowable value
| -> Double | max - maximum allowable value
| -> IO () | | Sets the minimum and maximum allowable values for the spin button
|
|
|
spinButtonGetRange |
:: SpinButtonClass self | | => self | | -> IO (Double, Double) | (min, max) - minimum and maximum allowed value
| Gets the range allowed for the spin button. See spinButtonSetRange.
|
|
|
spinButtonGetValue :: SpinButtonClass self => self -> IO Double |
Get the value of the spin button as a floating point value.
|
|
spinButtonGetValueAsInt :: SpinButtonClass self => self -> IO Int |
Get the value of the spin button as an integral value.
|
|
spinButtonSetValue :: SpinButtonClass self => self -> Double -> IO () |
Set the value of the spin button.
|
|
data SpinButtonUpdatePolicy |
Whether to clamp or ignore illegal values.
| Constructors | UpdateAlways | | UpdateIfValid | |
| Instances | |
|
|
spinButtonSetUpdatePolicy |
|
|
spinButtonGetUpdatePolicy |
|
|
spinButtonSetNumeric |
:: SpinButtonClass self | | => self | | -> Bool | numeric - flag indicating if only numeric entry is allowed.
| -> IO () | | Sets the flag that determines if non-numeric text can be typed into the
spin button.
|
|
|
spinButtonGetNumeric |
:: SpinButtonClass self | | => self | | -> IO Bool | returns True if only numeric text can be entered
| Returns whether non-numeric text can be typed into the spin button. See
spinButtonSetNumeric.
|
|
|
data SpinType |
Spin a SpinButton with the following method.
| Constructors | SpinStepForward | | SpinStepBackward | | SpinPageForward | | SpinPageBackward | | SpinHome | | SpinEnd | | SpinUserDefined | |
| Instances | |
|
|
spinButtonSpin |
:: SpinButtonClass self | | => self | | -> SpinType | direction - a SpinType indicating the direction to spin.
| -> Double | increment - step increment to apply in the specified
direction.
| -> IO () | | Increment or decrement a spin button's value in a specified direction by
a specified amount.
|
|
|
spinButtonSetWrap |
:: SpinButtonClass self | | => self | | -> Bool | wrap - a flag indicating if wrapping behavior is performed.
| -> 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.
|
|
|
spinButtonGetWrap |
:: SpinButtonClass self | | => self | | -> IO Bool | returns True if the spin button wraps around
| 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.
|
|
|
spinButtonSetSnapToTicks |
:: SpinButtonClass self | | => self | | -> Bool | snapToTicks - a flag indicating if invalid values should be
corrected.
| -> 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.
|
|
|
spinButtonGetSnapToTicks |
|
|
spinButtonUpdate :: SpinButtonClass self => self -> IO () |
Manually force an update of the spin button.
|
|
Attributes
|
|
spinButtonAdjustment :: SpinButtonClass self => Attr self Adjustment |
The adjustment that holds the value of the spinbutton.
|
|
spinButtonClimbRate :: SpinButtonClass self => Attr self Double |
The acceleration rate when you hold down a button.
Allowed values: >= 0
Default value: 0
|
|
spinButtonDigits :: SpinButtonClass self => Attr self Int |
The number of decimal places to display.
Allowed values: <= 20
Default value: 0
|
|
spinButtonSnapToTicks :: SpinButtonClass self => Attr self Bool |
Whether erroneous values are automatically changed to a spin button's
nearest step increment.
Default value: False
|
|
spinButtonNumeric :: SpinButtonClass self => Attr self Bool |
Whether non-numeric characters should be ignored.
Default value: False
|
|
spinButtonWrap :: SpinButtonClass self => Attr self Bool |
Whether a spin button should wrap upon reaching its limits.
Default value: False
|
|
spinButtonUpdatePolicy :: SpinButtonClass self => Attr self SpinButtonUpdatePolicy |
Whether the spin button should update always, or only when the value is
legal.
Default value: UpdateAlways
|
|
spinButtonValue :: SpinButtonClass self => Attr self Double |
Reads the current value, or sets a new value.
Default value: 0
|
|
Signals
|
|
onInput :: SpinButtonClass sb => sb -> IO (Maybe Double) -> IO (ConnectId sb) |
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.
|
|
afterInput :: SpinButtonClass sb => sb -> IO (Maybe Double) -> IO (ConnectId sb) |
|
onOutput :: SpinButtonClass sb => sb -> IO Bool -> IO (ConnectId sb) |
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.
|
|
afterOutput :: SpinButtonClass sb => sb -> IO Bool -> IO (ConnectId sb) |
|
onValueSpinned :: SpinButtonClass sb => sb -> IO () -> IO (ConnectId sb) |
The value of the spin button has changed.
|
|
afterValueSpinned :: SpinButtonClass sb => sb -> IO () -> IO (ConnectId sb) |
|
Produced by Haddock version 0.8 |