<?xml version="1.0"?>
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
               "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
<!ENTITY % local.common.attrib "xmlns:xi  CDATA  #FIXED 'http://www.w3.org/2003/XInclude'">
<!ENTITY version SYSTEM "version.xml">
<!ENTITY pi "&#960;">
<!ENTITY solidus "&#8260;">
]>
<refentry id="GtkStack">
<refmeta>
<refentrytitle role="top_of_page" id="GtkStack.top_of_page">GtkStack</refentrytitle>
<manvolnum>3</manvolnum>
<refmiscinfo>GTK4 Library</refmiscinfo>
</refmeta>
<refnamediv>
<refname>GtkStack</refname>
<refpurpose>A stacking container</refpurpose>
</refnamediv>

<refsect1 id="GtkStack.functions" role="functions_proto">
<title role="functions_proto.title">Functions</title>
<informaltable pgwide="1" frame="none">
<tgroup cols="2">
<colspec colname="functions_proto_type" colwidth="150px"/>
<colspec colname="functions_proto_name"/>
<tbody>
<row><entry role="function_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-stack-page-get-visible">gtk_stack_page_get_visible</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-stack-page-set-visible">gtk_stack_page_set_visible</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GtkWidget"><returnvalue>GtkWidget</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-stack-page-get-child">gtk_stack_page_get_child</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GtkWidget"><returnvalue>GtkWidget</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-stack-new">gtk_stack_new</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GtkStackPage"><returnvalue>GtkStackPage</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-stack-add-named">gtk_stack_add_named</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GtkStackPage"><returnvalue>GtkStackPage</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-stack-add-titled">gtk_stack_add_titled</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-stack-remove">gtk_stack_remove</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GtkWidget"><returnvalue>GtkWidget</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-stack-get-child-by-name">gtk_stack_get_child_by_name</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GtkStackPage"><returnvalue>GtkStackPage</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-stack-get-page">gtk_stack_get_page</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GtkSelectionModel"><returnvalue>GtkSelectionModel</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-stack-get-pages">gtk_stack_get_pages</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-stack-set-visible-child">gtk_stack_set_visible_child</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GtkWidget"><returnvalue>GtkWidget</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-stack-get-visible-child">gtk_stack_get_visible_child</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-stack-set-visible-child-name">gtk_stack_set_visible_child_name</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type">const <link linkend="gchar"><returnvalue>gchar</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-stack-get-visible-child-name">gtk_stack_get_visible_child_name</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-stack-set-visible-child-full">gtk_stack_set_visible_child_full</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-stack-set-hhomogeneous">gtk_stack_set_hhomogeneous</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-stack-get-hhomogeneous">gtk_stack_get_hhomogeneous</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-stack-set-vhomogeneous">gtk_stack_set_vhomogeneous</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-stack-get-vhomogeneous">gtk_stack_get_vhomogeneous</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-stack-set-transition-duration">gtk_stack_set_transition_duration</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="guint"><returnvalue>guint</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-stack-get-transition-duration">gtk_stack_get_transition_duration</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-stack-set-transition-type">gtk_stack_set_transition_type</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GtkStackTransitionType"><returnvalue>GtkStackTransitionType</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-stack-get-transition-type">gtk_stack_get_transition_type</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-stack-get-transition-running">gtk_stack_get_transition_running</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-stack-get-interpolate-size">gtk_stack_get_interpolate_size</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-stack-set-interpolate-size">gtk_stack_set_interpolate_size</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkStack.properties" role="properties">
<title role="properties.title">Properties</title>
<informaltable frame="none">
<tgroup cols="3">
<colspec colname="properties_type" colwidth="150px"/>
<colspec colname="properties_name" colwidth="300px"/>
<colspec colname="properties_flags" colwidth="200px"/>
<tbody>
<row><entry role="property_type"><link linkend="GtkWidget"><type>GtkWidget</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkStackPage--child">child</link></entry><entry role="property_flags">Read / Write / Construct&#160;Only</entry></row>
<row><entry role="property_type"><link linkend="gchar"><type>gchar</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkStackPage--icon-name">icon-name</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gchar"><type>gchar</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkStackPage--name">name</link></entry><entry role="property_flags">Read / Write / Construct&#160;Only</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkStackPage--needs-attention">needs-attention</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gchar"><type>gchar</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkStackPage--title">title</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkStackPage--use-underline">use-underline</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkStackPage--visible">visible</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkStack--hhomogeneous">hhomogeneous</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkStack--interpolate-size">interpolate-size</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="GtkSelectionModel"><type>GtkSelectionModel</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkStack--pages">pages</link></entry><entry role="property_flags">Read</entry></row>
<row><entry role="property_type"><link linkend="guint"><type>guint</type></link></entry><entry role="property_name"><link linkend="GtkStack--transition-duration">transition-duration</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkStack--transition-running">transition-running</link></entry><entry role="property_flags">Read</entry></row>
<row><entry role="property_type"><link linkend="GtkStackTransitionType"><type>GtkStackTransitionType</type></link></entry><entry role="property_name"><link linkend="GtkStack--transition-type">transition-type</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkStack--vhomogeneous">vhomogeneous</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="GtkWidget"><type>GtkWidget</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkStack--visible-child">visible-child</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gchar"><type>gchar</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkStack--visible-child-name">visible-child-name</link></entry><entry role="property_flags">Read / Write</entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<anchor id="GtkStackPage"/><refsect1 id="GtkStack.other" role="other_proto">
<title role="other_proto.title">Types and Values</title>
<informaltable pgwide="1" frame="none">
<tgroup cols="2">
<colspec colname="other_proto_type" colwidth="150px"/>
<colspec colname="other_proto_name"/>
<tbody>
<row><entry role="datatype_keyword"></entry><entry role="function_name"><link linkend="GtkStackPage-struct">GtkStackPage</link></entry></row>
<row><entry role="datatype_keyword"></entry><entry role="function_name"><link linkend="GtkStack-struct">GtkStack</link></entry></row>
<row><entry role="datatype_keyword">enum</entry><entry role="function_name"><link linkend="GtkStackTransitionType">GtkStackTransitionType</link></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkStack.object-hierarchy" role="object_hierarchy">
<title role="object_hierarchy.title">Object Hierarchy</title>
<screen>    <link linkend="GObject">GObject</link>
    <phrase role="lineart">&#9500;&#9472;&#9472;</phrase> <link linkend="GInitiallyUnowned">GInitiallyUnowned</link>
    <phrase role="lineart">&#9474;</phrase>   <phrase role="lineart">&#9584;&#9472;&#9472;</phrase> <link linkend="GtkWidget">GtkWidget</link>
    <phrase role="lineart">&#9474;</phrase>       <phrase role="lineart">&#9584;&#9472;&#9472;</phrase> GtkStack
    <phrase role="lineart">&#9584;&#9472;&#9472;</phrase> GtkStackPage
