<?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="GtkAssistant">
<refmeta>
<refentrytitle role="top_of_page" id="GtkAssistant.top_of_page">GtkAssistant</refentrytitle>
<manvolnum>3</manvolnum>
<refmiscinfo>GTK4 Library</refmiscinfo>
</refmeta>
<refnamediv>
<refname>GtkAssistant</refname>
<refpurpose>A widget used to guide users through multi-step operations</refpurpose>
</refnamediv>

<refsect1 id="GtkAssistant.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="GtkWidget"><returnvalue>GtkWidget</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-assistant-new">gtk_assistant_new</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GtkAssistantPage"><returnvalue>GtkAssistantPage</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-assistant-get-page">gtk_assistant_get_page</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GListModel"><returnvalue>GListModel</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-assistant-get-pages">gtk_assistant_get_pages</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-assistant-page-get-child">gtk_assistant_page_get_child</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gint"><returnvalue>gint</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-assistant-get-current-page">gtk_assistant_get_current_page</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-assistant-set-current-page">gtk_assistant_set_current_page</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gint"><returnvalue>gint</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-assistant-get-n-pages">gtk_assistant_get_n_pages</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-assistant-get-nth-page">gtk_assistant_get_nth_page</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gint"><returnvalue>gint</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-assistant-prepend-page">gtk_assistant_prepend_page</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gint"><returnvalue>gint</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-assistant-append-page">gtk_assistant_append_page</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gint"><returnvalue>gint</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-assistant-insert-page">gtk_assistant_insert_page</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-assistant-remove-page">gtk_assistant_remove_page</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gint"><returnvalue>gint</returnvalue></link>
</entry><entry role="function_name"><phrase role="c_punctuation">(</phrase><link linkend="GtkAssistantPageFunc">*GtkAssistantPageFunc</link><phrase role="c_punctuation">)</phrase>&#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-assistant-set-forward-page-func">gtk_assistant_set_forward_page_func</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-assistant-set-page-type">gtk_assistant_set_page_type</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GtkAssistantPageType"><returnvalue>GtkAssistantPageType</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-assistant-get-page-type">gtk_assistant_get_page_type</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-assistant-set-page-title">gtk_assistant_set_page_title</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-assistant-get-page-title">gtk_assistant_get_page_title</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-assistant-set-page-complete">gtk_assistant_set_page_complete</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-assistant-get-page-complete">gtk_assistant_get_page_complete</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-assistant-add-action-widget">gtk_assistant_add_action_widget</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-assistant-remove-action-widget">gtk_assistant_remove_action_widget</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-assistant-update-buttons-state">gtk_assistant_update_buttons_state</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-assistant-commit">gtk_assistant_commit</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-assistant-next-page">gtk_assistant_next_page</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-assistant-previous-page">gtk_assistant_previous_page</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkAssistant.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="GListModel"><type>GListModel</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkAssistant--pages">pages</link></entry><entry role="property_flags">Read</entry></row>
<row><entry role="property_type"><link linkend="gint"><type>gint</type></link></entry><entry role="property_name"><link linkend="GtkAssistant--use-header-bar">use-header-bar</link></entry><entry role="property_flags">Read / Write / Construct&#160;Only</entry></row>
<row><entry role="property_type"><link linkend="GtkWidget"><type>GtkWidget</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkAssistantPage--child">child</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="GtkAssistantPage--complete">complete</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="GtkAssistantPageType"><type>GtkAssistantPageType</type></link></entry><entry role="property_name"><link linkend="GtkAssistantPage--page-type">page-type</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="GtkAssistantPage--title">title</link></entry><entry role="property_flags">Read / Write</entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkAssistant.signals" role="signal_proto">
<title role="signal_proto.title">Signals</title>
<informaltable frame="none">
<tgroup cols="3">
<colspec colname="signal_proto_type" colwidth="150px"/>
<colspec colname="signal_proto_name" colwidth="300px"/>
<colspec colname="signal_proto_flags" colwidth="200px"/>
<tbody>
<row><entry role="signal_type"><link linkend="void"><returnvalue>void</returnvalue></link></entry><entry role="signal_name"><link linkend="GtkAssistant-apply">apply</link></entry><entry role="signal_flags"><link linkend="G-SIGNAL-RUN-LAST:CAPS">Run Last</link></entry></row>
<row><entry role="signal_type"><link linkend="void"><returnvalue>void</returnvalue></link></entry><entry role="signal_name"><link linkend="GtkAssistant-cancel">cancel</link></entry><entry role="signal_flags"><link linkend="G-SIGNAL-RUN-LAST:CAPS">Run Last</link></entry></row>
<row><entry role="signal_type"><link linkend="void"><returnvalue>void</returnvalue></link></entry><entry role="signal_name"><link linkend="GtkAssistant-close">close</link></entry><entry role="signal_flags"><link linkend="G-SIGNAL-RUN-LAST:CAPS">Run Last</link></entry></row>
<row><entry role="signal_type"><link linkend="void"><returnvalue>void</returnvalue></link></entry><entry role="signal_name"><link linkend="GtkAssistant-escape">escape</link></entry><entry role="signal_flags"><link linkend="G-SIGNAL-ACTION:CAPS">Action</link></entry></row>
<row><entry role="signal_type"><link linkend="void"><returnvalue>void</returnvalue></link></entry><entry role="signal_name"><link linkend="GtkAssistant-prepare">prepare</link></entry><entry role="signal_flags"><link linkend="G-SIGNAL-RUN-LAST:CAPS">Run Last</link></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<anchor id="GtkAssistantPage"/><refsect1 id="GtkAssistant.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="GtkAssistant-struct">GtkAssistant</link></entry></row>
<row><entry role="datatype_keyword"></entry><entry role="function_name"><link linkend="GtkAssistantPage-struct">GtkAssistantPage</link></entry></row>
<row><entry role="datatype_keyword">enum</entry><entry role="function_name"><link linkend="GtkAssistantPageType">GtkAssistantPageType</link></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkAssistant.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> <link linkend="GtkWindow">GtkWindow</link>
    <phrase role="lineart">&#9474;</phrase>           <phrase role="lineart">&#9584;&#9472;&#9472;</phrase> GtkAssistant
    <phrase role="lineart">&#9584;&#9472;&#9472;</phrase> GtkAssistantPage
