gi-gtk-3.0.37: Gtk bindings
CopyrightWill Thompson Iñaki García Etxebarria and Jonas Platte
LicenseLGPL-2.1
MaintainerIñaki García Etxebarria
Safe HaskellSafe-Inferred
LanguageHaskell2010

GI.Gtk.Interfaces.Scrollable

Description

Scrollable is an interface that is implemented by widgets with native scrolling ability.

To implement this interface you should override the Scrollable:hadjustment and Scrollable:vadjustment properties.

Creating a scrollable widget

All scrollable widgets should do the following.

  • When a parent widget sets the scrollable child widget’s adjustments, the widget should populate the adjustments’ Adjustment:lower, Adjustment:upper, Adjustment:step-increment, Adjustment:page-increment and Adjustment:page-size properties and connect to the valueChanged signal.
  • Because its preferred size is the size for a fully expanded widget, the scrollable widget must be able to cope with underallocations. This means that it must accept any value passed to its WidgetClass.size_allocate() function.
  • When the parent allocates space to the scrollable child widget, the widget should update the adjustments’ properties with new values.
  • When any of the adjustments emits the valueChanged signal, the scrollable widget should scroll its contents.
Synopsis

Exported types

newtype Scrollable Source #

Memory-managed wrapper type.

Constructors

Scrollable (ManagedPtr Scrollable) 

Instances

Instances details
Eq Scrollable Source # 
Instance details

Defined in GI.Gtk.Interfaces.Scrollable

GObject Scrollable Source # 
Instance details

Defined in GI.Gtk.Interfaces.Scrollable

ManagedPtrNewtype Scrollable Source # 
Instance details

Defined in GI.Gtk.Interfaces.Scrollable

Methods

toManagedPtr :: Scrollable -> ManagedPtr Scrollable

TypedObject Scrollable Source # 
Instance details

Defined in GI.Gtk.Interfaces.Scrollable

Methods

glibType :: IO GType

HasParentTypes Scrollable Source # 
Instance details

Defined in GI.Gtk.Interfaces.Scrollable

IsGValue (Maybe Scrollable) Source #

Convert Scrollable to and from GValue. See toGValue and fromGValue.

Instance details

Defined in GI.Gtk.Interfaces.Scrollable

Methods

gvalueGType_ :: IO GType

gvalueSet_ :: Ptr GValue -> Maybe Scrollable -> IO ()

gvalueGet_ :: Ptr GValue -> IO (Maybe Scrollable)

type ParentTypes Scrollable Source # 
Instance details

Defined in GI.Gtk.Interfaces.Scrollable

type ParentTypes Scrollable = '[Object]

class (GObject o, IsDescendantOf Scrollable o) => IsScrollable o Source #

Type class for types which can be safely cast to Scrollable, for instance with toScrollable.

Instances

Instances details
(GObject o, IsDescendantOf Scrollable o) => IsScrollable o Source # 
Instance details

Defined in GI.Gtk.Interfaces.Scrollable

toScrollable :: (MonadIO m, IsScrollable o) => o -> m Scrollable Source #

Cast to Scrollable, for types for which this is known to be safe. For general casts, use castTo.

Methods

getBorder

scrollableGetBorder Source #

Arguments

:: (HasCallStack, MonadIO m, IsScrollable a) 
=> a

scrollable: a Scrollable

-> m (Bool, Border)

Returns: True if border has been set

Returns the size of a non-scrolling border around the outside of the scrollable. An example for this would be treeview headers. GTK+ can use this information to display overlayed graphics, like the overshoot indication, at the right position.

Since: 3.16

getHadjustment

scrollableGetHadjustment Source #

Arguments

:: (HasCallStack, MonadIO m, IsScrollable a) 
=> a

scrollable: a Scrollable

-> m Adjustment

Returns: horizontal Adjustment.

Retrieves the Adjustment used for horizontal scrolling.

Since: 3.0

getHscrollPolicy

scrollableGetHscrollPolicy Source #

Arguments

:: (HasCallStack, MonadIO m, IsScrollable a) 
=> a

scrollable: a Scrollable

-> m ScrollablePolicy

Returns: The horizontal ScrollablePolicy.

Gets the horizontal ScrollablePolicy.

Since: 3.0

getVadjustment

scrollableGetVadjustment Source #

Arguments

:: (HasCallStack, MonadIO m, IsScrollable a) 
=> a

scrollable: a Scrollable

-> m Adjustment

Returns: vertical Adjustment.

Retrieves the Adjustment used for vertical scrolling.

Since: 3.0

getVscrollPolicy

scrollableGetVscrollPolicy Source #

Arguments

:: (HasCallStack, MonadIO m, IsScrollable a) 
=> a

scrollable: a Scrollable

-> m ScrollablePolicy

Returns: The vertical ScrollablePolicy.

Gets the vertical ScrollablePolicy.

Since: 3.0

setHadjustment

scrollableSetHadjustment Source #

Arguments

:: (HasCallStack, MonadIO m, IsScrollable a, IsAdjustment b) 
=> a