</screen>
</refsect1>
<refsect1 id="GtkStack.implemented-interfaces" role="impl_interfaces">
<title role="impl_interfaces.title">Implemented Interfaces</title>
<para>
GtkStack implements
 <link linkend="AtkImplementorIface">AtkImplementorIface</link>,  <link linkend="GtkBuildable">GtkBuildable</link> and  <link linkend="GtkConstraintTarget">GtkConstraintTarget</link>.</para>

</refsect1>

<refsect1 id="GtkStack.includes"><title>Includes</title><synopsis>#include &lt;gtk/gtk.h&gt;
</synopsis></refsect1>

<refsect1 id="GtkStack.description" role="desc">
<title role="desc.title">Description</title>
<para>The GtkStack widget is a container which only shows
one of its children at a time. In contrast to GtkNotebook,
GtkStack does not provide a means for users to change the
visible child. Instead, the <link linkend="GtkStackSwitcher"><type>GtkStackSwitcher</type></link> widget can be
used with GtkStack to provide this functionality.</para>
<para>Transitions between pages can be animated as slides or
fades. This can be controlled with <link linkend="gtk-stack-set-transition-type"><function>gtk_stack_set_transition_type()</function></link>.
These animations respect the <link linkend="GtkSettings--gtk-enable-animations"><type>“gtk-enable-animations”</type></link>
setting.</para>
<para>GtkStack maintains a <link linkend="GtkStackPage"><type>GtkStackPage</type></link> object for each added
child, which holds additional per-child properties. You
obtain the <link linkend="GtkStackPage"><type>GtkStackPage</type></link> for a child with <link linkend="gtk-stack-get-page"><function>gtk_stack_get_page()</function></link>.</para>
<refsect2><title>GtkStack as GtkBuildable</title><para>To set child-specific properties in a .ui file, create GtkStackPage
objects explictly, and set the child widget as a property on it:</para>
<informalexample><programlisting role="example"><![CDATA[
  <object class="GtkStack" id="stack">
    <child>
      <object class="GtkStackPage">
        <property name="name">page1</property>
        <property name="title">In the beginning…</property>
        <property name="child">
          <object class="GtkLabel">
            <property name="label">It was dark</property>
          </object>
        </property>
      </object>
    </child>
]]></programlisting></informalexample>
<para></para>
</refsect2>
<refsect2><title>CSS nodes</title><para>GtkStack has a single CSS node named stack.</para>
</refsect2>

</refsect1>
<refsect1 id="GtkStack.functions_details" role="details">
<title role="details.title">Functions</title>
<refsect2 id="gtk-stack-page-get-visible" role="function">
<title>gtk_stack_page_get_visible&#160;()</title>
<indexterm zone="gtk-stack-page-get-visible"><primary>gtk_stack_page_get_visible</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_stack_page_get_visible (<parameter><link linkend="GtkStackPage"><type>GtkStackPage</type></link> *page</parameter>);</programlisting>
<para>Returns whether <parameter>page</parameter>
 is visible in its <link linkend="GtkStack"><type>GtkStack</type></link>.
This is independent from the <link linkend="GtkWidget--visible"><type>“visible”</type></link> value of its
<link linkend="GtkWidget"><type>GtkWidget</type></link>.</para>
<refsect3 id="gtk-stack-page-get-visible.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>page</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkStackPage"><type>GtkStackPage</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-stack-page-set-visible" role="function">
<title>gtk_stack_page_set_visible&#160;()</title>
<indexterm zone="gtk-stack-page-set-visible"><primary>gtk_stack_page_set_visible</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_stack_page_set_visible (<parameter><link linkend="GtkStackPage"><type>GtkStackPage</type></link> *page</parameter>,
                            <parameter><link linkend="gboolean"><type>gboolean</type></link> visible</parameter>);</programlisting>
<para>Sets the new value of the <link linkend="GtkStackPage--visible"><type>“visible”</type></link> property
to <parameter>visible</parameter>
.</para>
<refsect3 id="gtk-stack-page-set-visible.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>page</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkStackPage"><type>GtkStackPage</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>visible</para></entry>
<entry role="parameter_description"><para>The new property value</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-stack-page-get-child" role="function">
<title>gtk_stack_page_get_child&#160;()</title>
<indexterm zone="gtk-stack-page-get-child"><primary>gtk_stack_page_get_child</primary></indexterm>
<programlisting language="C"><link linkend="GtkWidget"><returnvalue>GtkWidget</returnvalue></link>&#160;*
gtk_stack_page_get_child (<parameter><link linkend="GtkStackPage"><type>GtkStackPage</type></link> *page</parameter>);</programlisting>
<para>Returns the stack child to which <parameter>page</parameter>
 belongs.</para>