</screen>
</refsect1>
<refsect1 id="GtkAssistant.implemented-interfaces" role="impl_interfaces">
<title role="impl_interfaces.title">Implemented Interfaces</title>
<para>
GtkAssistant implements
 <link linkend="AtkImplementorIface">AtkImplementorIface</link>,  <link linkend="GtkBuildable">GtkBuildable</link>,  <link linkend="GtkConstraintTarget">GtkConstraintTarget</link>,  <link linkend="GtkNative">GtkNative</link>,  <link linkend="GtkShortcutManager">GtkShortcutManager</link> and  <link linkend="GtkRoot">GtkRoot</link>.</para>

</refsect1>

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

<refsect1 id="GtkAssistant.description" role="desc">
<title role="desc.title">Description</title>
<para>A <link linkend="GtkAssistant"><type>GtkAssistant</type></link> is a widget used to represent a generally complex
operation splitted in several steps, guiding the user through its
pages and controlling the page flow to collect the necessary data.</para>
<para>The design of GtkAssistant is that it controls what buttons to show
and to make sensitive, based on what it knows about the page sequence
and the <link linkend="GtkAssistantPageType">type</link> of each page,
in addition to state information like the page
<link linkend="gtk-assistant-set-page-complete">completion</link>
and <link linkend="gtk-assistant-commit">committed</link> status.</para>
<para>If you have a case that doesn’t quite fit in <link linkend="GtkAssistants"><type>GtkAssistants</type></link> way of
handling buttons, you can use the <link linkend="GTK-ASSISTANT-PAGE-CUSTOM:CAPS"><type>GTK_ASSISTANT_PAGE_CUSTOM</type></link> page
type and handle buttons yourself.</para>
<para>GtkAssistant maintains a <link linkend="GtkAssistantPage"><type>GtkAssistantPage</type></link> object for each added
child, which holds additional per-child properties. You
obtain the <link linkend="GtkAssistantPage"><type>GtkAssistantPage</type></link> for a child with <link linkend="gtk-assistant-get-page"><function>gtk_assistant_get_page()</function></link>.</para>
<refsect2><title>GtkAssistant as GtkBuildable</title><para>The GtkAssistant implementation of the <link linkend="GtkBuildable"><type>GtkBuildable</type></link> interface
exposes the <parameter>action_area</parameter>
 as internal children with the name
“action_area”.</para>
<para>To add pages to an assistant in <link linkend="GtkBuilder"><type>GtkBuilder</type></link>, simply add it as a
child to the GtkAssistant object. If you need to set per-object
properties, create a <link linkend="GtkAssistantPage"><type>GtkAssistantPage</type></link> object explicitly, and
set the child widget as a property on it.</para>
</refsect2>
<refsect2><title>CSS nodes</title><para>GtkAssistant has a single CSS node with the name assistant.</para>
</refsect2>

</refsect1>
<refsect1 id="GtkAssistant.functions_details" role="details">
<title role="details.title">Functions</title>
<refsect2 id="gtk-assistant-new" role="function">
<title>gtk_assistant_new&#160;()</title>
<indexterm zone="gtk-assistant-new"><primary>gtk_assistant_new</primary></indexterm>
<programlisting language="C"><link linkend="GtkWidget"><returnvalue>GtkWidget</returnvalue></link>&#160;*
gtk_assistant_new (<parameter><type>void</type></parameter>);</programlisting>
<para>Creates a new <link linkend="GtkAssistant"><type>GtkAssistant</type></link>.</para>
<refsect3 id="gtk-assistant-new.returns" role="returns">
<title>Returns</title>
<para> a newly created <link linkend="GtkAssistant"><type>GtkAssistant</type></link></para>
</refsect3></refsect2>
<refsect2 id="gtk-assistant-get-page" role="function">
<title>gtk_assistant_get_page&#160;()</title>
<indexterm zone="gtk-assistant-get-page"><primary>gtk_assistant_get_page</primary></indexterm>
<programlisting language="C"><link linkend="GtkAssistantPage"><returnvalue>GtkAssistantPage</returnvalue></link>&#160;*
gtk_assistant_get_page (<parameter><link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant</parameter>,
                        <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>);</programlisting>