scrollable: a Scrollable

-> Maybe b

hadjustment: a Adjustment

-> m () 

Sets the horizontal adjustment of the Scrollable.

Since: 3.0

setHscrollPolicy

scrollableSetHscrollPolicy Source #

Arguments

:: (HasCallStack, MonadIO m, IsScrollable a) 
=> a

scrollable: a Scrollable

-> ScrollablePolicy

policy: the horizontal ScrollablePolicy

-> m () 

Sets the ScrollablePolicy to determine whether horizontal scrolling should start below the minimum width or below the natural width.

Since: 3.0

setVadjustment

scrollableSetVadjustment Source #

Arguments

:: (HasCallStack, MonadIO m, IsScrollable a, IsAdjustment b) 
=> a

scrollable: a Scrollable

-> Maybe b

vadjustment: a Adjustment

-> m () 

Sets the vertical adjustment of the Scrollable.

Since: 3.0

setVscrollPolicy

scrollableSetVscrollPolicy Source #

Arguments

:: (HasCallStack, MonadIO m, IsScrollable a) 
=> a

scrollable: a Scrollable

-> ScrollablePolicy

policy: the vertical ScrollablePolicy

-> m () 

Sets the ScrollablePolicy to determine whether vertical scrolling should start below the minimum height or below the natural height.

Since: 3.0

Properties

hadjustment

Horizontal Adjustment of the scrollable widget. This adjustment is shared between the scrollable widget and its parent.

Since: 3.0

clearScrollableHadjustment :: (MonadIO m, IsScrollable o) => o -> m () Source #

Set the value of the “hadjustment” property to Nothing. When overloading is enabled, this is equivalent to

clear #hadjustment

constructScrollableHadjustment :: (IsScrollable o, MonadIO m, IsAdjustment a) => a -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “hadjustment” property. This is rarely needed directly, but it is used by new.

getScrollableHadjustment :: (MonadIO m, IsScrollable o) => o -> m Adjustment Source #

Get the value of the “hadjustment” property. When overloading is enabled, this is equivalent to

get scrollable #hadjustment

setScrollableHadjustment :: (MonadIO m, IsScrollable o, IsAdjustment a) => o -> a -> m () Source #

Set the value of the “hadjustment” property. When overloading is enabled, this is equivalent to

set scrollable [ #hadjustment := value ]

hscrollPolicy

Determines whether horizontal scrolling should start once the scrollable widget is allocated less than its minimum width or less than its natural width.

Since: 3.0

constructScrollableHscrollPolicy :: (IsScrollable o, MonadIO m) => ScrollablePolicy -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “hscroll-policy” property. This is rarely needed directly, but it is used by new.

getScrollableHscrollPolicy :: (MonadIO m, IsScrollable o) => o -> m ScrollablePolicy Source #

Get the value of the “hscroll-policy” property. When overloading is enabled, this is equivalent to

get scrollable #hscrollPolicy

setScrollableHscrollPolicy :: (MonadIO m, IsScrollable o) => o -> ScrollablePolicy -> m () Source #

Set the value of the “hscroll-policy” property. When overloading is enabled, this is equivalent to

set scrollable [ #hscrollPolicy := value ]

vadjustment

Verical Adjustment of the scrollable widget. This adjustment is shared between the scrollable widget and its parent.

Since: 3.0

clearScrollableVadjustment :: (MonadIO m, IsScrollable o) => o -> m () Source #

Set the value of the “vadjustment” property to Nothing. When overloading is enabled, this is equivalent to

clear #vadjustment

constructScrollableVadjustment :: (IsScrollable o, MonadIO m, IsAdjustment a) => a -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “vadjustment” property. This is rarely needed directly, but it is used by new.

getScrollableVadjustment :: (MonadIO m, IsScrollable o) => o -> m Adjustment Source #

Get the value of the “vadjustment” property. When overloading is enabled, this is equivalent to

get scrollable #vadjustment

setScrollableVadjustment :: (MonadIO m, IsScrollable o, IsAdjustment a) => o -> a -> m () Source #

Set the value of the “vadjustment” property. When overloading is enabled, this is equivalent to

set scrollable [ #vadjustment := value ]

vscrollPolicy

Determines whether vertical scrolling should start once the scrollable widget is allocated less than its minimum height or less than its natural height.

Since: 3.0

constructScrollableVscrollPolicy :: (IsScrollable o, MonadIO m) => ScrollablePolicy -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “vscroll-policy” property. This is rarely needed directly, but it is used by new.

getScrollableVscrollPolicy :: (MonadIO m, IsScrollable o) => o -> m ScrollablePolicy Source #

Get the value of the “vscroll-policy” property. When overloading is enabled, this is equivalent to

get scrollable #vscrollPolicy

setScrollableVscrollPolicy :: (MonadIO m, IsScrollable o) => o -> ScrollablePolicy -> m () Source #

Set the value of the “vscroll-policy” property. When overloading is enabled, this is equivalent to

set scrollable [ #vscrollPolicy := value ]