gtk.scrollable_mixin

Module for [Scrollable] interface mixin

Templates 2

tmplScrollableT()

[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.

Functions

Get hadjustment property.

Returns

Horizontal [gtk.adjustment.Adjustment] of the scrollable widget.

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

void hadjustment(gtk.adjustment.Adjustment propval)

Set hadjustment property.

Parameters

propvalHorizontal [gtk.adjustment.Adjustment] of the scrollable widget. This adjustment is shared between the scrollable widget and its parent.

Get hscrollPolicy property.

Returns

Determines when horizontal scrolling should start.
void hscrollPolicy(gtk.types.ScrollablePolicy propval)

Set hscrollPolicy property.

Parameters

propvalDetermines when horizontal scrolling should start.

Get vadjustment property.

Returns

Vertical [gtk.adjustment.Adjustment] of the scrollable widget.

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

void vadjustment(gtk.adjustment.Adjustment propval)

Set vadjustment property.

Parameters

propvalVertical [gtk.adjustment.Adjustment] of the scrollable widget. This adjustment is shared between the scrollable widget and its parent.

Get vscrollPolicy property.

Returns

Determines when vertical scrolling should start.
void vscrollPolicy(gtk.types.ScrollablePolicy propval)

Set vscrollPolicy property.

Parameters

propvalDetermines 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.

An example for this would be treeview headers. GTK can use this information to display overlaid graphics, like the overshoot indication, at the right position.

Parameters

borderreturn location for the results

Returns

true if border has been set
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].

Parameters

hadjustmenta [gtk.adjustment.Adjustment]
void setHscrollPolicy(gtk.types.ScrollablePolicy policy)

Sets the [gtk.types.ScrollablePolicy].

The policy determines whether horizontal scrolling should start below the minimum width or below the natural width.

Parameters

policythe horizontal [gtk.types.ScrollablePolicy]
void setVadjustment(gtk.adjustment.Adjustment vadjustment = null)

Sets the vertical adjustment of the [gtk.scrollable.Scrollable].

Parameters

vadjustmenta [gtk.adjustment.Adjustment]
void setVscrollPolicy(gtk.types.ScrollablePolicy policy)

Sets the [gtk.types.ScrollablePolicy].

The policy determines whether vertical scrolling should start below the minimum height or below the natural height.

Parameters

policythe vertical [gtk.types.ScrollablePolicy]
tmplScrollableGidBuilderT()
Functions
T hadjustment(gtk.adjustment.Adjustment propval)

Set hadjustment property.

Parameters

propvalHorizontal [gtk.adjustment.Adjustment] of the scrollable widget. This adjustment is shared between the scrollable widget and its parent.

Returns

Builder instance for fluent chaining
T hscrollPolicy(gtk.types.ScrollablePolicy propval)

Set hscrollPolicy property.

Parameters

propvalDetermines when horizontal scrolling should start.

Returns

Builder instance for fluent chaining
T vadjustment(gtk.adjustment.Adjustment propval)

Set vadjustment property.

Parameters

propvalVertical [gtk.adjustment.Adjustment] of the scrollable widget. This adjustment is shared between the scrollable widget and its parent.

Returns

Builder instance for fluent chaining
T vscrollPolicy(gtk.types.ScrollablePolicy propval)

Set vscrollPolicy property.

Parameters

propvalDetermines when vertical scrolling should start.

Returns

Builder instance for fluent chaining