<para>Returns the <link linkend="GtkAssistantPage"><type>GtkAssistantPage</type></link> object for <parameter>child</parameter>
.</para>
<refsect3 id="gtk-assistant-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>assistant</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkAssistant"><type>GtkAssistant</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>assistant</parameter>
</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-assistant-get-page.returns" role="returns">
<title>Returns</title>
<para>the <link linkend="GtkAssistantPage"><type>GtkAssistantPage</type></link> for <parameter>child</parameter>
. </para>
<para><emphasis role="annotation">[<acronym>transfer none</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-assistant-get-pages" role="function">
<title>gtk_assistant_get_pages&#160;()</title>
<indexterm zone="gtk-assistant-get-pages"><primary>gtk_assistant_get_pages</primary></indexterm>
<programlisting language="C"><link linkend="GListModel"><returnvalue>GListModel</returnvalue></link>&#160;*
gtk_assistant_get_pages (<parameter><link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant</parameter>);</programlisting>
<para>Gets a list model of the assistant pages.</para>
<refsect3 id="gtk-assistant-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>assistant</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkAssistant"><type>GtkAssistant</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-assistant-get-pages.returns" role="returns">
<title>Returns</title>
<para>A list model of the pages. </para>
<para><emphasis role="annotation">[<acronym>transfer full</acronym>][<acronym>attributes</acronym> element-type=GtkAssistantPage]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-assistant-page-get-child" role="function">
<title>gtk_assistant_page_get_child&#160;()</title>
<indexterm zone="gtk-assistant-page-get-child"><primary>gtk_assistant_page_get_child</primary></indexterm>
<programlisting language="C"><link linkend="GtkWidget"><returnvalue>GtkWidget</returnvalue></link>&#160;*
gtk_assistant_page_get_child (<parameter><link linkend="GtkAssistantPage"><type>GtkAssistantPage</type></link> *page</parameter>);</programlisting>
<para>Returns the child to which <parameter>page</parameter>
 belongs.</para>
<refsect3 id="gtk-assistant-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="GtkAssistantPage"><type>GtkAssistantPage</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-assistant-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-assistant-get-current-page" role="function">
<title>gtk_assistant_get_current_page&#160;()</title>
<indexterm zone="gtk-assistant-get-current-page"><primary>gtk_assistant_get_current_page</primary></indexterm>
<programlisting language="C"><link linkend="gint"><returnvalue>gint</returnvalue></link>
gtk_assistant_get_current_page (<parameter><link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant</parameter>);</programlisting>
<para>Returns the page number of the current page.</para>
<refsect3 id="gtk-assistant-get-current-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>assistant</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkAssistant"><type>GtkAssistant</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-assistant-get-current-page.returns" role="returns">
<title>Returns</title>
<para> The index (starting from 0) of the current
page in the <parameter>assistant</parameter>
, or -1 if the <parameter>assistant</parameter>
has no pages,
or no current page.</para>
</refsect3></refsect2>
<refsect2 id="gtk-assistant-set-current-page" role="function">
<title>gtk_assistant_set_current_page&#160;()</title>
<indexterm zone="gtk-assistant-set-current-page"><primary>gtk_assistant_set_current_page</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_assistant_set_current_page (<parameter><link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant</parameter>,
                                <parameter><link linkend="gint"><type>gint</type></link> page_num</parameter>);</programlisting>
<para>Switches the page to <parameter>page_num</parameter>
.</para>
<para>Note that this will only be necessary in custom buttons,
as the <parameter>assistant</parameter>
 flow can be set with
<link linkend="gtk-assistant-set-forward-page-func"><function>gtk_assistant_set_forward_page_func()</function></link>.</para>
<refsect3 id="gtk-assistant-set-current-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>assistant</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkAssistant"><type>GtkAssistant</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>page_num</para></entry>
<entry role="parameter_description"><para>index of the page to switch to, starting from 0.
If negative, the last page will be used. If greater
than the number of pages in the <parameter>assistant</parameter>
, nothing
will be done.</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-assistant-get-n-pages" role="function">
<title>gtk_assistant_get_n_pages&#160;()</title>
<indexterm zone="gtk-assistant-get-n-pages"><primary>gtk_assistant_get_n_pages</primary></indexterm>
<programlisting language="C"><link linkend="gint"><returnvalue>gint</returnvalue></link>
gtk_assistant_get_n_pages (<parameter><link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant</parameter>);</programlisting>
<para>Returns the number of pages in the <parameter>assistant</parameter>
</para>
<refsect3 id="gtk-assistant-get-n-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>assistant</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkAssistant"><type>GtkAssistant</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-assistant-get-n-pages.returns" role="returns">
<title>Returns</title>
<para> the number of pages in the <parameter>assistant</parameter>
</para>
</refsect3></refsect2>
<refsect2 id="gtk-assistant-get-nth-page" role="function">
<title>gtk_assistant_get_nth_page&#160;()</title>
<indexterm zone="gtk-assistant-get-nth-page"><primary>gtk_assistant_get_nth_page</primary></indexterm>
<programlisting language="C"><link linkend="GtkWidget"><returnvalue>GtkWidget</returnvalue></link>&#160;*
gtk_assistant_get_nth_page (<parameter><link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant</parameter>,
                            <parameter><link linkend="gint"><type>gint</type></link> page_num</parameter>);</programlisting>
<para>Returns the child widget contained in page number <parameter>page_num</parameter>
.</para>
<refsect3 id="gtk-assistant-get-nth-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>assistant</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkAssistant"><type>GtkAssistant</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>page_num</para></entry>
<entry role="parameter_description"><para>the index of a page in the <parameter>assistant</parameter>
,
or -1 to get the last page</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-assistant-get-nth-page.returns" role="returns">
<title>Returns</title>
<para>the child widget, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>
if <parameter>page_num</parameter>
is out of bounds. </para>
<para><emphasis role="annotation">[<acronym>nullable</acronym>][<acronym>transfer none</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-assistant-prepend-page" role="function">
<title>gtk_assistant_prepend_page&#160;()</title>
<indexterm zone="gtk-assistant-prepend-page"><primary>gtk_assistant_prepend_page</primary></indexterm>
<programlisting language="C"><link linkend="gint"><returnvalue>gint</returnvalue></link>
gtk_assistant_prepend_page (<parameter><link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant</parameter>,
                            <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *page</parameter>);</programlisting>
<para>Prepends a page to the <parameter>assistant</parameter>
.</para>
<refsect3 id="gtk-assistant-prepend-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>assistant</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkAssistant"><type>GtkAssistant</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>page</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkWidget"><type>GtkWidget</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-assistant-prepend-page.returns" role="returns">
<title>Returns</title>
<para> the index (starting at 0) of the inserted page</para>
</refsect3></refsect2>
<refsect2 id="gtk-assistant-append-page" role="function">
<title>gtk_assistant_append_page&#160;()</title>
<indexterm zone="gtk-assistant-append-page"><primary>gtk_assistant_append_page</primary></indexterm>
<programlisting language="C"><link linkend="gint"><returnvalue>gint</returnvalue></link>
gtk_assistant_append_page (<parameter><link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant</parameter>,
                           <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *page</parameter>);</programlisting>
<para>Appends a page to the <parameter>assistant</parameter>
.</para>
<refsect3 id="gtk-assistant-append-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>assistant</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkAssistant"><type>GtkAssistant</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>page</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkWidget"><type>GtkWidget</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-assistant-append-page.returns" role="returns">
<title>Returns</title>
<para> the index (starting at 0) of the inserted page</para>
</refsect3></refsect2>
<refsect2 id="gtk-assistant-insert-page" role="function">
<title>gtk_assistant_insert_page&#160;()</title>
<indexterm zone="gtk-assistant-insert-page"><primary>gtk_assistant_insert_page</primary></indexterm>
<programlisting language="C"><link linkend="gint"><returnvalue>gint</returnvalue></link>
gtk_assistant_insert_page (<parameter><link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant</parameter>,
                           <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *page</parameter>,
                           <parameter><link linkend="gint"><type>gint</type></link> position</parameter>);</programlisting>
<para>Inserts a page in the <parameter>assistant</parameter>
 at a given position.</para>
<refsect3 id="gtk-assistant-insert-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>assistant</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkAssistant"><type>GtkAssistant</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>page</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkWidget"><type>GtkWidget</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>position</para></entry>
<entry role="parameter_description"><para>the index (starting at 0) at which to insert the page,
or -1 to append the page to the <parameter>assistant</parameter>
</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-assistant-insert-page.returns" role="returns">
<title>Returns</title>
<para> the index (starting from 0) of the inserted page</para>
</refsect3></refsect2>
<refsect2 id="gtk-assistant-remove-page" role="function">
<title>gtk_assistant_remove_page&#160;()</title>
<indexterm zone="gtk-assistant-remove-page"><primary>gtk_assistant_remove_page</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_assistant_remove_page (<parameter><link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant</parameter>,
                           <parameter><link linkend="gint"><type>gint</type></link> page_num</parameter>);</programlisting>
<para>Removes the <parameter>page_num</parameter>
’s page from <parameter>assistant</parameter>
.</para>
<refsect3 id="gtk-assistant-remove-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>assistant</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkAssistant"><type>GtkAssistant</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>page_num</para></entry>
<entry role="parameter_description"><para>the index of a page in the <parameter>assistant</parameter>
,
or -1 to remove the last page</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="GtkAssistantPageFunc" role="function">
<title>GtkAssistantPageFunc&#160;()</title>
<indexterm zone="GtkAssistantPageFunc"><primary>GtkAssistantPageFunc</primary></indexterm>
<programlisting language="C"><link linkend="gint"><returnvalue>gint</returnvalue></link>
<phrase role="c_punctuation">(</phrase>*GtkAssistantPageFunc<phrase role="c_punctuation">)</phrase> (<parameter><link linkend="gint"><type>gint</type></link> current_page</parameter>,
                         <parameter><link linkend="gpointer"><type>gpointer</type></link> data</parameter>);</programlisting>
<para>A function used by <link linkend="gtk-assistant-set-forward-page-func"><function>gtk_assistant_set_forward_page_func()</function></link> to know which
is the next page given a current one. It’s called both for computing the
next page when the user presses the “forward” button and for handling
the behavior of the “last” button.</para>
<refsect3 id="GtkAssistantPageFunc.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>current_page</para></entry>
<entry role="parameter_description"><para>The page number used to calculate the next page.</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>data</para></entry>
<entry role="parameter_description"><para>user data. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>closure</acronym>]</emphasis></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="GtkAssistantPageFunc.returns" role="returns">
<title>Returns</title>
<para> The next page number.</para>
</refsect3></refsect2>
<refsect2 id="gtk-assistant-set-forward-page-func" role="function">
<title>gtk_assistant_set_forward_page_func&#160;()</title>
<indexterm zone="gtk-assistant-set-forward-page-func"><primary>gtk_assistant_set_forward_page_func</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_assistant_set_forward_page_func (<parameter><link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant</parameter>,
                                     <parameter><link linkend="GtkAssistantPageFunc"><type>GtkAssistantPageFunc</type></link> page_func</parameter>,
                                     <parameter><link linkend="gpointer"><type>gpointer</type></link> data</parameter>,
                                     <parameter><link linkend="GDestroyNotify"><type>GDestroyNotify</type></link> destroy</parameter>);</programlisting>
<para>Sets the page forwarding function to be <parameter>page_func</parameter>
.</para>
<para>This function will be used to determine what will be
the next page when the user presses the forward button.
Setting <parameter>page_func</parameter>
 to <link linkend="NULL:CAPS"><literal>NULL</literal></link> will make the assistant to
use the default forward function, which just goes to the
next visible page.</para>
<refsect3 id="gtk-assistant-set-forward-page-func.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>assistant</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkAssistant"><type>GtkAssistant</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>page_func</para></entry>
<entry role="parameter_description"><para>the <link linkend="GtkAssistantPageFunc"><type>GtkAssistantPageFunc</type></link>, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>
to use the default one. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>allow-none</acronym>]</emphasis></entry></row>
<row><entry role="parameter_name"><para>data</para></entry>
<entry role="parameter_description"><para>user data for <parameter>page_func</parameter>
</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>destroy</para></entry>
<entry role="parameter_description"><para>destroy notifier for <parameter>data</parameter>
</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-assistant-set-page-type" role="function">
<title>gtk_assistant_set_page_type&#160;()</title>
<indexterm zone="gtk-assistant-set-page-type"><primary>gtk_assistant_set_page_type</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_assistant_set_page_type (<parameter><link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant</parameter>,
                             <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *page</parameter>,
                             <parameter><link linkend="GtkAssistantPageType"><type>GtkAssistantPageType</type></link> type</parameter>);</programlisting>
