| Top | Description | Object Hierarchy | Prerequisites | Known Implementations | Properties |
Synopsis
#include <gtk/gtk.h>
GtkScrollable;
GtkAdjustment * gtk_scrollable_get_hadjustment (GtkScrollable *scrollable);
void gtk_scrollable_set_hadjustment (GtkScrollable *scrollable,
GtkAdjustment *hadjustment);
GtkAdjustment * gtk_scrollable_get_vadjustment (GtkScrollable *scrollable);
void gtk_scrollable_set_vadjustment (GtkScrollable *scrollable,
GtkAdjustment *vadjustment);
enum GtkScrollablePolicy;
GtkScrollablePolicy gtk_scrollable_get_hscroll_policy (GtkScrollable *scrollable);
void gtk_scrollable_set_hscroll_policy (GtkScrollable *scrollable,
GtkScrollablePolicy policy);
GtkScrollablePolicy gtk_scrollable_get_vscroll_policy (GtkScrollable *scrollable);
void gtk_scrollable_set_vscroll_policy (GtkScrollable *scrollable,
GtkScrollablePolicy policy);
Known Implementations
GtkScrollable is implemented by GtkIconView, GtkLayout, GtkTextView, GtkToolPalette, GtkTreeView and GtkViewport.
Properties
"hadjustment" GtkAdjustment* : Read / Write / Construct "hscroll-policy" GtkScrollablePolicy : Read / Write "vadjustment" GtkAdjustment* : Read / Write / Construct "vscroll-policy" GtkScrollablePolicy : Read / Write
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.
Details
gtk_scrollable_get_hadjustment ()
GtkAdjustment * gtk_scrollable_get_hadjustment (GtkScrollable *scrollable);
Retrieves the GtkAdjustment used for horizontal scrolling.
|
a GtkScrollable |
Returns : |
horizontal GtkAdjustment. [transfer none] |
Since 3.0
gtk_scrollable_set_hadjustment ()
void gtk_scrollable_set_hadjustment (GtkScrollable *scrollable,GtkAdjustment *hadjustment);
Sets the horizontal adjustment of the GtkScrollable.
|
a GtkScrollable |
|
a GtkAdjustment. [allow-none] |
Since 3.0
gtk_scrollable_get_vadjustment ()
GtkAdjustment * gtk_scrollable_get_vadjustment (GtkScrollable *scrollable);
Retrieves the GtkAdjustment used for vertical scrolling.
|
a GtkScrollable |
Returns : |
vertical GtkAdjustment. [transfer none] |
Since 3.0
gtk_scrollable_set_vadjustment ()
void gtk_scrollable_set_vadjustment (GtkScrollable *scrollable,GtkAdjustment *vadjustment);
Sets the vertical adjustment of the GtkScrollable.
|
a GtkScrollable |
|
a GtkAdjustment. [allow-none] |
Since 3.0
enum GtkScrollablePolicy
typedef enum {
GTK_SCROLL_MINIMUM = 0,
GTK_SCROLL_NATURAL
} GtkScrollablePolicy;
Defines the policy to be used in a scrollable widget when updating the scrolled window adjustments in a given orientation.
gtk_scrollable_get_hscroll_policy ()
GtkScrollablePolicy gtk_scrollable_get_hscroll_policy (GtkScrollable *scrollable);
Gets the horizontal GtkScrollablePolicy.
|
a GtkScrollable |
Returns : |
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.
|
a GtkScrollable |
|
the horizontal GtkScrollablePolicy |
Since 3.0
gtk_scrollable_get_vscroll_policy ()
GtkScrollablePolicy gtk_scrollable_get_vscroll_policy (GtkScrollable *scrollable);
Gets the vertical GtkScrollablePolicy.
|
a GtkScrollable |
Returns : |
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.
|
a GtkScrollable |
|
the vertical GtkScrollablePolicy |
Since 3.0
Property Details
The "hadjustment" property
"hadjustment" GtkAdjustment* : Read / Write / Construct
Horizontal GtkAdjustment of the scrollable widget. This adjustment is shared between the scrollable widget and its parent.
Since 3.0
The "hscroll-policy" property
"hscroll-policy" GtkScrollablePolicy : Read / Write
Determines whether horizontal scrolling should start once the scrollable widget is allocated less than its minimum width or less than its natural width.
Default value: GTK_SCROLL_MINIMUM
Since 3.0
The "vadjustment" property
"vadjustment" GtkAdjustment* : Read / Write / Construct
Verical GtkAdjustment of the scrollable widget. This adjustment is shared between the scrollable widget and its parent.
Since 3.0
The "vscroll-policy" property
"vscroll-policy" GtkScrollablePolicy : Read / Write
Determines whether vertical scrolling should start once the scrollable widget is allocated less than its minimum height or less than its natural height.
Default value: GTK_SCROLL_MINIMUM
Since 3.0
