Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria (garetxe@gmail.com) |
Safe Haskell | None |
Language | Haskell2010 |
GI.Gtk.Objects.Range
Contents
- Exported types
- Methods
- getAdjustment
- getFillLevel
- getFlippable
- getInverted
- getLowerStepperSensitivity
- getMinSliderSize
- getRangeRect
- getRestrictToFillLevel
- getRoundDigits
- getShowFillLevel
- getSliderRange
- getSliderSizeFixed
- getUpperStepperSensitivity
- getValue
- setAdjustment
- setFillLevel
- setFlippable
- setIncrements
- setInverted
- setLowerStepperSensitivity
- setMinSliderSize
- setRange
- setRestrictToFillLevel
- setRoundDigits
- setShowFillLevel
- setSliderSizeFixed
- setUpperStepperSensitivity
- setValue
- Properties
- Signals
Description
Range
is the common base class for widgets which visualize an
adjustment, e.g Scale
or Scrollbar
.
Apart from signals for monitoring the parameters of the adjustment,
Range
provides properties and methods for influencing the sensitivity
of the “steppers”. It also provides properties and methods for setting a
“fill level” on range widgets. See rangeSetFillLevel
.
- newtype Range = Range (ManagedPtr Range)
- class GObject o => IsRange o
- toRange :: (MonadIO m, IsRange o) => o -> m Range
- noRange :: Maybe Range
- rangeGetAdjustment :: (HasCallStack, MonadIO m, IsRange a) => a -> m Adjustment
- rangeGetFillLevel :: (HasCallStack, MonadIO m, IsRange a) => a -> m Double
- rangeGetFlippable :: (HasCallStack, MonadIO m, IsRange a) => a -> m Bool
- rangeGetInverted :: (HasCallStack, MonadIO m, IsRange a) => a -> m Bool
- rangeGetLowerStepperSensitivity :: (HasCallStack, MonadIO m, IsRange a) => a -> m SensitivityType
- rangeGetMinSliderSize :: (HasCallStack, MonadIO m, IsRange a) => a -> m Int32
- rangeGetRangeRect :: (HasCallStack, MonadIO m, IsRange a) => a -> m Rectangle
- rangeGetRestrictToFillLevel :: (HasCallStack, MonadIO m, IsRange a) => a -> m Bool
- rangeGetRoundDigits :: (HasCallStack, MonadIO m, IsRange a) => a -> m Int32
- rangeGetShowFillLevel :: (HasCallStack, MonadIO m, IsRange a) => a -> m Bool
- rangeGetSliderRange :: (HasCallStack, MonadIO m, IsRange a) => a -> m (Int32, Int32)
- rangeGetSliderSizeFixed :: (HasCallStack, MonadIO m, IsRange a) => a -> m Bool
- rangeGetUpperStepperSensitivity :: (HasCallStack, MonadIO m, IsRange a) => a -> m SensitivityType
- rangeGetValue :: (HasCallStack, MonadIO m, IsRange a) => a -> m Double
- rangeSetAdjustment :: (HasCallStack, MonadIO m, IsRange a, IsAdjustment b) => a -> b -> m ()
- rangeSetFillLevel :: (HasCallStack, MonadIO m, IsRange a) => a -> Double -> m ()
- rangeSetFlippable :: (HasCallStack, MonadIO m, IsRange a) => a -> Bool -> m ()
- rangeSetIncrements :: (HasCallStack, MonadIO m, IsRange a) => a -> Double -> Double -> m ()
- rangeSetInverted :: (HasCallStack, MonadIO m, IsRange a) => a -> Bool -> m ()
- rangeSetLowerStepperSensitivity :: (HasCallStack, MonadIO m, IsRange a) => a -> SensitivityType -> m ()
- rangeSetMinSliderSize :: (HasCallStack, MonadIO m, IsRange a) => a -> Int32 -> m ()
- rangeSetRange :: (HasCallStack, MonadIO m, IsRange a) => a -> Double -> Double -> m ()
- rangeSetRestrictToFillLevel :: (HasCallStack, MonadIO m, IsRange a) => a -> Bool -> m ()
- rangeSetRoundDigits :: (HasCallStack, MonadIO m, IsRange a) => a -> Int32 -> m ()
- rangeSetShowFillLevel :: (HasCallStack, MonadIO m, IsRange a) => a -> Bool -> m ()
- rangeSetSliderSizeFixed :: (HasCallStack, MonadIO m, IsRange a) => a -> Bool -> m ()
- rangeSetUpperStepperSensitivity :: (HasCallStack, MonadIO m, IsRange a) => a -> SensitivityType -> m ()
- rangeSetValue :: (HasCallStack, MonadIO m, IsRange a) => a -> Double -> m ()
- constructRangeAdjustment :: (IsRange o, IsAdjustment a) => a -> IO (GValueConstruct o)
- getRangeAdjustment :: (MonadIO m, IsRange o) => o -> m Adjustment
- setRangeAdjustment :: (MonadIO m, IsRange o, IsAdjustment a) => o -> a -> m ()
- constructRangeFillLevel :: IsRange o => Double -> IO (GValueConstruct o)
- getRangeFillLevel :: (MonadIO m, IsRange o) => o -> m Double
- setRangeFillLevel :: (MonadIO m, IsRange o) => o -> Double -> m ()
- constructRangeInverted :: IsRange o => Bool -> IO (GValueConstruct o)
- getRangeInverted :: (MonadIO m, IsRange o) => o -> m Bool
- setRangeInverted :: (MonadIO m, IsRange o) => o -> Bool -> m ()
- constructRangeLowerStepperSensitivity :: IsRange o => SensitivityType -> IO (GValueConstruct o)
- getRangeLowerStepperSensitivity :: (MonadIO m, IsRange o) => o -> m SensitivityType
- setRangeLowerStepperSensitivity :: (MonadIO m, IsRange o) => o -> SensitivityType -> m ()
- constructRangeRestrictToFillLevel :: IsRange o => Bool -> IO (GValueConstruct o)
- getRangeRestrictToFillLevel :: (MonadIO m, IsRange o) => o -> m Bool
- setRangeRestrictToFillLevel :: (MonadIO m, IsRange o) => o -> Bool -> m ()
- constructRangeRoundDigits :: IsRange o => Int32 -> IO (GValueConstruct o)
- getRangeRoundDigits :: (MonadIO m, IsRange o) => o -> m Int32
- setRangeRoundDigits :: (MonadIO m, IsRange o) => o -> Int32 -> m ()
- constructRangeShowFillLevel :: IsRange o => Bool -> IO (GValueConstruct o)
- getRangeShowFillLevel :: (MonadIO m, IsRange o) => o -> m Bool
- setRangeShowFillLevel :: (MonadIO m, IsRange o) => o -> Bool -> m ()
- constructRangeUpperStepperSensitivity :: IsRange o => SensitivityType -> IO (GValueConstruct o)
- getRangeUpperStepperSensitivity :: (MonadIO m, IsRange o) => o -> m SensitivityType
- setRangeUpperStepperSensitivity :: (MonadIO m, IsRange o) => o -> SensitivityType -> m ()
- type C_RangeAdjustBoundsCallback = Ptr () -> CDouble -> Ptr () -> IO ()
- type RangeAdjustBoundsCallback = Double -> IO ()
- afterRangeAdjustBounds :: (IsRange a, MonadIO m) => a -> RangeAdjustBoundsCallback -> m SignalHandlerId
- genClosure_RangeAdjustBounds :: RangeAdjustBoundsCallback -> IO Closure
- mk_RangeAdjustBoundsCallback :: C_RangeAdjustBoundsCallback -> IO (FunPtr C_RangeAdjustBoundsCallback)
- noRangeAdjustBoundsCallback :: Maybe RangeAdjustBoundsCallback
- onRangeAdjustBounds :: (IsRange a, MonadIO m) => a -> RangeAdjustBoundsCallback -> m SignalHandlerId
- wrap_RangeAdjustBoundsCallback :: RangeAdjustBoundsCallback -> Ptr () -> CDouble -> Ptr () -> IO ()
- type C_RangeChangeValueCallback = Ptr () -> CUInt -> CDouble -> Ptr () -> IO CInt
- type RangeChangeValueCallback = ScrollType -> Double -> IO Bool
- afterRangeChangeValue :: (IsRange a, MonadIO m) => a -> RangeChangeValueCallback -> m SignalHandlerId
- genClosure_RangeChangeValue :: RangeChangeValueCallback -> IO Closure
- mk_RangeChangeValueCallback :: C_RangeChangeValueCallback -> IO (FunPtr C_RangeChangeValueCallback)
- noRangeChangeValueCallback :: Maybe RangeChangeValueCallback
- onRangeChangeValue :: (IsRange a, MonadIO m) => a -> RangeChangeValueCallback -> m SignalHandlerId
- wrap_RangeChangeValueCallback :: RangeChangeValueCallback -> Ptr () -> CUInt -> CDouble -> Ptr () -> IO CInt
- type C_RangeMoveSliderCallback = Ptr () -> CUInt -> Ptr () -> IO ()
- type RangeMoveSliderCallback = ScrollType -> IO ()
- afterRangeMoveSlider :: (IsRange a, MonadIO m) => a -> RangeMoveSliderCallback -> m SignalHandlerId
- genClosure_RangeMoveSlider :: RangeMoveSliderCallback -> IO Closure
- mk_RangeMoveSliderCallback :: C_RangeMoveSliderCallback -> IO (FunPtr C_RangeMoveSliderCallback)
- noRangeMoveSliderCallback :: Maybe RangeMoveSliderCallback
- onRangeMoveSlider :: (IsRange a, MonadIO m) => a -> RangeMoveSliderCallback -> m SignalHandlerId
- wrap_RangeMoveSliderCallback :: RangeMoveSliderCallback -> Ptr () -> CUInt -> Ptr () -> IO ()
- type C_RangeValueChangedCallback = Ptr () -> Ptr () -> IO ()
- type RangeValueChangedCallback = IO ()
- afterRangeValueChanged :: (IsRange a, MonadIO m) => a -> RangeValueChangedCallback -> m SignalHandlerId
- genClosure_RangeValueChanged :: RangeValueChangedCallback -> IO Closure
- mk_RangeValueChangedCallback :: C_RangeValueChangedCallback -> IO (FunPtr C_RangeValueChangedCallback)
- noRangeValueChangedCallback :: Maybe RangeValueChangedCallback
- onRangeValueChanged :: (IsRange a, MonadIO m) => a -> RangeValueChangedCallback -> m SignalHandlerId
- wrap_RangeValueChangedCallback :: RangeValueChangedCallback -> Ptr () -> Ptr () -> IO ()
Exported types
Constructors
Range (ManagedPtr Range) |
Methods
getAdjustment
Arguments
:: (HasCallStack, MonadIO m, IsRange a) | |
=> a |
|
-> m Adjustment | Returns: a |
Get the Adjustment
which is the “model” object for Range
.
See rangeSetAdjustment
for details.
The return value does not have a reference added, so should not
be unreferenced.
getFillLevel
Arguments
:: (HasCallStack, MonadIO m, IsRange a) | |
=> a |
|
-> m Double | Returns: The current fill level |
Gets the current position of the fill level indicator.
Since: 2.12
getFlippable
Arguments
:: (HasCallStack, MonadIO m, IsRange a) | |
=> a |
|
-> m Bool | Returns: |
Gets the value set by rangeSetFlippable
.
Since: 2.18
getInverted
Arguments
:: (HasCallStack, MonadIO m, IsRange a) | |
=> a |
|
-> m Bool | Returns: |
Gets the value set by rangeSetInverted
.
getLowerStepperSensitivity
rangeGetLowerStepperSensitivity Source #
Arguments
:: (HasCallStack, MonadIO m, IsRange a) | |
=> a |
|
-> m SensitivityType | Returns: The lower stepper’s sensitivity policy. |
Gets the sensitivity policy for the stepper that points to the 'lower' end of the GtkRange’s adjustment.
Since: 2.10
getMinSliderSize
rangeGetMinSliderSize Source #
Arguments
:: (HasCallStack, MonadIO m, IsRange a) | |
=> a |
|
-> m Int32 | Returns: The minimum size of the range’s slider. |
Deprecated: (Since version 3.20)Use the min-height/min-width CSS properties on the slider node.
This function is useful mainly for Range
subclasses.
Since: 2.20
getRangeRect
Arguments
:: (HasCallStack, MonadIO m, IsRange a) | |
=> a |
|
-> m Rectangle |
This function returns the area that contains the range’s trough and its steppers, in widget->window coordinates.
This function is useful mainly for Range
subclasses.
Since: 2.20
getRestrictToFillLevel
rangeGetRestrictToFillLevel Source #
Arguments
:: (HasCallStack, MonadIO m, IsRange a) | |
=> a |
|
-> m Bool | Returns: |
Gets whether the range is restricted to the fill level.
Since: 2.12
getRoundDigits
Arguments
:: (HasCallStack, MonadIO m, IsRange a) | |
=> a |
|
-> m Int32 | Returns: the number of digits to round to |
Gets the number of digits to round the value to when
it changes. See Range
::change-value
.
Since: 2.24
getShowFillLevel
rangeGetShowFillLevel Source #
Arguments
:: (HasCallStack, MonadIO m, IsRange a) | |
=> a |
|
-> m Bool | Returns: |
Gets whether the range displays the fill level graphically.
Since: 2.12
getSliderRange
This function returns sliders range along the long dimension, in widget->window coordinates.
This function is useful mainly for Range
subclasses.
Since: 2.20
getSliderSizeFixed
rangeGetSliderSizeFixed Source #
Arguments
:: (HasCallStack, MonadIO m, IsRange a) | |
=> a |
|
-> m Bool | Returns: whether the range’s slider has a fixed size. |
getUpperStepperSensitivity
rangeGetUpperStepperSensitivity Source #
Arguments
:: (HasCallStack, MonadIO m, IsRange a) | |
=> a |
|
-> m SensitivityType | Returns: The upper stepper’s sensitivity policy. |
Gets the sensitivity policy for the stepper that points to the 'upper' end of the GtkRange’s adjustment.
Since: 2.10
getValue
Arguments
:: (HasCallStack, MonadIO m, IsRange a) | |
=> a |
|
-> m Double | Returns: current value of the range. |
Gets the current value of the range.
setAdjustment
Arguments
:: (HasCallStack, MonadIO m, IsRange a, IsAdjustment b) | |
=> a |
|
-> b |
|
-> m () |
Sets the adjustment to be used as the “model” object for this range
widget. The adjustment indicates the current range value, the
minimum and maximum range values, the step/page increments used
for keybindings and scrolling, and the page size. The page size
is normally 0 for Scale
and nonzero for Scrollbar
, and
indicates the size of the visible area of the widget being scrolled.
The page size affects the size of the scrollbar slider.
setFillLevel
Arguments
:: (HasCallStack, MonadIO m, IsRange a) | |
=> a |
|
-> Double |
|
-> m () |
Set the new position of the fill level indicator.
The “fill level” is probably best described by its most prominent use case, which is an indicator for the amount of pre-buffering in a streaming media player. In that use case, the value of the range would indicate the current play position, and the fill level would be the position up to which the file/stream has been downloaded.
This amount of prebuffering can be displayed on the range’s trough
and is themeable separately from the trough. To enable fill level
display, use rangeSetShowFillLevel
. The range defaults
to not showing the fill level.
Additionally, it’s possible to restrict the range’s slider position
to values which are smaller than the fill level. This is controller
by rangeSetRestrictToFillLevel
and is by default
enabled.
Since: 2.12
setFlippable
Arguments
:: (HasCallStack, MonadIO m, IsRange a) | |
=> a |
|
-> Bool |
|
-> m () |
If a range is flippable, it will switch its direction if it is
horizontal and its direction is TextDirectionRtl
.
See widgetGetDirection
.
Since: 2.18
setIncrements
setInverted
Arguments
:: (HasCallStack, MonadIO m, IsRange a) | |
=> a |
|
-> Bool |
|
-> m () |
Ranges normally move from lower to higher values as the slider moves from top to bottom or left to right. Inverted ranges have higher values at the top or on the right rather than on the bottom or left.
setLowerStepperSensitivity
rangeSetLowerStepperSensitivity Source #
Arguments
:: (HasCallStack, MonadIO m, IsRange a) | |
=> a |
|
-> SensitivityType |
|
-> m () |
Sets the sensitivity policy for the stepper that points to the 'lower' end of the GtkRange’s adjustment.
Since: 2.10
setMinSliderSize
rangeSetMinSliderSize Source #
Arguments
:: (HasCallStack, MonadIO m, IsRange a) | |
=> a |
|
-> Int32 |
|
-> m () |
Deprecated: (Since version 3.20)Use the min-height/min-width CSS properties on the slider node.
Sets the minimum size of the range’s slider.
This function is useful mainly for Range
subclasses.
Since: 2.20
setRange
Arguments
:: (HasCallStack, MonadIO m, IsRange a) | |
=> a |
|
-> Double |
|
-> Double |
|
-> m () |
Sets the allowable values in the Range
, and clamps the range
value to be between min
and max
. (If the range has a non-zero
page size, it is clamped between min
and max
- page-size.)
setRestrictToFillLevel
rangeSetRestrictToFillLevel Source #
Arguments
:: (HasCallStack, MonadIO m, IsRange a) | |
=> a |
|
-> Bool |
|
-> m () |
Sets whether the slider is restricted to the fill level. See
rangeSetFillLevel
for a general description of the fill
level concept.
Since: 2.12
setRoundDigits
Arguments
:: (HasCallStack, MonadIO m, IsRange a) | |
=> a |
|
-> Int32 |
|
-> m () |
Sets the number of digits to round the value to when
it changes. See Range
::change-value
.
Since: 2.24
setShowFillLevel
rangeSetShowFillLevel Source #
Arguments
:: (HasCallStack, MonadIO m, IsRange a) | |
=> a |
|
-> Bool |
|
-> m () |
Sets whether a graphical fill level is show on the trough. See
rangeSetFillLevel
for a general description of the fill
level concept.
Since: 2.12
setSliderSizeFixed
rangeSetSliderSizeFixed Source #
Arguments
:: (HasCallStack, MonadIO m, IsRange a) | |
=> a |
|
-> Bool |
|
-> m () |
Sets whether the range’s slider has a fixed size, or a size that depends on its adjustment’s page size.
This function is useful mainly for Range
subclasses.
Since: 2.20
setUpperStepperSensitivity
rangeSetUpperStepperSensitivity Source #
Arguments
:: (HasCallStack, MonadIO m, IsRange a) | |
=> a |
|
-> SensitivityType |
|
-> m () |
Sets the sensitivity policy for the stepper that points to the 'upper' end of the GtkRange’s adjustment.
Since: 2.10
setValue
Arguments
:: (HasCallStack, MonadIO m, IsRange a) | |
=> a |
|
-> Double |
|
-> m () |
Sets the current value of the range; if the value is outside the
minimum or maximum range values, it will be clamped to fit inside
them. The range emits the Range
::value-changed
signal if the
value changes.
Properties
adjustment
constructRangeAdjustment :: (IsRange o, IsAdjustment a) => a -> IO (GValueConstruct o) Source #
getRangeAdjustment :: (MonadIO m, IsRange o) => o -> m Adjustment Source #
setRangeAdjustment :: (MonadIO m, IsRange o, IsAdjustment a) => o -> a -> m () Source #
fillLevel
constructRangeFillLevel :: IsRange o => Double -> IO (GValueConstruct o) Source #
inverted
constructRangeInverted :: IsRange o => Bool -> IO (GValueConstruct o) Source #
lowerStepperSensitivity
constructRangeLowerStepperSensitivity :: IsRange o => SensitivityType -> IO (GValueConstruct o) Source #
getRangeLowerStepperSensitivity :: (MonadIO m, IsRange o) => o -> m SensitivityType Source #
setRangeLowerStepperSensitivity :: (MonadIO m, IsRange o) => o -> SensitivityType -> m () Source #
restrictToFillLevel
constructRangeRestrictToFillLevel :: IsRange o => Bool -> IO (GValueConstruct o) Source #
roundDigits
constructRangeRoundDigits :: IsRange o => Int32 -> IO (GValueConstruct o) Source #
showFillLevel
constructRangeShowFillLevel :: IsRange o => Bool -> IO (GValueConstruct o) Source #
upperStepperSensitivity
constructRangeUpperStepperSensitivity :: IsRange o => SensitivityType -> IO (GValueConstruct o) Source #
getRangeUpperStepperSensitivity :: (MonadIO m, IsRange o) => o -> m SensitivityType Source #
setRangeUpperStepperSensitivity :: (MonadIO m, IsRange o) => o -> SensitivityType -> m () Source #
Signals
adjustBounds
type RangeAdjustBoundsCallback = Double -> IO () Source #
afterRangeAdjustBounds :: (IsRange a, MonadIO m) => a -> RangeAdjustBoundsCallback -> m SignalHandlerId Source #
mk_RangeAdjustBoundsCallback :: C_RangeAdjustBoundsCallback -> IO (FunPtr C_RangeAdjustBoundsCallback) Source #
onRangeAdjustBounds :: (IsRange a, MonadIO m) => a -> RangeAdjustBoundsCallback -> m SignalHandlerId Source #
wrap_RangeAdjustBoundsCallback :: RangeAdjustBoundsCallback -> Ptr () -> CDouble -> Ptr () -> IO () Source #
changeValue
type RangeChangeValueCallback = ScrollType -> Double -> IO Bool Source #
afterRangeChangeValue :: (IsRange a, MonadIO m) => a -> RangeChangeValueCallback -> m SignalHandlerId Source #
mk_RangeChangeValueCallback :: C_RangeChangeValueCallback -> IO (FunPtr C_RangeChangeValueCallback) Source #
onRangeChangeValue :: (IsRange a, MonadIO m) => a -> RangeChangeValueCallback -> m SignalHandlerId Source #
wrap_RangeChangeValueCallback :: RangeChangeValueCallback -> Ptr () -> CUInt -> CDouble -> Ptr () -> IO CInt Source #
moveSlider
type RangeMoveSliderCallback = ScrollType -> IO () Source #
afterRangeMoveSlider :: (IsRange a, MonadIO m) => a -> RangeMoveSliderCallback -> m SignalHandlerId Source #
mk_RangeMoveSliderCallback :: C_RangeMoveSliderCallback -> IO (FunPtr C_RangeMoveSliderCallback) Source #
onRangeMoveSlider :: (IsRange a, MonadIO m) => a -> RangeMoveSliderCallback -> m SignalHandlerId Source #
wrap_RangeMoveSliderCallback :: RangeMoveSliderCallback -> Ptr () -> CUInt -> Ptr () -> IO () Source #
valueChanged
type RangeValueChangedCallback = IO () Source #
afterRangeValueChanged :: (IsRange a, MonadIO m) => a -> RangeValueChangedCallback -> m SignalHandlerId Source #
mk_RangeValueChangedCallback :: C_RangeValueChangedCallback -> IO (FunPtr C_RangeValueChangedCallback) Source #
onRangeValueChanged :: (IsRange a, MonadIO m) => a -> RangeValueChangedCallback -> m SignalHandlerId Source #
wrap_RangeValueChangedCallback :: RangeValueChangedCallback -> Ptr () -> Ptr () -> IO () Source #