<para>Sets the page type for <parameter>page</parameter>
.</para>
<para>The page type determines the page behavior in the <parameter>assistant</parameter>
.</para>
<refsect3 id="gtk-assistant-set-page-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>assistant</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkAssistant"><type>GtkAssistant</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>page</para></entry>
<entry role="parameter_description"><para>a page of <parameter>assistant</parameter>
</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>type</para></entry>
<entry role="parameter_description"><para>the new type for <parameter>page</parameter>
</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-assistant-get-page-type" role="function">
<title>gtk_assistant_get_page_type&#160;()</title>
<indexterm zone="gtk-assistant-get-page-type"><primary>gtk_assistant_get_page_type</primary></indexterm>
<programlisting language="C"><link linkend="GtkAssistantPageType"><returnvalue>GtkAssistantPageType</returnvalue></link>
gtk_assistant_get_page_type (<parameter><link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant</parameter>,
                             <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *page</parameter>);</programlisting>
<para>Gets the page type of <parameter>page</parameter>
.</para>
<refsect3 id="gtk-assistant-get-page-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>assistant</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkAssistant"><type>GtkAssistant</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>page</para></entry>
<entry role="parameter_description"><para>a page of <parameter>assistant</parameter>
</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-assistant-get-page-type.returns" role="returns">
<title>Returns</title>
<para> the page type of <parameter>page</parameter>
</para>
</refsect3></refsect2>
<refsect2 id="gtk-assistant-set-page-title" role="function">
<title>gtk_assistant_set_page_title&#160;()</title>
<indexterm zone="gtk-assistant-set-page-title"><primary>gtk_assistant_set_page_title</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_assistant_set_page_title (<parameter><link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant</parameter>,
                              <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *page</parameter>,
                              <parameter>const <link linkend="gchar"><type>gchar</type></link> *title</parameter>);</programlisting>
