Class
AdwViewStack
Description [src]
final class Adw.ViewStack : Gtk.Widget {
/* No available fields */
}
A view container for AdwViewSwitcher
.
AdwViewStack
is a container which only shows one page at a time.
It is typically used to hold an application’s main views.
It doesn’t provide a way to transition between pages.
Instead, a separate widget such as AdwViewSwitcher
can be used with
AdwViewStack
to provide this functionality.
AdwViewStack
pages can have a title, an icon, an attention request, and a
numbered badge that AdwViewSwitcher
will use to let users identify which
page is which. Set them using the AdwViewStackPage:title
,
AdwViewStackPage:icon-name
,
AdwViewStackPage:needs-attention
, and
AdwViewStackPage:badge-number
properties.
Unlike GtkStack
, transitions between views are not animated.
AdwViewStack
maintains a AdwViewStackPage
object for each added child,
which holds additional per-child properties. You obtain the
AdwViewStackPage
for a child with adw_view_stack_get_page()
and you
can obtain a GtkSelectionModel
containing all the pages with
adw_view_stack_get_pages()
.
AdwViewStack as GtkBuildable
To set child-specific properties in a .ui file, create
AdwViewStackPage
objects explicitly, and set the child widget as a
property on it:
<object class="AdwViewStack" id="stack">
<child>
<object class="AdwViewStackPage">
<property name="name">overview</property>
<property name="title">Overview</property>
<property name="child">
<object class="AdwStatusPage">
<property name="title">Welcome!</property>
</object>
</property>
</object>
</child>
</object>
CSS nodes
AdwViewStack
has a single CSS node named stack
.
Accessibility
AdwViewStack
uses the GTK_ACCESSIBLE_ROLE_TAB_PANEL
for the stack pages
which are the accessible parent objects of the child widgets.
Constructors
adw_view_stack_new
Creates a new AdwViewStack
.
Instance methods
adw_view_stack_add
Adds a child to self
.
adw_view_stack_add_named
Adds a child to self
.
adw_view_stack_add_titled
Adds a child to self
.
adw_view_stack_get_child_by_name
Finds the child with name
in self
.
adw_view_stack_get_hhomogeneous
Gets whether self
is horizontally homogeneous.
adw_view_stack_get_page
Gets the AdwViewStackPage
object for child
.
adw_view_stack_get_pages
Returns a GListModel
that contains the pages of the stack.
adw_view_stack_get_vhomogeneous
Gets whether self
is vertically homogeneous.
adw_view_stack_get_visible_child
Gets the currently visible child of self
, .
adw_view_stack_get_visible_child_name
Returns the name of the currently visible child of self
.
adw_view_stack_remove
Removes a child widget from self
.
adw_view_stack_set_hhomogeneous
Sets self
to be horizontally homogeneous or not.
adw_view_stack_set_vhomogeneous
Sets self
to be vertically homogeneous or not.
adw_view_stack_set_visible_child
Makes child
the visible child of self
.
adw_view_stack_set_visible_child_name
Makes the child with name
visible.
Properties
Adw.ViewStack:hhomogeneous
Whether the stack is horizontally homogeneous.
Adw.ViewStack:pages
A selection model with the stack’s pages.
Adw.ViewStack:vhomogeneous
Whether the stack is vertically homogeneous.
Adw.ViewStack:visible-child
The widget currently visible in the stack.
Adw.ViewStack:visible-child-name
The name of the widget currently visible in the stack.