Go to the first, previous, next, last section, table of contents.

Scrollbar operators

* getScrollbar :: Scrollbar a -> IO a
sample the Scrollbar's current value.
* waitScrollbar :: Scrollbar a -> IO a
block until the next discrete change of the Scrollbar value, i.e., until the next time the user stops dragging the sliding thumb, the up or down buttons are pressed or the Scrollbar is explicitly set via setScrollbar.
* waitScrollbarMovement :: Scrollbar a -> IO (a, Bool)
block until the next change, be it discrete or the user dragging the thumb. The Bool indicates the nature of the change in value, True if it was discrete, False if the slider thumb is still being dragged.
* setScrollbar :: Eq a => Scrollbar a -> a -> IO a
set current value of Scrollbar, may cause the slider thumb to move.
* setScrollbarStep :: Eq a => Scrollbar a -> a -> IO ()
set the amount a click on the up or down buttons should increment or decrement the current Scrollbar value.
* incScrollbar :: Num a => Scrollbar a -> a -> IO a
* decScrollbar :: Num a => Scrollbar a -> a -> IO a
increase or decrease the current scrollbar value (the stepping amount is set via setScrollbarStep.
* resizeScrollbarThumb :: Scrollbar a -> Double -> IO ()
set the size of the thumb to a size proportional to the overall sliding area.
* getScrollbarSlider :: Scrollbar a -> Slider a
return the Slider thandle the Scrollbar is composed out of.
* getScrollbarSize :: Scrollbar a -> IO Size
return the overall size of the scrollbar.
* getScrollbarArrowSize :: Scrollbar a -> IO Size
return size of the arrow buttons.
* mapScrollbar :: (a->b) -> (b->a) -> Scrollbar a -> IO (Scrollbar b)
return a new view of a Scrollbar. For each value output via an existing Scrollbar handle, the new handle will transform that value before outputting it. Need functions for mapping both ways, since an operation like setScrollbar on a Scrollbar handle has effect on not only it, but any handle it was derived from.
* mapIOScrollbar :: (a-> IO b) -> (b-> IO a) -> Scrollbar a -> IO (Scrollbar b)
same as above, this time the mapping operations are of IO actions.

Go to the first, previous, next, last section, table of contents.