1999-08-16 18:51:52 +00:00
|
|
|
<!-- ##### SECTION Title ##### -->
|
|
|
|
GtkScrolledWindow
|
|
|
|
|
|
|
|
<!-- ##### SECTION Short_Description ##### -->
|
2004-10-11 20:10:52 +00:00
|
|
|
Adds scrollbars to its child widget
|
1999-08-16 18:51:52 +00:00
|
|
|
|
|
|
|
<!-- ##### SECTION Long_Description ##### -->
|
2001-09-08 19:33:06 +00:00
|
|
|
<para>
|
|
|
|
#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.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
The scrolled window can work in two ways. Some widgets have native
|
|
|
|
scrolling support; these widgets have "slots" for #GtkAdjustment
|
|
|
|
objects.
|
|
|
|
<footnote><para>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.)</para></footnote>
|
|
|
|
Widgets with native scroll support include #GtkTreeView, #GtkTextView,
|
|
|
|
and #GtkLayout.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
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.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
If a widget has native scrolling abilities, it can be added to the
|
|
|
|
#GtkScrolledWindow with gtk_container_add(). 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
|
|
|
|
gtk_scrolled_window_add_with_viewport() does exactly this, so you can
|
|
|
|
ignore the presence of the viewport.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
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).
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
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.
|
1999-08-16 18:51:52 +00:00
|
|
|
</para>
|
|
|
|
|
|
|
|
<!-- ##### SECTION See_Also ##### -->
|
2001-09-08 19:33:06 +00:00
|
|
|
<para>
|
|
|
|
#GtkViewport, #GtkAdjustment, #GtkWidgetClass
|
1999-08-16 18:51:52 +00:00
|
|
|
</para>
|
|
|
|
|
2005-06-20 22:06:27 +00:00
|
|
|
<!-- ##### SECTION Stability_Level ##### -->
|
|
|
|
|
|
|
|
|
2010-05-08 05:18:53 +00:00
|
|
|
<!-- ##### SECTION Image ##### -->
|
|
|
|
|
|
|
|
|
1999-08-16 18:51:52 +00:00
|
|
|
<!-- ##### STRUCT GtkScrolledWindow ##### -->
|
2001-09-08 19:33:06 +00:00
|
|
|
<para>
|
|
|
|
There are no public fields in the #GtkScrolledWindow struct; it should
|
|
|
|
only be accessed using the functions below.
|
1999-08-16 18:51:52 +00:00
|
|
|
</para>
|
|
|
|
|
|
|
|
|
2004-07-20 02:26:06 +00:00
|
|
|
<!-- ##### SIGNAL GtkScrolledWindow::move-focus-out ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
2008-12-29 03:01:42 +00:00
|
|
|
@scrolledwindow:
|
2004-07-20 02:26:06 +00:00
|
|
|
@arg1:
|
|
|
|
|
|
|
|
<!-- ##### SIGNAL GtkScrolledWindow::scroll-child ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
2008-12-29 03:01:42 +00:00
|
|
|
@scrolledwindow:
|
2004-07-20 02:26:06 +00:00
|
|
|
@arg1:
|
|
|
|
@arg2:
|
2007-05-24 05:51:56 +00:00
|
|
|
@Returns:
|
2004-07-20 02:26:06 +00:00
|
|
|
|
|
|
|
<!-- ##### ARG GtkScrolledWindow:hadjustment ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<!-- ##### ARG GtkScrolledWindow:hscrollbar-policy ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<!-- ##### ARG GtkScrolledWindow:shadow-type ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<!-- ##### ARG GtkScrolledWindow:vadjustment ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<!-- ##### ARG GtkScrolledWindow:vscrollbar-policy ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<!-- ##### ARG GtkScrolledWindow:window-placement ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
2006-05-05 16:21:19 +00:00
|
|
|
<!-- ##### ARG GtkScrolledWindow:window-placement-set ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
2004-07-20 02:26:06 +00:00
|
|
|
<!-- ##### ARG GtkScrolledWindow:scrollbar-spacing ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
2007-05-24 05:51:56 +00:00
|
|
|
<!-- ##### ARG GtkScrolledWindow:scrollbars-within-bevel ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
1999-08-16 18:51:52 +00:00
|
|
|
<!-- ##### FUNCTION gtk_scrolled_window_new ##### -->
|
2001-09-08 19:33:06 +00:00
|
|
|
<para>
|
2008-12-29 03:01:42 +00:00
|
|
|
|
1999-08-16 18:51:52 +00:00
|
|
|
</para>
|
|
|
|
|
2008-12-29 03:01:42 +00:00
|
|
|
@hadjustment:
|
|
|
|
@vadjustment:
|
|
|
|
@Returns:
|
1999-08-16 18:51:52 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_scrolled_window_get_hadjustment ##### -->
|
2001-09-08 19:33:06 +00:00
|
|
|
<para>
|
2008-12-29 03:01:42 +00:00
|
|
|
|
1999-08-16 18:51:52 +00:00
|
|
|
</para>
|
|
|
|
|
2008-12-29 03:01:42 +00:00
|
|
|
@scrolled_window:
|
|
|
|
@Returns:
|
1999-08-16 18:51:52 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_scrolled_window_get_vadjustment ##### -->
|
2001-09-08 19:33:06 +00:00
|
|
|
<para>
|
2008-12-29 03:01:42 +00:00
|
|
|
|
1999-08-16 18:51:52 +00:00
|
|
|
</para>
|
|
|
|
|
2008-12-29 03:01:42 +00:00
|
|
|
@scrolled_window:
|
|
|
|
@Returns:
|
1999-08-16 18:51:52 +00:00
|
|
|
|
|
|
|
|
2005-06-20 22:06:27 +00:00
|
|
|
<!-- ##### FUNCTION gtk_scrolled_window_get_hscrollbar ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@scrolled_window:
|
|
|
|
@Returns:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_scrolled_window_get_vscrollbar ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@scrolled_window:
|
|
|
|
@Returns:
|
|
|
|
|
|
|
|
|
1999-08-16 18:51:52 +00:00
|
|
|
<!-- ##### FUNCTION gtk_scrolled_window_set_policy ##### -->
|
2001-09-08 19:33:06 +00:00
|
|
|
<para>
|
2008-12-29 03:01:42 +00:00
|
|
|
|
1999-08-16 18:51:52 +00:00
|
|
|
</para>
|
|
|
|
|
2008-12-29 03:01:42 +00:00
|
|
|
@scrolled_window:
|
|
|
|
@hscrollbar_policy:
|
|
|
|
@vscrollbar_policy:
|
1999-08-16 18:51:52 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_scrolled_window_add_with_viewport ##### -->
|
2001-09-08 19:33:06 +00:00
|
|
|
<para>
|
|
|
|
|
1999-08-16 18:51:52 +00:00
|
|
|
</para>
|
|
|
|
|
2008-12-29 03:01:42 +00:00
|
|
|
@scrolled_window:
|
|
|
|
@child:
|
1999-08-16 18:51:52 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_scrolled_window_set_placement ##### -->
|
2001-09-08 19:33:06 +00:00
|
|
|
<para>
|
2008-12-29 03:01:42 +00:00
|
|
|
|
1999-08-16 18:51:52 +00:00
|
|
|
</para>
|
|
|
|
|
2008-12-29 05:16:34 +00:00
|
|
|
@scrolled_window:
|
|
|
|
@window_placement:
|
1999-08-16 18:51:52 +00:00
|
|
|
|
|
|
|
|
2006-05-05 16:21:19 +00:00
|
|
|
<!-- ##### FUNCTION gtk_scrolled_window_unset_placement ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@scrolled_window:
|
|
|
|
|
|
|
|
|
2000-09-07 18:17:06 +00:00
|
|
|
<!-- ##### FUNCTION gtk_scrolled_window_set_shadow_type ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@scrolled_window:
|
|
|
|
@type:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_scrolled_window_set_hadjustment ##### -->
|
2001-09-08 19:33:06 +00:00
|
|
|
<para>
|
2008-12-29 03:01:42 +00:00
|
|
|
|
2000-09-07 18:17:06 +00:00
|
|
|
</para>
|
|
|
|
|
2008-12-29 05:16:34 +00:00
|
|
|
@scrolled_window:
|
|
|
|
@hadjustment:
|
2000-09-07 18:17:06 +00:00
|
|
|
|
|
|
|
|
1999-08-16 18:51:52 +00:00
|
|
|
<!-- ##### FUNCTION gtk_scrolled_window_set_vadjustment ##### -->
|
2001-09-08 19:33:06 +00:00
|
|
|
<para>
|
2008-12-29 03:01:42 +00:00
|
|
|
|
1999-08-16 18:51:52 +00:00
|
|
|
</para>
|
|
|
|
|
2008-12-29 05:16:34 +00:00
|
|
|
@scrolled_window:
|
2008-12-29 03:01:42 +00:00
|
|
|
@vadjustment:
|
1999-08-16 18:51:52 +00:00
|
|
|
|
|
|
|
|
2001-09-08 06:24:46 +00:00
|
|
|
<!-- ##### FUNCTION gtk_scrolled_window_get_placement ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@scrolled_window:
|
|
|
|
@Returns:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_scrolled_window_get_policy ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@scrolled_window:
|
|
|
|
@hscrollbar_policy:
|
|
|
|
@vscrollbar_policy:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_scrolled_window_get_shadow_type ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@scrolled_window:
|
|
|
|
@Returns:
|
|
|
|
|
|
|
|
|