<para>Sets a title for <parameter>page</parameter>
.</para>
<para>The title is displayed in the header area of the assistant
when <parameter>page</parameter>
 is the current page.</para>
<refsect3 id="gtk-assistant-set-page-title.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>assistant</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkAssistant"><type>GtkAssistant</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>page</para></entry>
<entry role="parameter_description"><para>a page of <parameter>assistant</parameter>
</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>title</para></entry>
<entry role="parameter_description"><para>the new title for <parameter>page</parameter>
</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-assistant-get-page-title" role="function">
<title>gtk_assistant_get_page_title&#160;()</title>
<indexterm zone="gtk-assistant-get-page-title"><primary>gtk_assistant_get_page_title</primary></indexterm>
<programlisting language="C">const <link linkend="gchar"><returnvalue>gchar</returnvalue></link>&#160;*
gtk_assistant_get_page_title (<parameter><link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant</parameter>,
                              <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *page</parameter>);</programlisting>
<para>Gets the title for <parameter>page</parameter>
.</para>
<refsect3 id="gtk-assistant-get-page-title.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>assistant</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkAssistant"><type>GtkAssistant</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>page</para></entry>
<entry role="parameter_description"><para>a page of <parameter>assistant</parameter>
</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-assistant-get-page-title.returns" role="returns">
<title>Returns</title>
<para> the title for <parameter>page</parameter>
</para>
</refsect3></refsect2>
<refsect2 id="gtk-assistant-set-page-complete" role="function">
<title>gtk_assistant_set_page_complete&#160;()</title>
<indexterm zone="gtk-assistant-set-page-complete"><primary>gtk_assistant_set_page_complete</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_assistant_set_page_complete (<parameter><link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant</parameter>,
                                 <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *page</parameter>,
                                 <parameter><link linkend="gboolean"><type>gboolean</type></link> complete</parameter>);</programlisting>
<para>Sets whether <parameter>page</parameter>
 contents are complete.</para>
<para>This will make <parameter>assistant</parameter>
 update the buttons state
to be able to continue the task.</para>
<refsect3 id="gtk-assistant-set-page-complete.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>assistant</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkAssistant"><type>GtkAssistant</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>page</para></entry>
<entry role="parameter_description"><para>a page of <parameter>assistant</parameter>
</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>complete</para></entry>
<entry role="parameter_description"><para>the completeness status of the page</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-assistant-get-page-complete" role="function">
<title>gtk_assistant_get_page_complete&#160;()</title>
<indexterm zone="gtk-assistant-get-page-complete"><primary>gtk_assistant_get_page_complete</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_assistant_get_page_complete (<parameter><link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant</parameter>,
                                 <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *page</parameter>);</programlisting>
<para>Gets whether <parameter>page</parameter>
 is complete.</para>
