GtkScrollable

GtkScrollable — An interface for scrollable widgets

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);

Object Hierarchy

  GInterface
   +----GtkScrollable

Prerequisites

GtkScrollable requires GObject.

Known Implementations

GtkScrollable is implemented by GtkIconView, GtkLayout, GtkTextView, GtkToolPalette, GtkTreeView and GtkViewport.

Properties

  "hadjustment"              GtkAdjustment*        : Read / Write / Construct
  "vadjustment"              GtkAdjustment*        : Read / Write / Construct

Description

GtkScrollable is interface that is implemented by widgets with native scrolling ability.

To implement this interface, all one needs to do is to override "hadjustment" and "vadjustment" properties.

Creating a scrollable widget

There are some common things all scrollable widgets will need to do.

  1. When parent sets adjustments, widget needs to populate adjustment's "lower", "upper", "step-increment", "page-increment" and "page-size" properties and connect to "value-changed" signal.

  2. When parent allocates space to child, scrollable widget needs to update properties listed under 1 with new values.

  3. When any of the adjustments emits "value-changed" signal, scrollable widget needs to scroll it's contents.

Details

GtkScrollable

typedef struct _GtkScrollable GtkScrollable;


gtk_scrollable_get_hadjustment ()

GtkAdjustment *     gtk_scrollable_get_hadjustment      (GtkScrollable *scrollable);

Retrieves the GtkAdjustment, used for horizontal scrolling.

scrollable :

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.

scrollable :

a GtkScrollable

hadjustment :

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.

scrollable :

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.

scrollable :

a GtkScrollable

vadjustment :

a GtkAdjustment. [allow-none]

Since 3.0

Property Details

The "hadjustment" property

  "hadjustment"              GtkAdjustment*        : Read / Write / Construct

Horizontal GtkAdjustment of scrollable widget. This adjustment is shared between scrollable widget and it's parent.

Since 3.0


The "vadjustment" property

  "vadjustment"              GtkAdjustment*        : Read / Write / Construct

Verical GtkAdjustment of scrollable widget. This adjustment is shared between scrollable widget and it's parent.

Since 3.0