Top |
Functions
Properties
GtkAdjustment * | hadjustment | Read / Write / Construct |
GtkScrollablePolicy | hscroll-policy | Read / Write |
GtkAdjustment * | vadjustment | Read / Write / Construct |
GtkScrollablePolicy | vscroll-policy | Read / Write |
Known Implementations
GtkScrollable is implemented by GtkIconView, GtkLayout, GtkTextView, GtkToolPalette, GtkTreeView and GtkViewport.
Description
GtkScrollable is an interface that is implemented by widgets with native scrolling ability.
To implement this interface you should override the “hadjustment” and “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’ “lower”, “upper”, “step-increment”, “page-increment” and “page-size” properties and connect to the “value-changed” 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
GtkWidgetClass.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 “value-changed” signal, the scrollable widget should scroll its contents.
Functions
gtk_scrollable_get_hadjustment ()
GtkAdjustment *
gtk_scrollable_get_hadjustment (GtkScrollable *scrollable
);
Retrieves the GtkAdjustment used for horizontal scrolling.
Since: 3.0
gtk_scrollable_set_hadjustment ()
void gtk_scrollable_set_hadjustment (GtkScrollable *scrollable
,GtkAdjustment *hadjustment
);
Sets the horizontal adjustment of the GtkScrollable.
Since: 3.0
gtk_scrollable_get_vadjustment ()
GtkAdjustment *
gtk_scrollable_get_vadjustment (GtkScrollable *scrollable
);
Retrieves the GtkAdjustment used for vertical scrolling.
Since: 3.0
gtk_scrollable_set_vadjustment ()
void gtk_scrollable_set_vadjustment (GtkScrollable *scrollable
,GtkAdjustment *vadjustment
);
Sets the vertical adjustment of the GtkScrollable.
Since: 3.0
gtk_scrollable_get_hscroll_policy ()
GtkScrollablePolicy
gtk_scrollable_get_hscroll_policy (GtkScrollable *scrollable
);
Gets the horizontal GtkScrollablePolicy.
Since: 3.0
gtk_scrollable_set_hscroll_policy ()
void gtk_scrollable_set_hscroll_policy (GtkScrollable *scrollable
,GtkScrollablePolicy policy
);
Sets the GtkScrollablePolicy to determine whether horizontal scrolling should start below the minimum width or below the natural width.
Since: 3.0
gtk_scrollable_get_vscroll_policy ()
GtkScrollablePolicy
gtk_scrollable_get_vscroll_policy (GtkScrollable *scrollable
);
Gets the vertical GtkScrollablePolicy.
Since: 3.0
gtk_scrollable_set_vscroll_policy ()
void gtk_scrollable_set_vscroll_policy (GtkScrollable *scrollable
,GtkScrollablePolicy policy
);
Sets the GtkScrollablePolicy to determine whether vertical scrolling should start below the minimum height or below the natural height.
Since: 3.0
gtk_scrollable_get_border ()
gboolean gtk_scrollable_get_border (GtkScrollable *scrollable
,GtkBorder *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 overlayed graphics, like the overshoot indication, at the right position.
Since: 3.16
Property Details
The “hadjustment”
property
“hadjustment” GtkAdjustment *
Horizontal GtkAdjustment of the scrollable widget. This adjustment is shared between the scrollable widget and its parent.
Owner: GtkScrollable
Flags: Read / Write / Construct
Since: 3.0
The “hscroll-policy”
property
“hscroll-policy” GtkScrollablePolicy
Determines whether horizontal scrolling should start once the scrollable widget is allocated less than its minimum width or less than its natural width.
Owner: GtkScrollable
Flags: Read / Write
Default value: GTK_SCROLL_MINIMUM
Since: 3.0
The “vadjustment”
property
“vadjustment” GtkAdjustment *
Verical GtkAdjustment of the scrollable widget. This adjustment is shared between the scrollable widget and its parent.
Owner: GtkScrollable
Flags: Read / Write / Construct
Since: 3.0
The “vscroll-policy”
property
“vscroll-policy” GtkScrollablePolicy
Determines whether vertical scrolling should start once the scrollable widget is allocated less than its minimum height or less than its natural height.
Owner: GtkScrollable
Flags: Read / Write
Default value: GTK_SCROLL_MINIMUM
Since: 3.0