<refsect3 id="gtk-assistant-get-page-complete.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>assistant</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkAssistant"><type>GtkAssistant</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>page</para></entry>
<entry role="parameter_description"><para>a page of <parameter>assistant</parameter>
</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-assistant-get-page-complete.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if <parameter>page</parameter>
is complete.</para>
</refsect3></refsect2>
<refsect2 id="gtk-assistant-add-action-widget" role="function">
<title>gtk_assistant_add_action_widget&#160;()</title>
<indexterm zone="gtk-assistant-add-action-widget"><primary>gtk_assistant_add_action_widget</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_assistant_add_action_widget (<parameter><link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant</parameter>,
                                 <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>);</programlisting>
<para>Adds a widget to the action area of a <link linkend="GtkAssistant"><type>GtkAssistant</type></link>.</para>
<refsect3 id="gtk-assistant-add-action-widget.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>assistant</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkAssistant"><type>GtkAssistant</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 <link linkend="GtkWidget"><type>GtkWidget</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-assistant-remove-action-widget" role="function">
<title>gtk_assistant_remove_action_widget&#160;()</title>
<indexterm zone="gtk-assistant-remove-action-widget"><primary>gtk_assistant_remove_action_widget</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_assistant_remove_action_widget (<parameter><link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant</parameter>,
                                    <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>);</programlisting>
<para>Removes a widget from the action area of a <link linkend="GtkAssistant"><type>GtkAssistant</type></link>.</para>
<refsect3 id="gtk-assistant-remove-action-widget.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>assistant</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkAssistant"><type>GtkAssistant</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 <link linkend="GtkWidget"><type>GtkWidget</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-assistant-update-buttons-state" role="function">
<title>gtk_assistant_update_buttons_state&#160;()</title>
<indexterm zone="gtk-assistant-update-buttons-state"><primary>gtk_assistant_update_buttons_state</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_assistant_update_buttons_state (<parameter><link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant</parameter>);</programlisting>
<para>Forces <parameter>assistant</parameter>
 to recompute the buttons state.</para>
<para>GTK+ automatically takes care of this in most situations,
e.g. when the user goes to a different page, or when the
visibility or completeness of a page changes.</para>
<para>One situation where it can be necessary to call this
function is when changing a value on the current page
affects the future page flow of the assistant.</para>
<refsect3 id="gtk-assistant-update-buttons-state.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>assistant</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkAssistant"><type>GtkAssistant</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-assistant-commit" role="function">
<title>gtk_assistant_commit&#160;()</title>
<indexterm zone="gtk-assistant-commit"><primary>gtk_assistant_commit</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_assistant_commit (<parameter><link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant</parameter>);</programlisting>
<para>Erases the visited page history so the back button is not
shown on the current page, and removes the cancel button
from subsequent pages.</para>
<para>Use this when the information provided up to the current
page is hereafter deemed permanent and cannot be modified
or undone. For example, showing a progress page to track
a long-running, unreversible operation after the user has
clicked apply on a confirmation page.</para>
<refsect3 id="gtk-assistant-commit.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>assistant</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkAssistant"><type>GtkAssistant</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-assistant-next-page" role="function">
<title>gtk_assistant_next_page&#160;()</title>
<indexterm zone="gtk-assistant-next-page"><primary>gtk_assistant_next_page</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_assistant_next_page (<parameter><link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant</parameter>);</programlisting>
<para>Navigate to the next page.</para>
<para>It is a programming error to call this function when
there is no next page.</para>
<para>This function is for use when creating pages of the
<link linkend="GTK-ASSISTANT-PAGE-CUSTOM:CAPS"><type>GTK_ASSISTANT_PAGE_CUSTOM</type></link> type.</para>
<refsect3 id="gtk-assistant-next-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>assistant</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkAssistant"><type>GtkAssistant</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-assistant-previous-page" role="function">
<title>gtk_assistant_previous_page&#160;()</title>
<indexterm zone="gtk-assistant-previous-page"><primary>gtk_assistant_previous_page</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_assistant_previous_page (<parameter><link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant</parameter>);</programlisting>
<para>Navigate to the previous visited page.</para>
<para>It is a programming error to call this function when
no previous page is available.</para>
<para>This function is for use when creating pages of the
<link linkend="GTK-ASSISTANT-PAGE-CUSTOM:CAPS"><type>GTK_ASSISTANT_PAGE_CUSTOM</type></link> type.</para>
<refsect3 id="gtk-assistant-previous-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>assistant</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkAssistant"><type>GtkAssistant</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>