<refsect3 id="gtk-stack-page-get-child.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>page</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkStackPage"><type>GtkStackPage</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-stack-page-get-child.returns" role="returns">
<title>Returns</title>
<para>the child to which <parameter>page</parameter>
belongs. </para>
<para><emphasis role="annotation">[<acronym>transfer none</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-stack-new" role="function">
<title>gtk_stack_new&#160;()</title>
<indexterm zone="gtk-stack-new"><primary>gtk_stack_new</primary></indexterm>
<programlisting language="C"><link linkend="GtkWidget"><returnvalue>GtkWidget</returnvalue></link>&#160;*
gtk_stack_new (<parameter><type>void</type></parameter>);</programlisting>
<para>Creates a new <link linkend="GtkStack"><type>GtkStack</type></link> container.</para>
<refsect3 id="gtk-stack-new.returns" role="returns">
<title>Returns</title>
<para> a new <link linkend="GtkStack"><type>GtkStack</type></link></para>
</refsect3></refsect2>
<refsect2 id="gtk-stack-add-named" role="function">
<title>gtk_stack_add_named&#160;()</title>
<indexterm zone="gtk-stack-add-named"><primary>gtk_stack_add_named</primary></indexterm>
<programlisting language="C"><link linkend="GtkStackPage"><returnvalue>GtkStackPage</returnvalue></link>&#160;*
gtk_stack_add_named (<parameter><link linkend="GtkStack"><type>GtkStack</type></link> *stack</parameter>,
                     <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>,
                     <parameter>const <link linkend="gchar"><type>gchar</type></link> *name</parameter>);</programlisting>
<para>Adds a child to <parameter>stack</parameter>
.
The child is identified by the <parameter>name</parameter>
.</para>
<refsect3 id="gtk-stack-add-named.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>stack</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkStack"><type>GtkStack</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>child</para></entry>
<entry role="parameter_description"><para>the widget to add</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>name</para></entry>
<entry role="parameter_description"><para>the name for <parameter>child</parameter>
</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-stack-add-named.returns" role="returns">
<title>Returns</title>
<para>the <link linkend="GtkStackPage"><type>GtkStackPage</type></link> for <parameter>child</parameter>
. </para>
<para><emphasis role="annotation">[<acronym>transfer none</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-stack-add-titled" role="function">
<title>gtk_stack_add_titled&#160;()</title>
<indexterm zone="gtk-stack-add-titled"><primary>gtk_stack_add_titled</primary></indexterm>
<programlisting language="C"><link linkend="GtkStackPage"><returnvalue>GtkStackPage</returnvalue></link>&#160;*
gtk_stack_add_titled (<parameter><link linkend="GtkStack"><type>GtkStack</type></link> *stack</parameter>,
                      <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>,
                      <parameter>const <link linkend="gchar"><type>gchar</type></link> *name</parameter>,
                      <parameter>const <link linkend="gchar"><type>gchar</type></link> *title</parameter>);</programlisting>
<para>Adds a child to <parameter>stack</parameter>
.
The child is identified by the <parameter>name</parameter>
. The <parameter>title</parameter>

will be used by <link linkend="GtkStackSwitcher"><type>GtkStackSwitcher</type></link> to represent
<parameter>child</parameter>
 in a tab bar, so it should be short.</para>
<refsect3 id="gtk-stack-add-titled.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>stack</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkStack"><type>GtkStack</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>child</para></entry>
<entry role="parameter_description"><para>the widget to add</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>name</para></entry>
<entry role="parameter_description"><para>the name for <parameter>child</parameter>
</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>title</para></entry>
<entry role="parameter_description"><para>a human-readable title for <parameter>child</parameter>
</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-stack-add-titled.returns" role="returns">
<title>Returns</title>
<para>the <link linkend="GtkStackPage"><type>GtkStackPage</type></link> for <parameter>child</parameter>
. </para>
<para><emphasis role="annotation">[<acronym>transfer none</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-stack-remove" role="function">
<title>gtk_stack_remove&#160;()</title>
<indexterm zone="gtk-stack-remove"><primary>gtk_stack_remove</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_stack_remove (<parameter><link linkend="GtkStack"><type>GtkStack</type></link> *stack</parameter>,
                  <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>);</programlisting>
<para>Removes a child widget from <parameter>stack</parameter>
.</para>
<refsect3 id="gtk-stack-remove.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>stack</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkStack"><type>GtkStack</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>child</para></entry>
<entry role="parameter_description"><para>the child to remove</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-stack-get-child-by-name" role="function">
<title>gtk_stack_get_child_by_name&#160;()</title>
<indexterm zone="gtk-stack-get-child-by-name"><primary>gtk_stack_get_child_by_name</primary></indexterm>
<programlisting language="C"><link linkend="GtkWidget"><returnvalue>GtkWidget</returnvalue></link>&#160;*
gtk_stack_get_child_by_name (<parameter><link linkend="GtkStack"><type>GtkStack</type></link> *stack</parameter>,
                             <parameter>const <link linkend="gchar"><type>gchar</type></link> *name</parameter>);</programlisting>
<para>Finds the child of the <link linkend="GtkStack"><type>GtkStack</type></link> with the name given as
the argument. Returns <link linkend="NULL:CAPS"><literal>NULL</literal></link> if there is no child with this
name.</para>
<refsect3 id="gtk-stack-get-child-by-name.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>stack</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkStack"><type>GtkStack</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>name</para></entry>
<entry role="parameter_description"><para>the name of the child to find</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-stack-get-child-by-name.returns" role="returns">
<title>Returns</title>
<para>the requested child of the <link linkend="GtkStack"><type>GtkStack</type></link>. </para>
<para><emphasis role="annotation">[<acronym>transfer none</acronym>][<acronym>nullable</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-stack-get-page" role="function">
<title>gtk_stack_get_page&#160;()</title>
<indexterm zone="gtk-stack-get-page"><primary>gtk_stack_get_page</primary></indexterm>
<programlisting language="C"><link linkend="GtkStackPage"><returnvalue>GtkStackPage</returnvalue></link>&#160;*
gtk_stack_get_page (<parameter><link linkend="GtkStack"><type>GtkStack</type></link> *stack</parameter>,
                    <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>);</programlisting>
<para>Returns the <link linkend="GtkStackPage"><type>GtkStackPage</type></link> object for <parameter>child</parameter>
.</para>
<refsect3 id="gtk-stack-get-page.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>stack</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkStack"><type>GtkStack</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>child</para></entry>
<entry role="parameter_description"><para>a child of <parameter>stack</parameter>
</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-stack-get-page.returns" role="returns">
<title>Returns</title>
<para>the <link linkend="GtkStackPage"><type>GtkStackPage</type></link> for <parameter>child</parameter>
. </para>
<para><emphasis role="annotation">[<acronym>transfer none</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-stack-get-pages" role="function">
<title>gtk_stack_get_pages&#160;()</title>
<indexterm zone="gtk-stack-get-pages"><primary>gtk_stack_get_pages</primary></indexterm>
<programlisting language="C"><link linkend="GtkSelectionModel"><returnvalue>GtkSelectionModel</returnvalue></link>&#160;*
gtk_stack_get_pages (<parameter><link linkend="GtkStack"><type>GtkStack</type></link> *stack</parameter>);</programlisting>
<para>Returns a <link linkend="GListModel"><type>GListModel</type></link> that contains the pages of the stack,
and can be used to keep and up-to-date view. The model also
implements <link linkend="GtkSelectionModel"><type>GtkSelectionModel</type></link> and can be used to track and
modify the visible page..</para>
<refsect3 id="gtk-stack-get-pages.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>stack</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkStack"><type>GtkStack</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-stack-get-pages.returns" role="returns">
<title>Returns</title>
<para>a <link linkend="GtkSelectionModel"><type>GtkSelectionModel</type></link> for the stack's children. </para>
<para><emphasis role="annotation">[<acronym>transfer full</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-stack-set-visible-child" role="function">
<title>gtk_stack_set_visible_child&#160;()</title>
<indexterm zone="gtk-stack-set-visible-child"><primary>gtk_stack_set_visible_child</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_stack_set_visible_child (<parameter><link linkend="GtkStack"><type>GtkStack</type></link> *stack</parameter>,
                             <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>);</programlisting>
<para>Makes <parameter>child</parameter>
 the visible child of <parameter>stack</parameter>
.</para>
<para>If <parameter>child</parameter>
 is different from the currently
visible child, the transition between the
two will be animated with the current
transition type of <parameter>stack</parameter>
.</para>
<para>Note that the <parameter>child</parameter>
 widget has to be visible itself
(see <link linkend="gtk-widget-show"><function>gtk_widget_show()</function></link>) in order to become the visible
child of <parameter>stack</parameter>
.</para>
<refsect3 id="gtk-stack-set-visible-child.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>stack</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkStack"><type>GtkStack</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>child</para></entry>
<entry role="parameter_description"><para>a child of <parameter>stack</parameter>
</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-stack-get-visible-child" role="function">
<title>gtk_stack_get_visible_child&#160;()</title>
<indexterm zone="gtk-stack-get-visible-child"><primary>gtk_stack_get_visible_child</primary></indexterm>
<programlisting language="C"><link linkend="GtkWidget"><returnvalue>GtkWidget</returnvalue></link>&#160;*
gtk_stack_get_visible_child (<parameter><link linkend="GtkStack"><type>GtkStack</type></link> *stack</parameter>);</programlisting>
<para>Gets the currently visible child of <parameter>stack</parameter>
, or <link linkend="NULL:CAPS"><literal>NULL</literal></link> if
there are no visible children.</para>
<refsect3 id="gtk-stack-get-visible-child.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>stack</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkStack"><type>GtkStack</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-stack-get-visible-child.returns" role="returns">
<title>Returns</title>
<para>the visible child of the <link linkend="GtkStack"><type>GtkStack</type></link>. </para>
<para><emphasis role="annotation">[<acronym>transfer none</acronym>][<acronym>nullable</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-stack-set-visible-child-name" role="function">
<title>gtk_stack_set_visible_child_name&#160;()</title>
<indexterm zone="gtk-stack-set-visible-child-name"><primary>gtk_stack_set_visible_child_name</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_stack_set_visible_child_name (<parameter><link linkend="GtkStack"><type>GtkStack</type></link> *stack</parameter>,
                                  <parameter>const <link linkend="gchar"><type>gchar</type></link> *name</parameter>);</programlisting>
<para>Makes the child with the given name visible.</para>
<para>If <parameter>child</parameter>
 is different from the currently
visible child, the transition between the
two will be animated with the current
transition type of <parameter>stack</parameter>
.</para>
<para>Note that the child widget has to be visible itself
(see <link linkend="gtk-widget-show"><function>gtk_widget_show()</function></link>) in order to become the visible
child of <parameter>stack</parameter>
.</para>
<refsect3 id="gtk-stack-set-visible-child-name.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>stack</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkStack"><type>GtkStack</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>name</para></entry>
<entry role="parameter_description"><para>the name of the child to make visible</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-stack-get-visible-child-name" role="function">
<title>gtk_stack_get_visible_child_name&#160;()</title>
<indexterm zone="gtk-stack-get-visible-child-name"><primary>gtk_stack_get_visible_child_name</primary></indexterm>
<programlisting language="C">const <link linkend="gchar"><returnvalue>gchar</returnvalue></link>&#160;*
gtk_stack_get_visible_child_name (<parameter><link linkend="GtkStack"><type>GtkStack</type></link> *stack</parameter>);</programlisting>
<para>Returns the name of the currently visible child of <parameter>stack</parameter>
, or
<link linkend="NULL:CAPS"><literal>NULL</literal></link> if there is no visible child.</para>
<refsect3 id="gtk-stack-get-visible-child-name.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>stack</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkStack"><type>GtkStack</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-stack-get-visible-child-name.returns" role="returns">
<title>Returns</title>
<para>the name of the visible child of the <link linkend="GtkStack"><type>GtkStack</type></link>. </para>
<para><emphasis role="annotation">[<acronym>transfer none</acronym>][<acronym>nullable</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-stack-set-visible-child-full" role="function">
<title>gtk_stack_set_visible_child_full&#160;()</title>
<indexterm zone="gtk-stack-set-visible-child-full"><primary>gtk_stack_set_visible_child_full</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_stack_set_visible_child_full (<parameter><link linkend="GtkStack"><type>GtkStack</type></link> *stack</parameter>,
                                  <parameter>const <link linkend="gchar"><type>gchar</type></link> *name</parameter>,
                                  <parameter><link linkend="GtkStackTransitionType"><type>GtkStackTransitionType</type></link> transition</parameter>);</programlisting>
<para>Makes the child with the given name visible.</para>
<para>Note that the child widget has to be visible itself
(see <link linkend="gtk-widget-show"><function>gtk_widget_show()</function></link>) in order to become the visible
child of <parameter>stack</parameter>
.</para>
<refsect3 id="gtk-stack-set-visible-child-full.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>stack</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkStack"><type>GtkStack</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>name</para></entry>
<entry role="parameter_description"><para>the name of the child to make visible</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>transition</para></entry>
<entry role="parameter_description"><para>the transition type to use</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-stack-set-hhomogeneous" role="function">
<title>gtk_stack_set_hhomogeneous&#160;()</title>
<indexterm zone="gtk-stack-set-hhomogeneous"><primary>gtk_stack_set_hhomogeneous</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_stack_set_hhomogeneous (<parameter><link linkend="GtkStack"><type>GtkStack</type></link> *stack</parameter>,
                            <parameter><link linkend="gboolean"><type>gboolean</type></link> hhomogeneous</parameter>);</programlisting>
<para>Sets the <link linkend="GtkStack"><type>GtkStack</type></link> to be horizontally homogeneous or not.
If it is homogeneous, the <link linkend="GtkStack"><type>GtkStack</type></link> will request the same
width for all its children. If it isn't, the stack
may change width when a different child becomes visible.</para>
<refsect3 id="gtk-stack-set-hhomogeneous.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>stack</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkStack"><type>GtkStack</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>hhomogeneous</para></entry>
<entry role="parameter_description"><para><link linkend="TRUE:CAPS"><literal>TRUE</literal></link> to make <parameter>stack</parameter>
horizontally homogeneous</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-stack-get-hhomogeneous" role="function">
<title>gtk_stack_get_hhomogeneous&#160;()</title>
<indexterm zone="gtk-stack-get-hhomogeneous"><primary>gtk_stack_get_hhomogeneous</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_stack_get_hhomogeneous (<parameter><link linkend="GtkStack"><type>GtkStack</type></link> *stack</parameter>);</programlisting>
<para>Gets whether <parameter>stack</parameter>
 is horizontally homogeneous.
See <link linkend="gtk-stack-set-hhomogeneous"><function>gtk_stack_set_hhomogeneous()</function></link>.</para>
<refsect3 id="gtk-stack-get-hhomogeneous.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>stack</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkStack"><type>GtkStack</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-stack-get-hhomogeneous.returns" role="returns">
<title>Returns</title>
<para> whether <parameter>stack</parameter>
is horizontally homogeneous.</para>
</refsect3></refsect2>
<refsect2 id="gtk-stack-set-vhomogeneous" role="function">
<title>gtk_stack_set_vhomogeneous&#160;()</title>
<indexterm zone="gtk-stack-set-vhomogeneous"><primary>gtk_stack_set_vhomogeneous</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_stack_set_vhomogeneous (<parameter><link linkend="GtkStack"><type>GtkStack</type></link> *stack</parameter>,
                            <parameter><link linkend="gboolean"><type>gboolean</type></link> vhomogeneous</parameter>);</programlisting>
<para>Sets the <link linkend="GtkStack"><type>GtkStack</type></link> to be vertically homogeneous or not.
If it is homogeneous, the <link linkend="GtkStack"><type>GtkStack</type></link> will request the same
height for all its children. If it isn't, the stack
may change height when a different child becomes visible.</para>
<refsect3 id="gtk-stack-set-vhomogeneous.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>stack</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkStack"><type>GtkStack</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>vhomogeneous</para></entry>
<entry role="parameter_description"><para><link linkend="TRUE:CAPS"><literal>TRUE</literal></link> to make <parameter>stack</parameter>
vertically homogeneous</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-stack-get-vhomogeneous" role="function">
<title>gtk_stack_get_vhomogeneous&#160;()</title>
<indexterm zone="gtk-stack-get-vhomogeneous"><primary>gtk_stack_get_vhomogeneous</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_stack_get_vhomogeneous (<parameter><link linkend="GtkStack"><type>GtkStack</type></link> *stack</parameter>);</programlisting>
<para>Gets whether <parameter>stack</parameter>
 is vertically homogeneous.
See <link linkend="gtk-stack-set-vhomogeneous"><function>gtk_stack_set_vhomogeneous()</function></link>.</para>
<refsect3 id="gtk-stack-get-vhomogeneous.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>stack</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkStack"><type>GtkStack</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-stack-get-vhomogeneous.returns" role="returns">
<title>Returns</title>
<para> whether <parameter>stack</parameter>
is vertically homogeneous.</para>
</refsect3></refsect2>
<refsect2 id="gtk-stack-set-transition-duration" role="function">
<title>gtk_stack_set_transition_duration&#160;()</title>
<indexterm zone="gtk-stack-set-transition-duration"><primary>gtk_stack_set_transition_duration</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_stack_set_transition_duration (<parameter><link linkend="GtkStack"><type>GtkStack</type></link> *stack</parameter>,
                                   <parameter><link linkend="guint"><type>guint</type></link> duration</parameter>);</programlisting>
<para>Sets the duration that transitions between pages in <parameter>stack</parameter>

will take.</para>
<refsect3 id="gtk-stack-set-transition-duration.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>stack</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkStack"><type>GtkStack</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>duration</para></entry>
<entry role="parameter_description"><para>the new duration, in milliseconds</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-stack-get-transition-duration" role="function">
<title>gtk_stack_get_transition_duration&#160;()</title>
<indexterm zone="gtk-stack-get-transition-duration"><primary>gtk_stack_get_transition_duration</primary></indexterm>
<programlisting language="C"><link linkend="guint"><returnvalue>guint</returnvalue></link>
gtk_stack_get_transition_duration (<parameter><link linkend="GtkStack"><type>GtkStack</type></link> *stack</parameter>);</programlisting>
<para>Returns the amount of time (in milliseconds) that
transitions between pages in <parameter>stack</parameter>
 will take.</para>
<refsect3 id="gtk-stack-get-transition-duration.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>stack</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkStack"><type>GtkStack</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-stack-get-transition-duration.returns" role="returns">
<title>Returns</title>
<para> the transition duration</para>
</refsect3></refsect2>
<refsect2 id="gtk-stack-set-transition-type" role="function">
<title>gtk_stack_set_transition_type&#160;()</title>
<indexterm zone="gtk-stack-set-transition-type"><primary>gtk_stack_set_transition_type</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_stack_set_transition_type (<parameter><link linkend="GtkStack"><type>GtkStack</type></link> *stack</parameter>,
                               <parameter><link linkend="GtkStackTransitionType"><type>GtkStackTransitionType</type></link> transition</parameter>);</programlisting>
<para>Sets the type of animation that will be used for
transitions between pages in <parameter>stack</parameter>
. Available
types include various kinds of fades and slides.</para>
<para>The transition type can be changed without problems
at runtime, so it is possible to change the animation
based on the page that is about to become current.</para>
<refsect3 id="gtk-stack-set-transition-type.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>stack</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkStack"><type>GtkStack</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>transition</para></entry>
<entry role="parameter_description"><para>the new transition type</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-stack-get-transition-type" role="function">
<title>gtk_stack_get_transition_type&#160;()</title>
<indexterm zone="gtk-stack-get-transition-type"><primary>gtk_stack_get_transition_type</primary></indexterm>
<programlisting language="C"><link linkend="GtkStackTransitionType"><returnvalue>GtkStackTransitionType</returnvalue></link>
gtk_stack_get_transition_type (<parameter><link linkend="GtkStack"><type>GtkStack</type></link> *stack</parameter>);</programlisting>
<para>Gets the type of animation that will be used
for transitions between pages in <parameter>stack</parameter>
.</para>
<refsect3 id="gtk-stack-get-transition-type.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>stack</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkStack"><type>GtkStack</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-stack-get-transition-type.returns" role="returns">
<title>Returns</title>
<para> the current transition type of <parameter>stack</parameter>
</para>
</refsect3></refsect2>
<refsect2 id="gtk-stack-get-transition-running" role="function">
<title>gtk_stack_get_transition_running&#160;()</title>
<indexterm zone="gtk-stack-get-transition-running"><primary>gtk_stack_get_transition_running</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_stack_get_transition_running (<parameter><link linkend="GtkStack"><type>GtkStack</type></link> *stack</parameter>);</programlisting>
<para>Returns whether the <parameter>stack</parameter>
 is currently in a transition from one page to
another.</para>
<refsect3 id="gtk-stack-get-transition-running.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>stack</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkStack"><type>GtkStack</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-stack-get-transition-running.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if the transition is currently running, <link linkend="FALSE:CAPS"><literal>FALSE</literal></link> otherwise.</para>
</refsect3></refsect2>
<refsect2 id="gtk-stack-get-interpolate-size" role="function">
<title>gtk_stack_get_interpolate_size&#160;()</title>
<indexterm zone="gtk-stack-get-interpolate-size"><primary>gtk_stack_get_interpolate_size</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_stack_get_interpolate_size (<parameter><link linkend="GtkStack"><type>GtkStack</type></link> *stack</parameter>);</programlisting>
<para>Returns wether the <link linkend="GtkStack"><type>GtkStack</type></link> is set up to interpolate between
the sizes of children on page switch.</para>
<refsect3 id="gtk-stack-get-interpolate-size.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>stack</para></entry>
<entry role="parameter_description"><para>A <link linkend="GtkStack"><type>GtkStack</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-stack-get-interpolate-size.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if child sizes are interpolated</para>
</refsect3></refsect2>
<refsect2 id="gtk-stack-set-interpolate-size" role="function">
<title>gtk_stack_set_interpolate_size&#160;()</title>
<indexterm zone="gtk-stack-set-interpolate-size"><primary>gtk_stack_set_interpolate_size</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_stack_set_interpolate_size (<parameter><link linkend="GtkStack"><type>GtkStack</type></link> *stack</parameter>,
                                <parameter><link linkend="gboolean"><type>gboolean</type></link> interpolate_size</parameter>);</programlisting>
<para>Sets whether or not <parameter>stack</parameter>
 will interpolate its size when
changing the visible child. If the <link linkend="GtkStack--interpolate-size"><type>“interpolate-size”</type></link>
property is set to <link linkend="TRUE:CAPS"><literal>TRUE</literal></link>, <parameter>stack</parameter>
 will interpolate its size between
the current one and the one it'll take after changing the
visible child, according to the set transition duration.</para>
<refsect3 id="gtk-stack-set-interpolate-size.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>stack</para></entry>
<entry role="parameter_description"><para>A <link linkend="GtkStack"><type>GtkStack</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>interpolate_size</para></entry>
<entry role="parameter_description"><para>the new value</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>

</refsect1>
<refsect1 id="GtkStack.other_details" role="details">
<title role="details.title">Types and Values</title>
<refsect2 id="GtkStackPage-struct" role="struct">
<title>GtkStackPage</title>
<indexterm zone="GtkStackPage-struct"><primary>GtkStackPage</primary></indexterm>
<programlisting language="C">typedef struct _GtkStackPage GtkStackPage;</programlisting>
</refsect2>
<refsect2 id="GtkStack-struct" role="struct">
<title>GtkStack</title>
<indexterm zone="GtkStack-struct"><primary>GtkStack</primary></indexterm>
<programlisting language="C">typedef struct _GtkStack GtkStack;</programlisting>
</refsect2>
<refsect2 id="GtkStackTransitionType" role="enum">
<title>enum GtkStackTransitionType</title>
<indexterm zone="GtkStackTransitionType"><primary>GtkStackTransitionType</primary></indexterm>
<para>These enumeration values describe the possible transitions
between pages in a <link linkend="GtkStack"><type>GtkStack</type></link> widget.</para>
<para>New values may be added to this enumeration over time.</para>
<refsect3 id="GtkStackTransitionType.members" role="enum_members">
<title>Members</title>
<informaltable role="enum_members_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="enum_members_name" colwidth="300px"/>
<colspec colname="enum_members_description"/>
<colspec colname="enum_members_annotations" colwidth="200px"/>
<tbody>
<row role="constant"><entry role="enum_member_name"><para id="GTK-STACK-TRANSITION-TYPE-NONE:CAPS">GTK_STACK_TRANSITION_TYPE_NONE</para></entry>
<entry role="enum_member_description"><para>No transition</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-STACK-TRANSITION-TYPE-CROSSFADE:CAPS">GTK_STACK_TRANSITION_TYPE_CROSSFADE</para></entry>
<entry role="enum_member_description"><para>A cross-fade</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-STACK-TRANSITION-TYPE-SLIDE-RIGHT:CAPS">GTK_STACK_TRANSITION_TYPE_SLIDE_RIGHT</para></entry>
<entry role="enum_member_description"><para>Slide from left to right</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-STACK-TRANSITION-TYPE-SLIDE-LEFT:CAPS">GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT</para></entry>
<entry role="enum_member_description"><para>Slide from right to left</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-STACK-TRANSITION-TYPE-SLIDE-UP:CAPS">GTK_STACK_TRANSITION_TYPE_SLIDE_UP</para></entry>
<entry role="enum_member_description"><para>Slide from bottom up</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-STACK-TRANSITION-TYPE-SLIDE-DOWN:CAPS">GTK_STACK_TRANSITION_TYPE_SLIDE_DOWN</para></entry>
<entry role="enum_member_description"><para>Slide from top down</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-STACK-TRANSITION-TYPE-SLIDE-LEFT-RIGHT:CAPS">GTK_STACK_TRANSITION_TYPE_SLIDE_LEFT_RIGHT</para></entry>
<entry role="enum_member_description"><para>Slide from left or right according to the children order</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-STACK-TRANSITION-TYPE-SLIDE-UP-DOWN:CAPS">GTK_STACK_TRANSITION_TYPE_SLIDE_UP_DOWN</para></entry>
<entry role="enum_member_description"><para>Slide from top down or bottom up according to the order</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-STACK-TRANSITION-TYPE-OVER-UP:CAPS">GTK_STACK_TRANSITION_TYPE_OVER_UP</para></entry>
<entry role="enum_member_description"><para>Cover the old page by sliding up</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-STACK-TRANSITION-TYPE-OVER-DOWN:CAPS">GTK_STACK_TRANSITION_TYPE_OVER_DOWN</para></entry>
<entry role="enum_member_description"><para>Cover the old page by sliding down</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-STACK-TRANSITION-TYPE-OVER-LEFT:CAPS">GTK_STACK_TRANSITION_TYPE_OVER_LEFT</para></entry>
<entry role="enum_member_description"><para>Cover the old page by sliding to the left</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-STACK-TRANSITION-TYPE-OVER-RIGHT:CAPS">GTK_STACK_TRANSITION_TYPE_OVER_RIGHT</para></entry>
<entry role="enum_member_description"><para>Cover the old page by sliding to the right</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-STACK-TRANSITION-TYPE-UNDER-UP:CAPS">GTK_STACK_TRANSITION_TYPE_UNDER_UP</para></entry>
<entry role="enum_member_description"><para>Uncover the new page by sliding up</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-STACK-TRANSITION-TYPE-UNDER-DOWN:CAPS">GTK_STACK_TRANSITION_TYPE_UNDER_DOWN</para></entry>
<entry role="enum_member_description"><para>Uncover the new page by sliding down</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-STACK-TRANSITION-TYPE-UNDER-LEFT:CAPS">GTK_STACK_TRANSITION_TYPE_UNDER_LEFT</para></entry>
<entry role="enum_member_description"><para>Uncover the new page by sliding to the left</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-STACK-TRANSITION-TYPE-UNDER-RIGHT:CAPS">GTK_STACK_TRANSITION_TYPE_UNDER_RIGHT</para></entry>
<entry role="enum_member_description"><para>Uncover the new page by sliding to the right</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-STACK-TRANSITION-TYPE-OVER-UP-DOWN:CAPS">GTK_STACK_TRANSITION_TYPE_OVER_UP_DOWN</para></entry>
<entry role="enum_member_description"><para>Cover the old page sliding up or uncover the new page sliding down, according to order</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-STACK-TRANSITION-TYPE-OVER-DOWN-UP:CAPS">GTK_STACK_TRANSITION_TYPE_OVER_DOWN_UP</para></entry>
<entry role="enum_member_description"><para>Cover the old page sliding down or uncover the new page sliding up, according to order</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-STACK-TRANSITION-TYPE-OVER-LEFT-RIGHT:CAPS">GTK_STACK_TRANSITION_TYPE_OVER_LEFT_RIGHT</para></entry>
<entry role="enum_member_description"><para>Cover the old page sliding left or uncover the new page sliding right, according to order</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-STACK-TRANSITION-TYPE-OVER-RIGHT-LEFT:CAPS">GTK_STACK_TRANSITION_TYPE_OVER_RIGHT_LEFT</para></entry>
<entry role="enum_member_description"><para>Cover the old page sliding right or uncover the new page sliding left, according to order</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-STACK-TRANSITION-TYPE-ROTATE-LEFT:CAPS">GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT</para></entry>
<entry role="enum_member_description"><para>Pretend the pages are sides of a cube and rotate that cube to the left</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-STACK-TRANSITION-TYPE-ROTATE-RIGHT:CAPS">GTK_STACK_TRANSITION_TYPE_ROTATE_RIGHT</para></entry>
<entry role="enum_member_description"><para>Pretend the pages are sides of a cube and rotate that cube to the right</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-STACK-TRANSITION-TYPE-ROTATE-LEFT-RIGHT:CAPS">GTK_STACK_TRANSITION_TYPE_ROTATE_LEFT_RIGHT</para></entry>
<entry role="enum_member_description"><para>Pretend the pages are sides of a cube and rotate that cube to the left or right according to the children order</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>

</refsect1>
<refsect1 id="GtkStack.property-details" role="property_details">
<title role="property_details.title">Property Details</title>
<refsect2 id="GtkStackPage--child" role="property"><title>The <literal>“child”</literal> property</title>
<indexterm zone="GtkStackPage--child"><primary>GtkStackPage:child</primary></indexterm>
<programlisting>  “child”                    <link linkend="GtkWidget"><type>GtkWidget</type></link>&#160;*</programlisting>
<para>The child of the page.</para><para>Owner: GtkStackPage</para>
<para>Flags: Read / Write / Construct&#160;Only</para>
</refsect2>
<refsect2 id="GtkStackPage--icon-name" role="property"><title>The <literal>“icon-name”</literal> property</title>
<indexterm zone="GtkStackPage--icon-name"><primary>GtkStackPage:icon-name</primary></indexterm>
<programlisting>  “icon-name”                <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>The icon name of the child page.</para><para>Owner: GtkStackPage</para>
<para>Flags: Read / Write</para>
<para>Default value: NULL</para>
</refsect2>
<refsect2 id="GtkStackPage--name" role="property"><title>The <literal>“name”</literal> property</title>
<indexterm zone="GtkStackPage--name"><primary>GtkStackPage:name</primary></indexterm>
<programlisting>  “name”                     <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>The name of the child page.</para><para>Owner: GtkStackPage</para>
<para>Flags: Read / Write / Construct&#160;Only</para>
<para>Default value: NULL</para>
</refsect2>
<refsect2 id="GtkStackPage--needs-attention" role="property"><title>The <literal>“needs-attention”</literal> property</title>
<indexterm zone="GtkStackPage--needs-attention"><primary>GtkStackPage:needs-attention</primary></indexterm>
<programlisting>  “needs-attention”          <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether this page needs attention.</para><para>Owner: GtkStackPage</para>
<para>Flags: Read / Write</para>
<para>Default value: FALSE</para>
</refsect2>
<refsect2 id="GtkStackPage--title" role="property"><title>The <literal>“title”</literal> property</title>
<indexterm zone="GtkStackPage--title"><primary>GtkStackPage:title</primary></indexterm>
<programlisting>  “title”                    <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>The title of the child page.</para><para>Owner: GtkStackPage</para>
<para>Flags: Read / Write</para>
<para>Default value: NULL</para>
</refsect2>
<refsect2 id="GtkStackPage--use-underline" role="property"><title>The <literal>“use-underline”</literal> property</title>
<indexterm zone="GtkStackPage--use-underline"><primary>GtkStackPage:use-underline</primary></indexterm>
<programlisting>  “use-underline”            <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>If set, an underline in the title indicates the next character should be used for the mnemonic accelerator key.</para><para>Owner: GtkStackPage</para>
<para>Flags: Read / Write</para>
<para>Default value: FALSE</para>
</refsect2>
<refsect2 id="GtkStackPage--visible" role="property"><title>The <literal>“visible”</literal> property</title>
<indexterm zone="GtkStackPage--visible"><primary>GtkStackPage:visible</primary></indexterm>
<programlisting>  “visible”                  <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether this page is visible.</para><para>Owner: GtkStackPage</para>
<para>Flags: Read / Write</para>
<para>Default value: TRUE</para>
</refsect2>
<refsect2 id="GtkStack--hhomogeneous" role="property"><title>The <literal>“hhomogeneous”</literal> property</title>
<indexterm zone="GtkStack--hhomogeneous"><primary>GtkStack:hhomogeneous</primary></indexterm>
<programlisting>  “hhomogeneous”             <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para><link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if the stack allocates the same width for all children.</para>
<para>Owner: GtkStack</para>
<para>Flags: Read / Write</para>
<para>Default value: TRUE</para>
</refsect2>
<refsect2 id="GtkStack--interpolate-size" role="property"><title>The <literal>“interpolate-size”</literal> property</title>
<indexterm zone="GtkStack--interpolate-size"><primary>GtkStack:interpolate-size</primary></indexterm>
<programlisting>  “interpolate-size”         <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether or not the size should smoothly change when changing between differently sized children.</para><para>Owner: GtkStack</para>
<para>Flags: Read / Write</para>
<para>Default value: FALSE</para>
</refsect2>
<refsect2 id="GtkStack--pages" role="property"><title>The <literal>“pages”</literal> property</title>
<indexterm zone="GtkStack--pages"><primary>GtkStack:pages</primary></indexterm>
<programlisting>  “pages”                    <link linkend="GtkSelectionModel"><type>GtkSelectionModel</type></link>&#160;*</programlisting>
<para>A selection model with the stacks pages.</para><para>Owner: GtkStack</para>
<para>Flags: Read</para>
</refsect2>
<refsect2 id="GtkStack--transition-duration" role="property"><title>The <literal>“transition-duration”</literal> property</title>
<indexterm zone="GtkStack--transition-duration"><primary>GtkStack:transition-duration</primary></indexterm>
<programlisting>  “transition-duration”      <link linkend="guint"><type>guint</type></link></programlisting>
<para>The animation duration, in milliseconds.</para><para>Owner: GtkStack</para>
<para>Flags: Read / Write</para>
<para>Default value: 200</para>
</refsect2>
<refsect2 id="GtkStack--transition-running" role="property"><title>The <literal>“transition-running”</literal> property</title>
<indexterm zone="GtkStack--transition-running"><primary>GtkStack:transition-running</primary></indexterm>
<programlisting>  “transition-running”       <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether or not the transition is currently running.</para><para>Owner: GtkStack</para>
<para>Flags: Read</para>
<para>Default value: FALSE</para>
</refsect2>
<refsect2 id="GtkStack--transition-type" role="property"><title>The <literal>“transition-type”</literal> property</title>
<indexterm zone="GtkStack--transition-type"><primary>GtkStack:transition-type</primary></indexterm>
<programlisting>  “transition-type”          <link linkend="GtkStackTransitionType"><type>GtkStackTransitionType</type></link></programlisting>
<para>The type of animation used to transition.</para><para>Owner: GtkStack</para>
<para>Flags: Read / Write</para>
<para>Default value: GTK_STACK_TRANSITION_TYPE_NONE</para>
</refsect2>
<refsect2 id="GtkStack--vhomogeneous" role="property"><title>The <literal>“vhomogeneous”</literal> property</title>
<indexterm zone="GtkStack--vhomogeneous"><primary>GtkStack:vhomogeneous</primary></indexterm>
<programlisting>  “vhomogeneous”             <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para><link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if the stack allocates the same height for all children.</para>
<para>Owner: GtkStack</para>
<para>Flags: Read / Write</para>
<para>Default value: TRUE</para>
</refsect2>
<refsect2 id="GtkStack--visible-child" role="property"><title>The <literal>“visible-child”</literal> property</title>
<indexterm zone="GtkStack--visible-child"><primary>GtkStack:visible-child</primary></indexterm>
<programlisting>  “visible-child”            <link linkend="GtkWidget"><type>GtkWidget</type></link>&#160;*</programlisting>
<para>The widget currently visible in the stack.</para><para>Owner: GtkStack</para>
<para>Flags: Read / Write</para>
</refsect2>
<refsect2 id="GtkStack--visible-child-name" role="property"><title>The <literal>“visible-child-name”</literal> property</title>
<indexterm zone="GtkStack--visible-child-name"><primary>GtkStack:visible-child-name</primary></indexterm>
<programlisting>  “visible-child-name”       <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>The name of the widget currently visible in the stack.</para><para>Owner: GtkStack</para>
<para>Flags: Read / Write</para>
<para>Default value: NULL</para>
</refsect2>

</refsect1>
<refsect1 id="GtkStack.see-also">
<title>See Also</title>
<para><link linkend="GtkNotebook"><type>GtkNotebook</type></link>, <link linkend="GtkStackSwitcher"><type>GtkStackSwitcher</type></link></para>

</refsect1>

</refentry>
