gtkScrolledWindowNew(hadjustment = NULL, vadjustment = NULL, show = TRUE)
gtkScrolledWindowGetHadjustment(object)
gtkScrolledWindowGetVadjustment(object)
gtkScrolledWindowGetHscrollbar(object)
gtkScrolledWindowGetVscrollbar(object)
gtkScrolledWindowSetPolicy(object, hscrollbar.policy, vscrollbar.policy)
gtkScrolledWindowAddWithViewport(object, child)
gtkScrolledWindowSetPlacement(object, window.placement)
gtkScrolledWindowUnsetPlacement(object)
gtkScrolledWindowSetShadowType(object, type)
gtkScrolledWindowSetHadjustment(object, hadjustment)
gtkScrolledWindowSetVadjustment(object, hadjustment)
gtkScrolledWindowGetPlacement(object)
gtkScrolledWindowGetPolicy(object)
gtkScrolledWindowGetShadowType(object)
gtkScrolledWindow(hadjustment = NULL, vadjustment = NULL, show = TRUE)
GObject +----GInitiallyUnowned +----GtkObject +----GtkWidget +----GtkContainer +----GtkBin +----GtkScrolledWindow
GtkBuildable
.GtkScrolledWindow
is a GtkBin
subclass: it's a container
the accepts a single child widget. GtkScrolledWindow
adds scrollbars
to the child widget and optionally draws a beveled frame around the
child widget. The scrolled window can work in two ways. Some widgets have native
scrolling support; these widgets have "slots" for GtkAdjustment
objects.
PLEASE NOTE: The scrolled window installs GtkAdjustment
objects in
the child window's slots using the set_scroll_adjustments_signal,
found in GtkWidgetClass
. (Conceptually, these widgets implement a
"Scrollable" interface; because GTK+ 1.2 lacked interface support in
the object system, this interface is hackily implemented as a signal
in GtkWidgetClass
. The GTK+ 2.0 object system would allow a clean
implementation, but it wasn't worth breaking the
API.)
Widgets with native scroll support include GtkTreeView
, GtkTextView
,
and GtkLayout
. For widgets that lack native scrolling support, the GtkViewport
widget acts as an adaptor class, implementing scrollability for child
widgets that lack their own scrolling capabilities. Use GtkViewport
to scroll child widgets such as GtkTable
, GtkBox
, and so on. If a widget has native scrolling abilities, it can be added to the
GtkScrolledWindow
with gtkContainerAdd
. If a widget does not, you
must first add the widget to a GtkViewport
, then add the GtkViewport
to the scrolled window. The convenience function
gtkScrolledWindowAddWithViewport
does exactly this, so you can
ignore the presence of the viewport. The position of the scrollbars is controlled by the scroll
adjustments. See GtkAdjustment
for the fields in an adjustment - for
GtkScrollbar
, used by GtkScrolledWindow
, the "value" field
represents the position of the scrollbar, which must be between the
"lower" field and "upper - page_size." The "page_size" field
represents the size of the visible scrollable area. The
"step_increment" and "page_increment" fields are used when the user
asks to step down (using the small stepper arrows) or page down (using
for example the PageDown key). If a GtkScrolledWindow
doesn't behave quite as you would like, or
doesn't have exactly the right layout, it's very possible to set up
your own scrolling with GtkScrollbar
and for example a GtkTable
.gtkScrolledWindow
is the equivalent of gtkScrolledWindowNew
.move-focus-out(user.data)
scroll-child(user.data)
hadjustment
[GtkAdjustment
: * : Read / Write / Construct]hscrollbar-policy
[GtkPolicyType
: Read / Write]shadow-type
[GtkShadowType
: Read / Write]vadjustment
[GtkAdjustment
: * : Read / Write / Construct]vscrollbar-policy
[GtkPolicyType
: Read / Write]window-placement
[GtkCornerType
: Read / Write]window-placement-set
[logical : Read / Write]scrollbar-spacing
[integer : Read]scrollbars-within-bevel
[logical : Read]GtkViewport
GtkAdjustment
GtkWidgetClass