</refsect1>
<refsect1 id="GtkAssistant.other_details" role="details">
<title role="details.title">Types and Values</title>
<refsect2 id="GtkAssistant-struct" role="struct">
<title>GtkAssistant</title>
<indexterm zone="GtkAssistant-struct"><primary>GtkAssistant</primary></indexterm>
<programlisting language="C">typedef struct _GtkAssistant GtkAssistant;</programlisting>
</refsect2>
<refsect2 id="GtkAssistantPage-struct" role="struct">
<title>GtkAssistantPage</title>
<indexterm zone="GtkAssistantPage-struct"><primary>GtkAssistantPage</primary></indexterm>
<programlisting language="C">typedef struct _GtkAssistantPage GtkAssistantPage;</programlisting>
</refsect2>
<refsect2 id="GtkAssistantPageType" role="enum">
<title>enum GtkAssistantPageType</title>
<indexterm zone="GtkAssistantPageType"><primary>GtkAssistantPageType</primary></indexterm>
<para>An enum for determining the page role inside the <link linkend="GtkAssistant"><type>GtkAssistant</type></link>. It's
used to handle buttons sensitivity and visibility.</para>
<para>Note that an assistant needs to end its page flow with a page of type
<link linkend="GTK-ASSISTANT-PAGE-CONFIRM:CAPS"><literal>GTK_ASSISTANT_PAGE_CONFIRM</literal></link>, <link linkend="GTK-ASSISTANT-PAGE-SUMMARY:CAPS"><literal>GTK_ASSISTANT_PAGE_SUMMARY</literal></link> or
<link linkend="GTK-ASSISTANT-PAGE-PROGRESS:CAPS"><literal>GTK_ASSISTANT_PAGE_PROGRESS</literal></link> to be correct.</para>
<para>The Cancel button will only be shown if the page isn’t “committed”.
See <link linkend="gtk-assistant-commit"><function>gtk_assistant_commit()</function></link> for details.</para>
<refsect3 id="GtkAssistantPageType.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-ASSISTANT-PAGE-CONTENT:CAPS">GTK_ASSISTANT_PAGE_CONTENT</para></entry>
<entry role="enum_member_description"><para>The page has regular contents. Both the
Back and forward buttons will be shown.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-ASSISTANT-PAGE-INTRO:CAPS">GTK_ASSISTANT_PAGE_INTRO</para></entry>
<entry role="enum_member_description"><para>The page contains an introduction to the
assistant task. Only the Forward button will be shown if there is a
 next page.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-ASSISTANT-PAGE-CONFIRM:CAPS">GTK_ASSISTANT_PAGE_CONFIRM</para></entry>
<entry role="enum_member_description"><para>The page lets the user confirm or deny the
changes. The Back and Apply buttons will be shown.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-ASSISTANT-PAGE-SUMMARY:CAPS">GTK_ASSISTANT_PAGE_SUMMARY</para></entry>
<entry role="enum_member_description"><para>The page informs the user of the changes
done. Only the Close button will be shown.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-ASSISTANT-PAGE-PROGRESS:CAPS">GTK_ASSISTANT_PAGE_PROGRESS</para></entry>
<entry role="enum_member_description"><para>Used for tasks that take a long time to
complete, blocks the assistant until the page is marked as complete.
 Only the back button will be shown.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-ASSISTANT-PAGE-CUSTOM:CAPS">GTK_ASSISTANT_PAGE_CUSTOM</para></entry>
<entry role="enum_member_description"><para>Used for when other page types are not
appropriate. No buttons will be shown, and the application must
add its own buttons through <link linkend="gtk-assistant-add-action-widget"><function>gtk_assistant_add_action_widget()</function></link>.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>

</refsect1>
<refsect1 id="GtkAssistant.property-details" role="property_details">
<title role="property_details.title">Property Details</title>
<refsect2 id="GtkAssistant--pages" role="property"><title>The <literal>“pages”</literal> property</title>
<indexterm zone="GtkAssistant--pages"><primary>GtkAssistant:pages</primary></indexterm>
<programlisting>  “pages”                    <link linkend="GListModel"><type>GListModel</type></link>&#160;*</programlisting>
<para>The pages of the assistant.</para><para>Owner: GtkAssistant</para>
<para>Flags: Read</para>
</refsect2>
<refsect2 id="GtkAssistant--use-header-bar" role="property"><title>The <literal>“use-header-bar”</literal> property</title>
<indexterm zone="GtkAssistant--use-header-bar"><primary>GtkAssistant:use-header-bar</primary></indexterm>
<programlisting>  “use-header-bar”           <link linkend="gint"><type>gint</type></link></programlisting>
<para><link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if the assistant uses a <link linkend="GtkHeaderBar"><type>GtkHeaderBar</type></link> for action buttons
instead of the action-area.</para>
<para>For technical reasons, this property is declared as an integer
property, but you should only set it to <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> or <link linkend="FALSE:CAPS"><literal>FALSE</literal></link>.</para>
<para>Owner: GtkAssistant</para>
<para>Flags: Read / Write / Construct&#160;Only</para>
<para>Allowed values: [-1,1]</para>
<para>Default value: -1</para>
</refsect2>
<refsect2 id="GtkAssistantPage--child" role="property"><title>The <literal>“child”</literal> property</title>
<indexterm zone="GtkAssistantPage--child"><primary>GtkAssistantPage:child</primary></indexterm>
<programlisting>  “child”                    <link linkend="GtkWidget"><type>GtkWidget</type></link>&#160;*</programlisting>
<para>The content the assistant page.</para><para>Owner: GtkAssistantPage</para>
<para>Flags: Read / Write / Construct&#160;Only</para>
</refsect2>
<refsect2 id="GtkAssistantPage--complete" role="property"><title>The <literal>“complete”</literal> property</title>
<indexterm zone="GtkAssistantPage--complete"><primary>GtkAssistantPage:complete</primary></indexterm>
<programlisting>  “complete”                 <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Setting the "complete" property to <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> marks a page as
complete (i.e.: all the required fields are filled out). GTK+ uses
this information to control the sensitivity of the navigation buttons.</para>
<para>Owner: GtkAssistantPage</para>
<para>Flags: Read / Write</para>
<para>Default value: FALSE</para>
</refsect2>
<refsect2 id="GtkAssistantPage--page-type" role="property"><title>The <literal>“page-type”</literal> property</title>
<indexterm zone="GtkAssistantPage--page-type"><primary>GtkAssistantPage:page-type</primary></indexterm>
<programlisting>  “page-type”                <link linkend="GtkAssistantPageType"><type>GtkAssistantPageType</type></link></programlisting>
<para>The type of the assistant page.</para>
<para>Owner: GtkAssistantPage</para>
<para>Flags: Read / Write</para>
<para>Default value: GTK_ASSISTANT_PAGE_CONTENT</para>
</refsect2>
<refsect2 id="GtkAssistantPage--title" role="property"><title>The <literal>“title”</literal> property</title>
<indexterm zone="GtkAssistantPage--title"><primary>GtkAssistantPage:title</primary></indexterm>
<programlisting>  “title”                    <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>The title of the page.</para>
<para>Owner: GtkAssistantPage</para>
<para>Flags: Read / Write</para>
<para>Default value: NULL</para>
</refsect2>

