gtk.scrollable

Module for [Scrollable] interface

Types 2

interfaceScrollable

[gtk.scrollable.Scrollable] is an interface for widgets with native scrolling ability.

To implement this interface you should override the [gtk.scrollable.Scrollable.hadjustment] and [gtk.scrollable.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 connect to the signal@Gtk.Adjustment::value-changed signal. The child widget should then populate the adjustments’ properties as soon as possible, which usually means queueing an allocation right away and populating the properties in the vfunc@Gtk.Widget.size_allocate implementation.

  • 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 vfunc@Gtk.Widget.size_allocate implementation.

  • When the parent allocates space to the scrollable child widget,

the widget must ensure the adjustments’ property values are correct and up to date, for example using [gtk.adjustment.Adjustment.configure].

  • When any of the adjustments emits the signal@Gtk.Adjustment::value-changed

signal, the scrollable widget should scroll its contents.

Methods
gtk.adjustment.Adjustment hadjustment() @propertyGet `hadjustment` property. Returns: Horizontal [gtk.adjustment.Adjustment] of the scrollable widget.
void hadjustment(gtk.adjustment.Adjustment propval) @propertySet `hadjustment` property. Params: propval = Horizontal [gtk.adjustment.Adjustment] of the scrollable widget.
gtk.types.ScrollablePolicy hscrollPolicy() @propertyGet `hscrollPolicy` property. Returns: Determines when horizontal scrolling should start.
void hscrollPolicy(gtk.types.ScrollablePolicy propval) @propertySet `hscrollPolicy` property. Params: propval = Determines when horizontal scrolling should start.
gtk.adjustment.Adjustment vadjustment() @propertyGet `vadjustment` property. Returns: Vertical [gtk.adjustment.Adjustment] of the scrollable widget.
void vadjustment(gtk.adjustment.Adjustment propval) @propertySet `vadjustment` property. Params: propval = Vertical [gtk.adjustment.Adjustment] of the scrollable widget.
gtk.types.ScrollablePolicy vscrollPolicy() @propertyGet `vscrollPolicy` property. Returns: Determines when vertical scrolling should start.
void vscrollPolicy(gtk.types.ScrollablePolicy propval) @propertySet `vscrollPolicy` property. Params: propval = Determines when vertical scrolling should start.
bool getBorder(out gtk.border.Border border)Returns the size of a non-scrolling border around the outside of the scrollable.
gtk.adjustment.Adjustment getHadjustment()Retrieves the [gtk.adjustment.Adjustment] used for horizontal scrolling. Returns: horizontal [gtk.adjustment.Adjustment].
gtk.types.ScrollablePolicy getHscrollPolicy()Gets the horizontal [gtk.types.ScrollablePolicy]. Returns: The horizontal [gtk.types.ScrollablePolicy].
gtk.adjustment.Adjustment getVadjustment()Retrieves the [gtk.adjustment.Adjustment] used for vertical scrolling. Returns: vertical [gtk.adjustment.Adjustment].
gtk.types.ScrollablePolicy getVscrollPolicy()Gets the vertical [gtk.types.ScrollablePolicy]. Returns: The vertical [gtk.types.ScrollablePolicy].
void setHadjustment(gtk.adjustment.Adjustment hadjustment = null)Sets the horizontal adjustment of the [gtk.scrollable.Scrollable].
void setHscrollPolicy(gtk.types.ScrollablePolicy policy)Sets the [gtk.types.ScrollablePolicy].
void setVadjustment(gtk.adjustment.Adjustment vadjustment = null)Sets the vertical adjustment of the [gtk.scrollable.Scrollable].
void setVscrollPolicy(gtk.types.ScrollablePolicy policy)Sets the [gtk.types.ScrollablePolicy].
Methods
T hadjustment(gtk.adjustment.Adjustment propval)Set `hadjustment` property. Params: propval = Horizontal [gtk.adjustment.Adjustment] of the scrollable widget.
T hscrollPolicy(gtk.types.ScrollablePolicy propval)Set `hscrollPolicy` property. Params: propval = Determines when horizontal scrolling should start. Returns: Builder instance for fluent chaining
T vadjustment(gtk.adjustment.Adjustment propval)Set `vadjustment` property. Params: propval = Vertical [gtk.adjustment.Adjustment] of the scrollable widget.
T vscrollPolicy(gtk.types.ScrollablePolicy propval)Set `vscrollPolicy` property. Params: propval = Determines when vertical scrolling should start. Returns: Builder instance for fluent chaining