</refsect1>
<refsect1 id="GtkAssistant.signal-details" role="signals">
<title role="signals.title">Signal Details</title>
<refsect2 id="GtkAssistant-apply" role="signal"><title>The <literal>“apply”</literal> signal</title>
<indexterm zone="GtkAssistant-apply"><primary>GtkAssistant::apply</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
user_function (<link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant,
               <link linkend="gpointer"><type>gpointer</type></link>      user_data)</programlisting>
<para>The ::apply signal is emitted when the apply button is clicked.</para>
<para>The default behavior of the <link linkend="GtkAssistant"><type>GtkAssistant</type></link> is to switch to the page
after the current page, unless the current page is the last one.</para>
<para>A handler for the ::apply signal should carry out the actions for
which the wizard has collected data. If the action takes a long time
to complete, you might consider putting a page of type
<link linkend="GTK-ASSISTANT-PAGE-PROGRESS:CAPS"><literal>GTK_ASSISTANT_PAGE_PROGRESS</literal></link> after the confirmation page and handle
this operation within the <link linkend="GtkAssistant-prepare"><type>“prepare”</type></link> signal of the progress
page.</para>
<refsect3 id="GtkAssistant-apply.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>assistant</para></entry>
<entry role="parameter_description"><para>the <link linkend="GtkAssistant"><type>GtkAssistant</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><simpara>user_data</simpara></entry>
<entry role="parameter_description"><simpara>user data set when the signal handler was connected.</simpara></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><para>Flags: <link linkend="G-SIGNAL-RUN-LAST:CAPS">Run Last</link></para>
</refsect2><refsect2 id="GtkAssistant-cancel" role="signal"><title>The <literal>“cancel”</literal> signal</title>
<indexterm zone="GtkAssistant-cancel"><primary>GtkAssistant::cancel</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
user_function (<link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant,
               <link linkend="gpointer"><type>gpointer</type></link>      user_data)</programlisting>
<para>The ::cancel signal is emitted when then the cancel button is clicked.</para>
<refsect3 id="GtkAssistant-cancel.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>assistant</para></entry>
<entry role="parameter_description"><para>the <link linkend="GtkAssistant"><type>GtkAssistant</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><simpara>user_data</simpara></entry>
<entry role="parameter_description"><simpara>user data set when the signal handler was connected.</simpara></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><para>Flags: <link linkend="G-SIGNAL-RUN-LAST:CAPS">Run Last</link></para>
</refsect2><refsect2 id="GtkAssistant-close" role="signal"><title>The <literal>“close”</literal> signal</title>
<indexterm zone="GtkAssistant-close"><primary>GtkAssistant::close</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
user_function (<link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant,
               <link linkend="gpointer"><type>gpointer</type></link>      user_data)</programlisting>
<para>The ::close signal is emitted either when the close button of
a summary page is clicked, or when the apply button in the last
page in the flow (of type <link linkend="GTK-ASSISTANT-PAGE-CONFIRM:CAPS"><literal>GTK_ASSISTANT_PAGE_CONFIRM</literal></link>) is clicked.</para>
<refsect3 id="GtkAssistant-close.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>assistant</para></entry>
<entry role="parameter_description"><para>the <link linkend="GtkAssistant"><type>GtkAssistant</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><simpara>user_data</simpara></entry>
<entry role="parameter_description"><simpara>user data set when the signal handler was connected.</simpara></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><para>Flags: <link linkend="G-SIGNAL-RUN-LAST:CAPS">Run Last</link></para>
</refsect2><refsect2 id="GtkAssistant-escape" role="signal"><title>The <literal>“escape”</literal> signal</title>
<indexterm zone="GtkAssistant-escape"><primary>GtkAssistant::escape</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
user_function (<link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant,
               <link linkend="gpointer"><type>gpointer</type></link>      user_data)</programlisting>
<para>Flags: <link linkend="G-SIGNAL-ACTION:CAPS">Action</link></para>
</refsect2><refsect2 id="GtkAssistant-prepare" role="signal"><title>The <literal>“prepare”</literal> signal</title>
<indexterm zone="GtkAssistant-prepare"><primary>GtkAssistant::prepare</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
user_function (<link linkend="GtkAssistant"><type>GtkAssistant</type></link> *assistant,
               <link linkend="GtkWidget"><type>GtkWidget</type></link>    *page,
               <link linkend="gpointer"><type>gpointer</type></link>      user_data)</programlisting>
<para>The ::prepare signal is emitted when a new page is set as the
assistant's current page, before making the new page visible.</para>
<para>A handler for this signal can do any preparations which are
necessary before showing <parameter>page</parameter>
.</para>
<refsect3 id="GtkAssistant-prepare.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>assistant</para></entry>
<entry role="parameter_description"><para>the <link linkend="GtkAssistant"><type>GtkAssistant</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>page</para></entry>
<entry role="parameter_description"><para>the current page</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><simpara>user_data</simpara></entry>
<entry role="parameter_description"><simpara>user data set when the signal handler was connected.</simpara></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><para>Flags: <link linkend="G-SIGNAL-RUN-LAST:CAPS">Run Last</link></para>
</refsect2>
</refsect1>

</refentry>
