<?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="GtkNotebook">
<refmeta>
<refentrytitle role="top_of_page" id="GtkNotebook.top_of_page">GtkNotebook</refentrytitle>
<manvolnum>3</manvolnum>
<refmiscinfo>GTK4 Library</refmiscinfo>
</refmeta>
<refnamediv>
<refname>GtkNotebook</refname>
<refpurpose>A tabbed notebook container</refpurpose>
</refnamediv>

<refsect1 id="GtkNotebook.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-notebook-new">gtk_notebook_new</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GtkNotebookPage"><returnvalue>GtkNotebookPage</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-notebook-get-page">gtk_notebook_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-notebook-get-pages">gtk_notebook_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-notebook-page-get-child">gtk_notebook_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-notebook-append-page">gtk_notebook_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-notebook-append-page-menu">gtk_notebook_append_page_menu</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-notebook-prepend-page">gtk_notebook_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-notebook-prepend-page-menu">gtk_notebook_prepend_page_menu</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-notebook-insert-page">gtk_notebook_insert_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-notebook-insert-page-menu">gtk_notebook_insert_page_menu</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-notebook-remove-page">gtk_notebook_remove_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-notebook-detach-tab">gtk_notebook_detach_tab</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-notebook-page-num">gtk_notebook_page_num</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-notebook-next-page">gtk_notebook_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-notebook-prev-page">gtk_notebook_prev_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-notebook-reorder-child">gtk_notebook_reorder_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-notebook-set-tab-pos">gtk_notebook_set_tab_pos</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-notebook-set-show-tabs">gtk_notebook_set_show_tabs</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-notebook-set-show-border">gtk_notebook_set_show_border</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-notebook-set-scrollable">gtk_notebook_set_scrollable</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-notebook-popup-enable">gtk_notebook_popup_enable</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-notebook-popup-disable">gtk_notebook_popup_disable</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-notebook-get-current-page">gtk_notebook_get_current_page</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-notebook-get-menu-label">gtk_notebook_get_menu_label</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-notebook-get-nth-page">gtk_notebook_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-notebook-get-n-pages">gtk_notebook_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-notebook-get-tab-label">gtk_notebook_get_tab_label</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-notebook-set-menu-label">gtk_notebook_set_menu_label</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-notebook-set-menu-label-text">gtk_notebook_set_menu_label_text</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-notebook-set-tab-label">gtk_notebook_set_tab_label</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-notebook-set-tab-label-text">gtk_notebook_set_tab_label_text</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-notebook-set-tab-reorderable">gtk_notebook_set_tab_reorderable</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-notebook-set-tab-detachable">gtk_notebook_set_tab_detachable</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-notebook-get-menu-label-text">gtk_notebook_get_menu_label_text</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-notebook-get-scrollable">gtk_notebook_get_scrollable</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-notebook-get-show-border">gtk_notebook_get_show_border</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-notebook-get-show-tabs">gtk_notebook_get_show_tabs</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-notebook-get-tab-label-text">gtk_notebook_get_tab_label_text</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GtkPositionType"><returnvalue>GtkPositionType</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-notebook-get-tab-pos">gtk_notebook_get_tab_pos</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-notebook-get-tab-reorderable">gtk_notebook_get_tab_reorderable</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-notebook-get-tab-detachable">gtk_notebook_get_tab_detachable</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-notebook-set-current-page">gtk_notebook_set_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-notebook-set-group-name">gtk_notebook_set_group_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-notebook-get-group-name">gtk_notebook_get_group_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-notebook-set-action-widget">gtk_notebook_set_action_widget</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-notebook-get-action-widget">gtk_notebook_get_action_widget</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkNotebook.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="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkNotebook--enable-popup">enable-popup</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="GtkNotebook--group-name">group-name</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gint"><type>gint</type></link></entry><entry role="property_name"><link linkend="GtkNotebook--page">page</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="GListModel"><type>GListModel</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkNotebook--pages">pages</link></entry><entry role="property_flags">Read</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkNotebook--scrollable">scrollable</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="GtkNotebook--show-border">show-border</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="GtkNotebook--show-tabs">show-tabs</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="GtkPositionType"><type>GtkPositionType</type></link></entry><entry role="property_name"><link linkend="GtkNotebook--tab-pos">tab-pos</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="GtkNotebookPage--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="GtkNotebookPage--detachable">detachable</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="GtkNotebookPage--menu">menu</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="GtkNotebookPage--menu-label">menu-label</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gint"><type>gint</type></link></entry><entry role="property_name"><link linkend="GtkNotebookPage--position">position</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="GtkNotebookPage--reorderable">reorderable</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="GtkNotebookPage--tab">tab</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="GtkNotebookPage--tab-expand">tab-expand</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="GtkNotebookPage--tab-fill">tab-fill</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="GtkNotebookPage--tab-label">tab-label</link></entry><entry role="property_flags">Read / Write</entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkNotebook.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="gboolean"><returnvalue>gboolean</returnvalue></link></entry><entry role="signal_name"><link linkend="GtkNotebook-change-current-page">change-current-page</link></entry><entry role="signal_flags"><link linkend="G-SIGNAL-ACTION:CAPS">Action</link></entry></row>
<row><entry role="signal_type"><link linkend="GtkNotebook"><returnvalue>GtkNotebook</returnvalue></link>*</entry><entry role="signal_name"><link linkend="GtkNotebook-create-window">create-window</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="gboolean"><returnvalue>gboolean</returnvalue></link></entry><entry role="signal_name"><link linkend="GtkNotebook-focus-tab">focus-tab</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="GtkNotebook-move-focus-out">move-focus-out</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="GtkNotebook-page-added">page-added</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="GtkNotebook-page-removed">page-removed</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="GtkNotebook-page-reordered">page-reordered</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="gboolean"><returnvalue>gboolean</returnvalue></link></entry><entry role="signal_name"><link linkend="GtkNotebook-reorder-tab">reorder-tab</link></entry><entry role="signal_flags"><link linkend="G-SIGNAL-ACTION:CAPS">Action</link></entry></row>
<row><entry role="signal_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link></entry><entry role="signal_name"><link linkend="GtkNotebook-select-page">select-page</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="GtkNotebook-switch-page">switch-page</link></entry><entry role="signal_flags"><link linkend="G-SIGNAL-RUN-LAST:CAPS">Run Last</link></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkNotebook.actions" role="actions">
<title role="actions.title">Actions</title>
<informaltable frame="none">
<tgroup cols="3">
<colspec colname="actions_none" colwidth="150px"/>
<colspec colname="actions_name" colwidth="300px"/>
<colspec colname="actions_param" colwidth="200px"/>
<tbody>
<row><entry></entry><entry role="action_name"><link linkend="GtkNotebook|menu.popup">menu.popup</link></entry><entry role="parameter_type"></entry></row>

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

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

</refsect1>

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

<refsect1 id="GtkNotebook.description" role="desc">
<title role="desc.title">Description</title>
<para>The <link linkend="GtkNotebook"><type>GtkNotebook</type></link> widget is a <link linkend="GtkContainer"><type>GtkContainer</type></link> whose children are pages that
can be switched between using tab labels along one edge.</para>
<para>There are many configuration options for GtkNotebook. Among other
things, you can choose on which edge the tabs appear
(see <link linkend="gtk-notebook-set-tab-pos"><function>gtk_notebook_set_tab_pos()</function></link>), whether, if there are too many
tabs to fit the notebook should be made bigger or scrolling
arrows added (see <link linkend="gtk-notebook-set-scrollable"><function>gtk_notebook_set_scrollable()</function></link>), and whether there
will be a popup menu allowing the users to switch pages.
(see <link linkend="gtk-notebook-popup-enable"><function>gtk_notebook_popup_enable()</function></link>, <link linkend="gtk-notebook-popup-disable"><function>gtk_notebook_popup_disable()</function></link>)</para>
<refsect2><title>GtkNotebook as GtkBuildable</title><para>The GtkNotebook implementation of the <link linkend="GtkBuildable"><type>GtkBuildable</type></link> interface
supports placing children into tabs by specifying “tab” as the
“type” attribute of a &lt;child> element. Note that the content
of the tab must be created before the tab can be filled.
A tab child can be specified without specifying a &lt;child>
type attribute.</para>
<para>To add a child widget in the notebooks action area, specify
"action-start" or “action-end” as the “type” attribute of the
&lt;child> element.</para>
<para>An example of a UI definition fragment with GtkNotebook:</para>
<informalexample><programlisting role="example"><![CDATA[
<object class="GtkNotebook">
  <child>
    <object class="GtkLabel" id="notebook-content">
      <property name="label">Content</property>
    </object>
  </child>
  <child type="tab">
    <object class="GtkLabel" id="notebook-tab">
      <property name="label">Tab</property>
    </object>
  </child>
</object>
]]></programlisting></informalexample>
<para></para>
</refsect2>
<refsect2><title>CSS nodes</title><informalexample><programlisting role="example"><![CDATA[
notebook
├── header.top
│   ├── [<action widget>]
│   ├── tabs
│   │   ├── [arrow]
│   │   ├── tab
│   │   │   ╰── <tab label>
┊   ┊   ┊
│   │   ├── tab[.reorderable-page]
│   │   │   ╰── <tab label>
│   │   ╰── [arrow]
│   ╰── [<action widget>]
│
╰── stack
    ├── <child>
    ┊
    ╰── <child>
]]></programlisting></informalexample>
<para></para>
<para>GtkNotebook has a main CSS node with name notebook, a subnode
with name header and below that a subnode with name tabs which
contains one subnode per tab with name tab.</para>
<para>If action widgets are present, their CSS nodes are placed next
to the tabs node. If the notebook is scrollable, CSS nodes with
name arrow are placed as first and last child of the tabs node.</para>
<para>The main node gets the .frame style class when the notebook
has a border (see <link linkend="gtk-notebook-set-show-border"><function>gtk_notebook_set_show_border()</function></link>).</para>
<para>The header node gets one of the style class .top, .bottom,
.left or .right, depending on where the tabs are placed. For
reorderable pages, the tab node gets the .reorderable-page class.</para>
<para>A tab node gets the .dnd style class while it is moved with drag-and-drop.</para>
<para>The nodes are always arranged from left-to-right, regardless of text direction.</para>
</refsect2>

</refsect1>
<refsect1 id="GtkNotebook.functions_details" role="details">
<title role="details.title">Functions</title>
<refsect2 id="gtk-notebook-new" role="function">
<title>gtk_notebook_new&#160;()</title>
<indexterm zone="gtk-notebook-new"><primary>gtk_notebook_new</primary></indexterm>
<programlisting language="C"><link linkend="GtkWidget"><returnvalue>GtkWidget</returnvalue></link>&#160;*
gtk_notebook_new (<parameter><type>void</type></parameter>);</programlisting>
<para>Creates a new <link linkend="GtkNotebook"><type>GtkNotebook</type></link> widget with no pages.</para>
<refsect3 id="gtk-notebook-new.returns" role="returns">
<title>Returns</title>
<para> the newly created <link linkend="GtkNotebook"><type>GtkNotebook</type></link></para>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-get-page" role="function">
<title>gtk_notebook_get_page&#160;()</title>
<indexterm zone="gtk-notebook-get-page"><primary>gtk_notebook_get_page</primary></indexterm>
<programlisting language="C"><link linkend="GtkNotebookPage"><returnvalue>GtkNotebookPage</returnvalue></link>&#160;*
gtk_notebook_get_page (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                       <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>);</programlisting>
<para>Returns the <link linkend="GtkNotebookPage"><type>GtkNotebookPage</type></link> for <parameter>child</parameter>
.</para>
<refsect3 id="gtk-notebook-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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</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>notebook</parameter>
</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-notebook-get-page.returns" role="returns">
<title>Returns</title>
<para>the <link linkend="GtkNotebookPage"><type>GtkNotebookPage</type></link> for <parameter>child</parameter>
. </para>
<para><emphasis role="annotation">[<acronym>transfer none</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-get-pages" role="function">
<title>gtk_notebook_get_pages&#160;()</title>
<indexterm zone="gtk-notebook-get-pages"><primary>gtk_notebook_get_pages</primary></indexterm>
<programlisting language="C"><link linkend="GListModel"><returnvalue>GListModel</returnvalue></link>&#160;*
gtk_notebook_get_pages (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>);</programlisting>
<para>Returns a <link linkend="GListModel"><type>GListModel</type></link> that contains the pages of the notebook,
and can be used to keep an up-to-date view.</para>
<refsect3 id="gtk-notebook-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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-notebook-get-pages.returns" role="returns">
<title>Returns</title>
<para>a
<link linkend="GListModel"><type>GListModel</type></link> for the notebook's children. </para>
<para><emphasis role="annotation">[<acronym>transfer full</acronym>][<acronym>attributes</acronym> element-type=GtkNotebookPage]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-page-get-child" role="function">
<title>gtk_notebook_page_get_child&#160;()</title>
<indexterm zone="gtk-notebook-page-get-child"><primary>gtk_notebook_page_get_child</primary></indexterm>
<programlisting language="C"><link linkend="GtkWidget"><returnvalue>GtkWidget</returnvalue></link>&#160;*
gtk_notebook_page_get_child (<parameter><link linkend="GtkNotebookPage"><type>GtkNotebookPage</type></link> *page</parameter>);</programlisting>
<para>Returns the notebook child to which <parameter>page</parameter>
 belongs.</para>
<refsect3 id="gtk-notebook-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="GtkNotebookPage"><type>GtkNotebookPage</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-notebook-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-notebook-append-page" role="function">
<title>gtk_notebook_append_page&#160;()</title>
<indexterm zone="gtk-notebook-append-page"><primary>gtk_notebook_append_page</primary></indexterm>
<programlisting language="C"><link linkend="gint"><returnvalue>gint</returnvalue></link>
gtk_notebook_append_page (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                          <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>,
                          <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *tab_label</parameter>);</programlisting>
<para>Appends a page to <parameter>notebook</parameter>
.</para>
<refsect3 id="gtk-notebook-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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</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 <link linkend="GtkWidget"><type>GtkWidget</type></link> to use as the contents of the page</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>tab_label</para></entry>
<entry role="parameter_description"><para>the <link linkend="GtkWidget"><type>GtkWidget</type></link> to be used as the label
for the page, or <link linkend="NULL:CAPS"><literal>NULL</literal></link> to use the default label, “page N”. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>allow-none</acronym>]</emphasis></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-notebook-append-page.returns" role="returns">
<title>Returns</title>
<para> the index (starting from 0) of the appended
page in the notebook, or -1 if function fails</para>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-append-page-menu" role="function">
<title>gtk_notebook_append_page_menu&#160;()</title>
<indexterm zone="gtk-notebook-append-page-menu"><primary>gtk_notebook_append_page_menu</primary></indexterm>
<programlisting language="C"><link linkend="gint"><returnvalue>gint</returnvalue></link>
gtk_notebook_append_page_menu (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                               <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>,
                               <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *tab_label</parameter>,
                               <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *menu_label</parameter>);</programlisting>
<para>Appends a page to <parameter>notebook</parameter>
, specifying the widget to use as the
label in the popup menu.</para>
<refsect3 id="gtk-notebook-append-page-menu.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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</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 <link linkend="GtkWidget"><type>GtkWidget</type></link> to use as the contents of the page</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>tab_label</para></entry>
<entry role="parameter_description"><para>the <link linkend="GtkWidget"><type>GtkWidget</type></link> to be used as the label
for the page, or <link linkend="NULL:CAPS"><literal>NULL</literal></link> to use the default label, “page N”. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>allow-none</acronym>]</emphasis></entry></row>
<row><entry role="parameter_name"><para>menu_label</para></entry>
<entry role="parameter_description"><para>the widget to use as a label for the
page-switch menu, if that is enabled. If <link linkend="NULL:CAPS"><literal>NULL</literal></link>, and <parameter>tab_label</parameter>
is a <link linkend="GtkLabel"><type>GtkLabel</type></link> or <link linkend="NULL:CAPS"><literal>NULL</literal></link>, then the menu label will be a newly
created label with the same text as <parameter>tab_label</parameter>
; if <parameter>tab_label</parameter>
is not a <link linkend="GtkLabel"><type>GtkLabel</type></link>, <parameter>menu_label</parameter>
must be specified if the
page-switch menu is to be used. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>allow-none</acronym>]</emphasis></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-notebook-append-page-menu.returns" role="returns">
<title>Returns</title>
<para> the index (starting from 0) of the appended
page in the notebook, or -1 if function fails</para>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-prepend-page" role="function">
<title>gtk_notebook_prepend_page&#160;()</title>
<indexterm zone="gtk-notebook-prepend-page"><primary>gtk_notebook_prepend_page</primary></indexterm>
<programlisting language="C"><link linkend="gint"><returnvalue>gint</returnvalue></link>
gtk_notebook_prepend_page (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                           <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>,
                           <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *tab_label</parameter>);</programlisting>
<para>Prepends a page to <parameter>notebook</parameter>
.</para>
<refsect3 id="gtk-notebook-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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</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 <link linkend="GtkWidget"><type>GtkWidget</type></link> to use as the contents of the page</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>tab_label</para></entry>
<entry role="parameter_description"><para>the <link linkend="GtkWidget"><type>GtkWidget</type></link> to be used as the label
for the page, or <link linkend="NULL:CAPS"><literal>NULL</literal></link> to use the default label, “page N”. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>allow-none</acronym>]</emphasis></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-notebook-prepend-page.returns" role="returns">
<title>Returns</title>
<para> the index (starting from 0) of the prepended
page in the notebook, or -1 if function fails</para>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-prepend-page-menu" role="function">
<title>gtk_notebook_prepend_page_menu&#160;()</title>
<indexterm zone="gtk-notebook-prepend-page-menu"><primary>gtk_notebook_prepend_page_menu</primary></indexterm>
<programlisting language="C"><link linkend="gint"><returnvalue>gint</returnvalue></link>
gtk_notebook_prepend_page_menu (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                                <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>,
                                <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *tab_label</parameter>,
                                <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *menu_label</parameter>);</programlisting>
<para>Prepends a page to <parameter>notebook</parameter>
, specifying the widget to use as the
label in the popup menu.</para>
<refsect3 id="gtk-notebook-prepend-page-menu.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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</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 <link linkend="GtkWidget"><type>GtkWidget</type></link> to use as the contents of the page</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>tab_label</para></entry>
<entry role="parameter_description"><para>the <link linkend="GtkWidget"><type>GtkWidget</type></link> to be used as the label
for the page, or <link linkend="NULL:CAPS"><literal>NULL</literal></link> to use the default label, “page N”. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>allow-none</acronym>]</emphasis></entry></row>
<row><entry role="parameter_name"><para>menu_label</para></entry>
<entry role="parameter_description"><para>the widget to use as a label for the
page-switch menu, if that is enabled. If <link linkend="NULL:CAPS"><literal>NULL</literal></link>, and <parameter>tab_label</parameter>
is a <link linkend="GtkLabel"><type>GtkLabel</type></link> or <link linkend="NULL:CAPS"><literal>NULL</literal></link>, then the menu label will be a newly
created label with the same text as <parameter>tab_label</parameter>
; if <parameter>tab_label</parameter>
is not a <link linkend="GtkLabel"><type>GtkLabel</type></link>, <parameter>menu_label</parameter>
must be specified if the
page-switch menu is to be used. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>allow-none</acronym>]</emphasis></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-notebook-prepend-page-menu.returns" role="returns">
<title>Returns</title>
<para> the index (starting from 0) of the prepended
page in the notebook, or -1 if function fails</para>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-insert-page" role="function">
<title>gtk_notebook_insert_page&#160;()</title>
<indexterm zone="gtk-notebook-insert-page"><primary>gtk_notebook_insert_page</primary></indexterm>
<programlisting language="C"><link linkend="gint"><returnvalue>gint</returnvalue></link>
gtk_notebook_insert_page (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                          <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>,
                          <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *tab_label</parameter>,
                          <parameter><link linkend="gint"><type>gint</type></link> position</parameter>);</programlisting>
<para>Insert a page into <parameter>notebook</parameter>
 at the given position.</para>
<refsect3 id="gtk-notebook-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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</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 <link linkend="GtkWidget"><type>GtkWidget</type></link> to use as the contents of the page</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>tab_label</para></entry>
<entry role="parameter_description"><para>the <link linkend="GtkWidget"><type>GtkWidget</type></link> to be used as the label
for the page, or <link linkend="NULL:CAPS"><literal>NULL</literal></link> to use the default label, “page N”. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>allow-none</acronym>]</emphasis></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 after all other pages</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-notebook-insert-page.returns" role="returns">
<title>Returns</title>
<para> the index (starting from 0) of the inserted
page in the notebook, or -1 if function fails</para>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-insert-page-menu" role="function">
<title>gtk_notebook_insert_page_menu&#160;()</title>
<indexterm zone="gtk-notebook-insert-page-menu"><primary>gtk_notebook_insert_page_menu</primary></indexterm>
<programlisting language="C"><link linkend="gint"><returnvalue>gint</returnvalue></link>
gtk_notebook_insert_page_menu (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                               <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>,
                               <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *tab_label</parameter>,
                               <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *menu_label</parameter>,
                               <parameter><link linkend="gint"><type>gint</type></link> position</parameter>);</programlisting>
<para>Insert a page into <parameter>notebook</parameter>
 at the given position, specifying
the widget to use as the label in the popup menu.</para>
<refsect3 id="gtk-notebook-insert-page-menu.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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</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 <link linkend="GtkWidget"><type>GtkWidget</type></link> to use as the contents of the page</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>tab_label</para></entry>
<entry role="parameter_description"><para>the <link linkend="GtkWidget"><type>GtkWidget</type></link> to be used as the label
for the page, or <link linkend="NULL:CAPS"><literal>NULL</literal></link> to use the default label, “page N”. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>allow-none</acronym>]</emphasis></entry></row>
<row><entry role="parameter_name"><para>menu_label</para></entry>
<entry role="parameter_description"><para>the widget to use as a label for the
page-switch menu, if that is enabled. If <link linkend="NULL:CAPS"><literal>NULL</literal></link>, and <parameter>tab_label</parameter>
is a <link linkend="GtkLabel"><type>GtkLabel</type></link> or <link linkend="NULL:CAPS"><literal>NULL</literal></link>, then the menu label will be a newly
created label with the same text as <parameter>tab_label</parameter>
; if <parameter>tab_label</parameter>
is not a <link linkend="GtkLabel"><type>GtkLabel</type></link>, <parameter>menu_label</parameter>
must be specified if the
page-switch menu is to be used. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>allow-none</acronym>]</emphasis></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 after all other pages.</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-notebook-insert-page-menu.returns" role="returns">
<title>Returns</title>
<para> the index (starting from 0) of the inserted
page in the notebook</para>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-remove-page" role="function">
<title>gtk_notebook_remove_page&#160;()</title>
<indexterm zone="gtk-notebook-remove-page"><primary>gtk_notebook_remove_page</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_notebook_remove_page (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                          <parameter><link linkend="gint"><type>gint</type></link> page_num</parameter>);</programlisting>
<para>Removes a page from the notebook given its index
in the notebook.</para>
<refsect3 id="gtk-notebook-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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</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 notebook page, starting
from 0. If -1, the last page will be removed.</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-detach-tab" role="function">
<title>gtk_notebook_detach_tab&#160;()</title>
<indexterm zone="gtk-notebook-detach-tab"><primary>gtk_notebook_detach_tab</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_notebook_detach_tab (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                         <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>);</programlisting>
<para>Removes the child from the notebook.</para>
<para>This function is very similar to <link linkend="gtk-container-remove"><function>gtk_container_remove()</function></link>,
but additionally informs the notebook that the removal
is happening as part of a tab DND operation, which should
not be cancelled.</para>
<refsect3 id="gtk-notebook-detach-tab.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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</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</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-page-num" role="function">
<title>gtk_notebook_page_num&#160;()</title>
<indexterm zone="gtk-notebook-page-num"><primary>gtk_notebook_page_num</primary></indexterm>
<programlisting language="C"><link linkend="gint"><returnvalue>gint</returnvalue></link>
gtk_notebook_page_num (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                       <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>);</programlisting>
<para>Finds the index of the page which contains the given child
widget.</para>
<refsect3 id="gtk-notebook-page-num.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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</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><refsect3 id="gtk-notebook-page-num.returns" role="returns">
<title>Returns</title>
<para> the index of the page containing <parameter>child</parameter>
, or
-1 if <parameter>child</parameter>
is not in the notebook</para>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-next-page" role="function">
<title>gtk_notebook_next_page&#160;()</title>
<indexterm zone="gtk-notebook-next-page"><primary>gtk_notebook_next_page</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_notebook_next_page (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>);</programlisting>
<para>Switches to the next page. Nothing happens if the current page is
the last page.</para>
<refsect3 id="gtk-notebook-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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-prev-page" role="function">
<title>gtk_notebook_prev_page&#160;()</title>
<indexterm zone="gtk-notebook-prev-page"><primary>gtk_notebook_prev_page</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_notebook_prev_page (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>);</programlisting>
<para>Switches to the previous page. Nothing happens if the current page
is the first page.</para>
<refsect3 id="gtk-notebook-prev-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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-reorder-child" role="function">
<title>gtk_notebook_reorder_child&#160;()</title>
<indexterm zone="gtk-notebook-reorder-child"><primary>gtk_notebook_reorder_child</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_notebook_reorder_child (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                            <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>,
                            <parameter><link linkend="gint"><type>gint</type></link> position</parameter>);</programlisting>
<para>Reorders the page containing <parameter>child</parameter>
, so that it appears in position
<parameter>position</parameter>
. If <parameter>position</parameter>
 is greater than or equal to the number of
children in the list or negative, <parameter>child</parameter>
 will be moved to the end
of the list.</para>
<refsect3 id="gtk-notebook-reorder-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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</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 move</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>position</para></entry>
<entry role="parameter_description"><para>the new position, or -1 to move to the end</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-set-tab-pos" role="function">
<title>gtk_notebook_set_tab_pos&#160;()</title>
<indexterm zone="gtk-notebook-set-tab-pos"><primary>gtk_notebook_set_tab_pos</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_notebook_set_tab_pos (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                          <parameter><link linkend="GtkPositionType"><type>GtkPositionType</type></link> pos</parameter>);</programlisting>
<para>Sets the edge at which the tabs for switching pages in the
notebook are drawn.</para>
<refsect3 id="gtk-notebook-set-tab-pos.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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</type></link>.</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>pos</para></entry>
<entry role="parameter_description"><para>the edge to draw the tabs at</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-set-show-tabs" role="function">
<title>gtk_notebook_set_show_tabs&#160;()</title>
<indexterm zone="gtk-notebook-set-show-tabs"><primary>gtk_notebook_set_show_tabs</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_notebook_set_show_tabs (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                            <parameter><link linkend="gboolean"><type>gboolean</type></link> show_tabs</parameter>);</programlisting>
<para>Sets whether to show the tabs for the notebook or not.</para>
<refsect3 id="gtk-notebook-set-show-tabs.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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>show_tabs</para></entry>
<entry role="parameter_description"><para><link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if the tabs should be shown</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-set-show-border" role="function">
<title>gtk_notebook_set_show_border&#160;()</title>
<indexterm zone="gtk-notebook-set-show-border"><primary>gtk_notebook_set_show_border</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_notebook_set_show_border (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                              <parameter><link linkend="gboolean"><type>gboolean</type></link> show_border</parameter>);</programlisting>
<para>Sets whether a bevel will be drawn around the notebook pages.
This only has a visual effect when the tabs are not shown.
See <link linkend="gtk-notebook-set-show-tabs"><function>gtk_notebook_set_show_tabs()</function></link>.</para>
<refsect3 id="gtk-notebook-set-show-border.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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>show_border</para></entry>
<entry role="parameter_description"><para><link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if a bevel should be drawn around the notebook</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-set-scrollable" role="function">
<title>gtk_notebook_set_scrollable&#160;()</title>
<indexterm zone="gtk-notebook-set-scrollable"><primary>gtk_notebook_set_scrollable</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_notebook_set_scrollable (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                             <parameter><link linkend="gboolean"><type>gboolean</type></link> scrollable</parameter>);</programlisting>
<para>Sets whether the tab label area will have arrows for
scrolling if there are too many tabs to fit in the area.</para>
<refsect3 id="gtk-notebook-set-scrollable.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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>scrollable</para></entry>
<entry role="parameter_description"><para><link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if scroll arrows should be added</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-popup-enable" role="function">
<title>gtk_notebook_popup_enable&#160;()</title>
<indexterm zone="gtk-notebook-popup-enable"><primary>gtk_notebook_popup_enable</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_notebook_popup_enable (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>);</programlisting>
<para>Enables the popup menu: if the user clicks with the right
mouse button on the tab labels, a menu with all the pages
will be popped up.</para>
<refsect3 id="gtk-notebook-popup-enable.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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-popup-disable" role="function">
<title>gtk_notebook_popup_disable&#160;()</title>
<indexterm zone="gtk-notebook-popup-disable"><primary>gtk_notebook_popup_disable</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_notebook_popup_disable (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>);</programlisting>
<para>Disables the popup menu.</para>
<refsect3 id="gtk-notebook-popup-disable.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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-get-current-page" role="function">
<title>gtk_notebook_get_current_page&#160;()</title>
<indexterm zone="gtk-notebook-get-current-page"><primary>gtk_notebook_get_current_page</primary></indexterm>
<programlisting language="C"><link linkend="gint"><returnvalue>gint</returnvalue></link>
gtk_notebook_get_current_page (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>);</programlisting>
<para>Returns the page number of the current page.</para>
<refsect3 id="gtk-notebook-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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-notebook-get-current-page.returns" role="returns">
<title>Returns</title>
<para> the index (starting from 0) of the current
page in the notebook. If the notebook has no pages,
then -1 will be returned.</para>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-get-menu-label" role="function">
<title>gtk_notebook_get_menu_label&#160;()</title>
<indexterm zone="gtk-notebook-get-menu-label"><primary>gtk_notebook_get_menu_label</primary></indexterm>
<programlisting language="C"><link linkend="GtkWidget"><returnvalue>GtkWidget</returnvalue></link>&#160;*
gtk_notebook_get_menu_label (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                             <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>);</programlisting>
<para>Retrieves the menu label widget of the page containing <parameter>child</parameter>
.</para>
<refsect3 id="gtk-notebook-get-menu-label.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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</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 widget contained in a page of <parameter>notebook</parameter>
</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-notebook-get-menu-label.returns" role="returns">
<title>Returns</title>
<para>the menu label, or <link linkend="NULL:CAPS"><literal>NULL</literal></link> if the
notebook page does not have a menu label other than the default (the tab
label). </para>
<para><emphasis role="annotation">[<acronym>nullable</acronym>][<acronym>transfer none</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-get-nth-page" role="function">
<title>gtk_notebook_get_nth_page&#160;()</title>
<indexterm zone="gtk-notebook-get-nth-page"><primary>gtk_notebook_get_nth_page</primary></indexterm>
<programlisting language="C"><link linkend="GtkWidget"><returnvalue>GtkWidget</returnvalue></link>&#160;*
gtk_notebook_get_nth_page (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</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-notebook-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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</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 notebook, or -1
to get the last page</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-notebook-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-notebook-get-n-pages" role="function">
<title>gtk_notebook_get_n_pages&#160;()</title>
<indexterm zone="gtk-notebook-get-n-pages"><primary>gtk_notebook_get_n_pages</primary></indexterm>
<programlisting language="C"><link linkend="gint"><returnvalue>gint</returnvalue></link>
gtk_notebook_get_n_pages (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>);</programlisting>
<para>Gets the number of pages in a notebook.</para>
<refsect3 id="gtk-notebook-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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-notebook-get-n-pages.returns" role="returns">
<title>Returns</title>
<para> the number of pages in the notebook</para>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-get-tab-label" role="function">
<title>gtk_notebook_get_tab_label&#160;()</title>
<indexterm zone="gtk-notebook-get-tab-label"><primary>gtk_notebook_get_tab_label</primary></indexterm>
<programlisting language="C"><link linkend="GtkWidget"><returnvalue>GtkWidget</returnvalue></link>&#160;*
gtk_notebook_get_tab_label (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                            <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>);</programlisting>
<para>Returns the tab label widget for the page <parameter>child</parameter>
.
<link linkend="NULL:CAPS"><literal>NULL</literal></link> is returned if <parameter>child</parameter>
 is not in <parameter>notebook</parameter>
 or
if no tab label has specifically been set for <parameter>child</parameter>
.</para>
<refsect3 id="gtk-notebook-get-tab-label.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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</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 page</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-notebook-get-tab-label.returns" role="returns">
<title>Returns</title>
<para>the tab label. </para>
<para><emphasis role="annotation">[<acronym>transfer none</acronym>][<acronym>nullable</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-set-menu-label" role="function">
<title>gtk_notebook_set_menu_label&#160;()</title>
<indexterm zone="gtk-notebook-set-menu-label"><primary>gtk_notebook_set_menu_label</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_notebook_set_menu_label (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                             <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>,
                             <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *menu_label</parameter>);</programlisting>
<para>Changes the menu label for the page containing <parameter>child</parameter>
.</para>
<refsect3 id="gtk-notebook-set-menu-label.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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</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 widget</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>menu_label</para></entry>
<entry role="parameter_description"><para>the menu label, or <link linkend="NULL:CAPS"><literal>NULL</literal></link> for default. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>allow-none</acronym>]</emphasis></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-set-menu-label-text" role="function">
<title>gtk_notebook_set_menu_label_text&#160;()</title>
<indexterm zone="gtk-notebook-set-menu-label-text"><primary>gtk_notebook_set_menu_label_text</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_notebook_set_menu_label_text (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                                  <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>,
                                  <parameter>const <link linkend="gchar"><type>gchar</type></link> *menu_text</parameter>);</programlisting>
<para>Creates a new label and sets it as the menu label of <parameter>child</parameter>
.</para>
<refsect3 id="gtk-notebook-set-menu-label-text.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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</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 widget</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>menu_text</para></entry>
<entry role="parameter_description"><para>the label text</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-set-tab-label" role="function">
<title>gtk_notebook_set_tab_label&#160;()</title>
<indexterm zone="gtk-notebook-set-tab-label"><primary>gtk_notebook_set_tab_label</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_notebook_set_tab_label (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                            <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>,
                            <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *tab_label</parameter>);</programlisting>
<para>Changes the tab label for <parameter>child</parameter>
.
If <link linkend="NULL:CAPS"><literal>NULL</literal></link> is specified for <parameter>tab_label</parameter>
, then the page will
have the label “page N”.</para>
<refsect3 id="gtk-notebook-set-tab-label.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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</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 page</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>tab_label</para></entry>
<entry role="parameter_description"><para>the tab label widget to use, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>
for default tab label. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>allow-none</acronym>]</emphasis></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-set-tab-label-text" role="function">
<title>gtk_notebook_set_tab_label_text&#160;()</title>
<indexterm zone="gtk-notebook-set-tab-label-text"><primary>gtk_notebook_set_tab_label_text</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_notebook_set_tab_label_text (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                                 <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>,
                                 <parameter>const <link linkend="gchar"><type>gchar</type></link> *tab_text</parameter>);</programlisting>
<para>Creates a new label and sets it as the tab label for the page
containing <parameter>child</parameter>
.</para>
<refsect3 id="gtk-notebook-set-tab-label-text.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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</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 page</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>tab_text</para></entry>
<entry role="parameter_description"><para>the label text</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-set-tab-reorderable" role="function">
<title>gtk_notebook_set_tab_reorderable&#160;()</title>
<indexterm zone="gtk-notebook-set-tab-reorderable"><primary>gtk_notebook_set_tab_reorderable</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_notebook_set_tab_reorderable (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                                  <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>,
                                  <parameter><link linkend="gboolean"><type>gboolean</type></link> reorderable</parameter>);</programlisting>
<para>Sets whether the notebook tab can be reordered
via drag and drop or not.</para>
<refsect3 id="gtk-notebook-set-tab-reorderable.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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</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 <link linkend="GtkWidget"><type>GtkWidget</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>reorderable</para></entry>
<entry role="parameter_description"><para>whether the tab is reorderable or not</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-set-tab-detachable" role="function">
<title>gtk_notebook_set_tab_detachable&#160;()</title>
<indexterm zone="gtk-notebook-set-tab-detachable"><primary>gtk_notebook_set_tab_detachable</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_notebook_set_tab_detachable (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                                 <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>,
                                 <parameter><link linkend="gboolean"><type>gboolean</type></link> detachable</parameter>);</programlisting>
<para>Sets whether the tab can be detached from <parameter>notebook</parameter>
 to another
notebook or widget.</para>
<para>Note that 2 notebooks must share a common group identificator
(see <link linkend="gtk-notebook-set-group-name"><function>gtk_notebook_set_group_name()</function></link>) to allow automatic tabs
interchange between them.</para>
<para>If you want a widget to interact with a notebook through DnD
(i.e.: accept dragged tabs from it) it must be set as a drop
destination and accept the target “GTK_NOTEBOOK_TAB”. The notebook
will fill the selection with a GtkWidget** pointing to the child
widget that corresponds to the dropped tab.</para>
<para>Note that you should use <link linkend="gtk-notebook-detach-tab"><function>gtk_notebook_detach_tab()</function></link> instead
of <link linkend="gtk-container-remove"><function>gtk_container_remove()</function></link> if you want to remove the tab from
the source notebook as part of accepting a drop. Otherwise,
the source notebook will think that the dragged tab was
removed from underneath the ongoing drag operation, and
will initiate a drag cancel animation.</para>
<informalexample><programlisting role="example"><![CDATA[
 static void
 on_drag_data_received (GtkWidget        *widget,
                        GdkDrop          *drop,
                        GtkSelectionData *data,
                        guint             time,
                        gpointer          user_data)
 {
   GtkDrag *drag;
   GtkWidget *notebook;
   GtkWidget **child;

   drag = gtk_drop_get_drag (drop);
   notebook = g_object_get_data (drag, "gtk-notebook-drag-origin");
   child = (void*) gtk_selection_data_get_data (data);

   // process_widget (*child);

   gtk_notebook_detach_tab (GTK_NOTEBOOK (notebook), *child);
 }
]]></programlisting></informalexample>
<para></para>
<para>If you want a notebook to accept drags from other widgets,
you will have to set your own DnD code to do it.</para>
<refsect3 id="gtk-notebook-set-tab-detachable.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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</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 <link linkend="GtkWidget"><type>GtkWidget</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>detachable</para></entry>
<entry role="parameter_description"><para>whether the tab is detachable or not</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-get-menu-label-text" role="function">
<title>gtk_notebook_get_menu_label_text&#160;()</title>
<indexterm zone="gtk-notebook-get-menu-label-text"><primary>gtk_notebook_get_menu_label_text</primary></indexterm>
<programlisting language="C">const <link linkend="gchar"><returnvalue>gchar</returnvalue></link>&#160;*
gtk_notebook_get_menu_label_text (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                                  <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>);</programlisting>
<para>Retrieves the text of the menu label for the page containing
<parameter>child</parameter>
.</para>
<refsect3 id="gtk-notebook-get-menu-label-text.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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</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 widget of a page of the notebook.</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-notebook-get-menu-label-text.returns" role="returns">
<title>Returns</title>
<para>the text of the tab label, or <link linkend="NULL:CAPS"><literal>NULL</literal></link> if the widget does
not have a menu label other than the default menu label, or the menu label
widget is not a <link linkend="GtkLabel"><type>GtkLabel</type></link>. The string is owned by the widget and must not be
freed. </para>
<para><emphasis role="annotation">[<acronym>nullable</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-get-scrollable" role="function">
<title>gtk_notebook_get_scrollable&#160;()</title>
<indexterm zone="gtk-notebook-get-scrollable"><primary>gtk_notebook_get_scrollable</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_notebook_get_scrollable (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>);</programlisting>
<para>Returns whether the tab label area has arrows for scrolling.
See <link linkend="gtk-notebook-set-scrollable"><function>gtk_notebook_set_scrollable()</function></link>.</para>
<refsect3 id="gtk-notebook-get-scrollable.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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-notebook-get-scrollable.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if arrows for scrolling are present</para>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-get-show-border" role="function">
<title>gtk_notebook_get_show_border&#160;()</title>
<indexterm zone="gtk-notebook-get-show-border"><primary>gtk_notebook_get_show_border</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_notebook_get_show_border (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>);</programlisting>
<para>Returns whether a bevel will be drawn around the notebook pages.
See <link linkend="gtk-notebook-set-show-border"><function>gtk_notebook_set_show_border()</function></link>.</para>
<refsect3 id="gtk-notebook-get-show-border.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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-notebook-get-show-border.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if the bevel is drawn</para>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-get-show-tabs" role="function">
<title>gtk_notebook_get_show_tabs&#160;()</title>
<indexterm zone="gtk-notebook-get-show-tabs"><primary>gtk_notebook_get_show_tabs</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_notebook_get_show_tabs (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>);</programlisting>
<para>Returns whether the tabs of the notebook are shown.
See <link linkend="gtk-notebook-set-show-tabs"><function>gtk_notebook_set_show_tabs()</function></link>.</para>
<refsect3 id="gtk-notebook-get-show-tabs.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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-notebook-get-show-tabs.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if the tabs are shown</para>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-get-tab-label-text" role="function">
<title>gtk_notebook_get_tab_label_text&#160;()</title>
<indexterm zone="gtk-notebook-get-tab-label-text"><primary>gtk_notebook_get_tab_label_text</primary></indexterm>
<programlisting language="C">const <link linkend="gchar"><returnvalue>gchar</returnvalue></link>&#160;*
gtk_notebook_get_tab_label_text (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                                 <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>);</programlisting>
<para>Retrieves the text of the tab label for the page containing
<parameter>child</parameter>
.</para>
<refsect3 id="gtk-notebook-get-tab-label-text.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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</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 widget contained in a page of <parameter>notebook</parameter>
</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-notebook-get-tab-label-text.returns" role="returns">
<title>Returns</title>
<para>the text of the tab label, or <link linkend="NULL:CAPS"><literal>NULL</literal></link> if the tab label
widget is not a <link linkend="GtkLabel"><type>GtkLabel</type></link>. The string is owned by the widget and must not be
freed. </para>
<para><emphasis role="annotation">[<acronym>nullable</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-get-tab-pos" role="function">
<title>gtk_notebook_get_tab_pos&#160;()</title>
<indexterm zone="gtk-notebook-get-tab-pos"><primary>gtk_notebook_get_tab_pos</primary></indexterm>
<programlisting language="C"><link linkend="GtkPositionType"><returnvalue>GtkPositionType</returnvalue></link>
gtk_notebook_get_tab_pos (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>);</programlisting>
<para>Gets the edge at which the tabs for switching pages in the
notebook are drawn.</para>
<refsect3 id="gtk-notebook-get-tab-pos.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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-notebook-get-tab-pos.returns" role="returns">
<title>Returns</title>
<para> the edge at which the tabs are drawn</para>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-get-tab-reorderable" role="function">
<title>gtk_notebook_get_tab_reorderable&#160;()</title>
<indexterm zone="gtk-notebook-get-tab-reorderable"><primary>gtk_notebook_get_tab_reorderable</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_notebook_get_tab_reorderable (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                                  <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>);</programlisting>
<para>Gets whether the tab can be reordered via drag and drop or not.</para>
<refsect3 id="gtk-notebook-get-tab-reorderable.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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</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 <link linkend="GtkWidget"><type>GtkWidget</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-notebook-get-tab-reorderable.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if the tab is reorderable.</para>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-get-tab-detachable" role="function">
<title>gtk_notebook_get_tab_detachable&#160;()</title>
<indexterm zone="gtk-notebook-get-tab-detachable"><primary>gtk_notebook_get_tab_detachable</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_notebook_get_tab_detachable (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                                 <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>);</programlisting>
<para>Returns whether the tab contents can be detached from <parameter>notebook</parameter>
.</para>
<refsect3 id="gtk-notebook-get-tab-detachable.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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</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 <link linkend="GtkWidget"><type>GtkWidget</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-notebook-get-tab-detachable.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if the tab is detachable.</para>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-set-current-page" role="function">
<title>gtk_notebook_set_current_page&#160;()</title>
<indexterm zone="gtk-notebook-set-current-page"><primary>gtk_notebook_set_current_page</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_notebook_set_current_page (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                               <parameter><link linkend="gint"><type>gint</type></link> page_num</parameter>);</programlisting>
<para>Switches to the page number <parameter>page_num</parameter>
.</para>
<para>Note that due to historical reasons, GtkNotebook refuses
to switch to a page unless the child widget is visible.
Therefore, it is recommended to show child widgets before
adding them to a notebook.</para>
<refsect3 id="gtk-notebook-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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</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 notebook, nothing
will be done.</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-set-group-name" role="function">
<title>gtk_notebook_set_group_name&#160;()</title>
<indexterm zone="gtk-notebook-set-group-name"><primary>gtk_notebook_set_group_name</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_notebook_set_group_name (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                             <parameter>const <link linkend="gchar"><type>gchar</type></link> *group_name</parameter>);</programlisting>
<para>Sets a group name for <parameter>notebook</parameter>
.</para>
<para>Notebooks with the same name will be able to exchange tabs
via drag and drop. A notebook with a <link linkend="NULL:CAPS"><literal>NULL</literal></link> group name will
not be able to exchange tabs with any other notebook.</para>
<refsect3 id="gtk-notebook-set-group-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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>group_name</para></entry>
<entry role="parameter_description"><para>the name of the notebook group,
or <link linkend="NULL:CAPS"><literal>NULL</literal></link> to unset it. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>allow-none</acronym>]</emphasis></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-get-group-name" role="function">
<title>gtk_notebook_get_group_name&#160;()</title>
<indexterm zone="gtk-notebook-get-group-name"><primary>gtk_notebook_get_group_name</primary></indexterm>
<programlisting language="C">const <link linkend="gchar"><returnvalue>gchar</returnvalue></link>&#160;*
gtk_notebook_get_group_name (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>);</programlisting>
<para>Gets the current group name for <parameter>notebook</parameter>
.</para>
<refsect3 id="gtk-notebook-get-group-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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-notebook-get-group-name.returns" role="returns">
<title>Returns</title>
<para>the group name, or <link linkend="NULL:CAPS"><literal>NULL</literal></link> if none is set. </para>
<para><emphasis role="annotation">[<acronym>nullable</acronym>][<acronym>transfer none</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-set-action-widget" role="function">
<title>gtk_notebook_set_action_widget&#160;()</title>
<indexterm zone="gtk-notebook-set-action-widget"><primary>gtk_notebook_set_action_widget</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_notebook_set_action_widget (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                                <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *widget</parameter>,
                                <parameter><link linkend="GtkPackType"><type>GtkPackType</type></link> pack_type</parameter>);</programlisting>
<para>Sets <parameter>widget</parameter>
 as one of the action widgets. Depending on the pack type
the widget will be placed before or after the tabs. You can use
a <link linkend="GtkBox"><type>GtkBox</type></link> if you need to pack more than one widget on the same side.</para>
<para>Note that action widgets are “internal” children of the notebook and thus
not included in the list returned from <link linkend="gtk-container-foreach"><function>gtk_container_foreach()</function></link>.</para>
<refsect3 id="gtk-notebook-set-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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>widget</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>pack_type</para></entry>
<entry role="parameter_description"><para>pack type of the action widget</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-notebook-get-action-widget" role="function">
<title>gtk_notebook_get_action_widget&#160;()</title>
<indexterm zone="gtk-notebook-get-action-widget"><primary>gtk_notebook_get_action_widget</primary></indexterm>
<programlisting language="C"><link linkend="GtkWidget"><returnvalue>GtkWidget</returnvalue></link>&#160;*
gtk_notebook_get_action_widget (<parameter><link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook</parameter>,
                                <parameter><link linkend="GtkPackType"><type>GtkPackType</type></link> pack_type</parameter>);</programlisting>
<para>Gets one of the action widgets. See <link linkend="gtk-notebook-set-action-widget"><function>gtk_notebook_set_action_widget()</function></link>.</para>
<refsect3 id="gtk-notebook-get-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>notebook</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNotebook"><type>GtkNotebook</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>pack_type</para></entry>
<entry role="parameter_description"><para>pack type of the action widget to receive</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-notebook-get-action-widget.returns" role="returns">
<title>Returns</title>
<para>The action widget with the given
<parameter>pack_type</parameter>
or <link linkend="NULL:CAPS"><literal>NULL</literal></link> when this action widget has not been set. </para>
<para><emphasis role="annotation">[<acronym>nullable</acronym>][<acronym>transfer none</acronym>]</emphasis></para>
</refsect3></refsect2>

</refsect1>
<refsect1 id="GtkNotebook.other_details" role="details">
<title role="details.title">Types and Values</title>
<refsect2 id="GtkNotebook-struct" role="struct">
<title>GtkNotebook</title>
<indexterm zone="GtkNotebook-struct"><primary>GtkNotebook</primary></indexterm>
<programlisting language="C">typedef struct _GtkNotebook GtkNotebook;</programlisting>
</refsect2>
<refsect2 id="GtkNotebookPage-struct" role="struct">
<title>GtkNotebookPage</title>
<indexterm zone="GtkNotebookPage-struct"><primary>GtkNotebookPage</primary></indexterm>
<programlisting language="C">typedef struct _GtkNotebookPage GtkNotebookPage;</programlisting>
</refsect2>

</refsect1>
<refsect1 id="GtkNotebook.property-details" role="property_details">
<title role="property_details.title">Property Details</title>
<refsect2 id="GtkNotebook--enable-popup" role="property"><title>The <literal>“enable-popup”</literal> property</title>
<indexterm zone="GtkNotebook--enable-popup"><primary>GtkNotebook:enable-popup</primary></indexterm>
<programlisting>  “enable-popup”             <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>If TRUE, pressing the right mouse button on the notebook pops up a menu that you can use to go to a page.</para><para>Owner: GtkNotebook</para>
<para>Flags: Read / Write</para>
<para>Default value: FALSE</para>
</refsect2>
<refsect2 id="GtkNotebook--group-name" role="property"><title>The <literal>“group-name”</literal> property</title>
<indexterm zone="GtkNotebook--group-name"><primary>GtkNotebook:group-name</primary></indexterm>
<programlisting>  “group-name”               <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>Group name for tab drag and drop.</para>
<para>Owner: GtkNotebook</para>
<para>Flags: Read / Write</para>
<para>Default value: NULL</para>
</refsect2>
<refsect2 id="GtkNotebook--page" role="property"><title>The <literal>“page”</literal> property</title>
<indexterm zone="GtkNotebook--page"><primary>GtkNotebook:page</primary></indexterm>
<programlisting>  “page”                     <link linkend="gint"><type>gint</type></link></programlisting>
<para>The index of the current page.</para><para>Owner: GtkNotebook</para>
<para>Flags: Read / Write</para>
<para>Allowed values: &gt;= -1</para>
<para>Default value: -1</para>
</refsect2>
<refsect2 id="GtkNotebook--pages" role="property"><title>The <literal>“pages”</literal> property</title>
<indexterm zone="GtkNotebook--pages"><primary>GtkNotebook:pages</primary></indexterm>
<programlisting>  “pages”                    <link linkend="GListModel"><type>GListModel</type></link>&#160;*</programlisting>
<para>The pages of the notebook.</para><para>Owner: GtkNotebook</para>
<para>Flags: Read</para>
</refsect2>
<refsect2 id="GtkNotebook--scrollable" role="property"><title>The <literal>“scrollable”</literal> property</title>
<indexterm zone="GtkNotebook--scrollable"><primary>GtkNotebook:scrollable</primary></indexterm>
<programlisting>  “scrollable”               <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>If TRUE, scroll arrows are added if there are too many tabs to fit.</para><para>Owner: GtkNotebook</para>
<para>Flags: Read / Write</para>
<para>Default value: FALSE</para>
</refsect2>
<refsect2 id="GtkNotebook--show-border" role="property"><title>The <literal>“show-border”</literal> property</title>
<indexterm zone="GtkNotebook--show-border"><primary>GtkNotebook:show-border</primary></indexterm>
<programlisting>  “show-border”              <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether the border should be shown.</para><para>Owner: GtkNotebook</para>
<para>Flags: Read / Write</para>
<para>Default value: TRUE</para>
</refsect2>
<refsect2 id="GtkNotebook--show-tabs" role="property"><title>The <literal>“show-tabs”</literal> property</title>
<indexterm zone="GtkNotebook--show-tabs"><primary>GtkNotebook:show-tabs</primary></indexterm>
<programlisting>  “show-tabs”                <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether tabs should be shown.</para><para>Owner: GtkNotebook</para>
<para>Flags: Read / Write</para>
<para>Default value: TRUE</para>
</refsect2>
<refsect2 id="GtkNotebook--tab-pos" role="property"><title>The <literal>“tab-pos”</literal> property</title>
<indexterm zone="GtkNotebook--tab-pos"><primary>GtkNotebook:tab-pos</primary></indexterm>
<programlisting>  “tab-pos”                  <link linkend="GtkPositionType"><type>GtkPositionType</type></link></programlisting>
<para>Which side of the notebook holds the tabs.</para><para>Owner: GtkNotebook</para>
<para>Flags: Read / Write</para>
<para>Default value: GTK_POS_TOP</para>
</refsect2>
<refsect2 id="GtkNotebookPage--child" role="property"><title>The <literal>“child”</literal> property</title>
<indexterm zone="GtkNotebookPage--child"><primary>GtkNotebookPage:child</primary></indexterm>
<programlisting>  “child”                    <link linkend="GtkWidget"><type>GtkWidget</type></link>&#160;*</programlisting>
<para>The child for this page.</para><para>Owner: GtkNotebookPage</para>
<para>Flags: Read / Write / Construct&#160;Only</para>
</refsect2>
<refsect2 id="GtkNotebookPage--detachable" role="property"><title>The <literal>“detachable”</literal> property</title>
<indexterm zone="GtkNotebookPage--detachable"><primary>GtkNotebookPage:detachable</primary></indexterm>
<programlisting>  “detachable”               <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether the tab is detachable.</para><para>Owner: GtkNotebookPage</para>
<para>Flags: Read / Write</para>
<para>Default value: FALSE</para>
</refsect2>
<refsect2 id="GtkNotebookPage--menu" role="property"><title>The <literal>“menu”</literal> property</title>
<indexterm zone="GtkNotebookPage--menu"><primary>GtkNotebookPage:menu</primary></indexterm>
<programlisting>  “menu”                     <link linkend="GtkWidget"><type>GtkWidget</type></link>&#160;*</programlisting>
<para>The label widget displayed in the child’s menu entry.</para><para>Owner: GtkNotebookPage</para>
<para>Flags: Read / Write / Construct&#160;Only</para>
</refsect2>
<refsect2 id="GtkNotebookPage--menu-label" role="property"><title>The <literal>“menu-label”</literal> property</title>
<indexterm zone="GtkNotebookPage--menu-label"><primary>GtkNotebookPage:menu-label</primary></indexterm>
<programlisting>  “menu-label”               <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>The text of the menu widget.</para><para>Owner: GtkNotebookPage</para>
<para>Flags: Read / Write</para>
<para>Default value: NULL</para>
</refsect2>
<refsect2 id="GtkNotebookPage--position" role="property"><title>The <literal>“position”</literal> property</title>
<indexterm zone="GtkNotebookPage--position"><primary>GtkNotebookPage:position</primary></indexterm>
<programlisting>  “position”                 <link linkend="gint"><type>gint</type></link></programlisting>
<para>The index of the child in the parent.</para><para>Owner: GtkNotebookPage</para>
<para>Flags: Read / Write</para>
<para>Allowed values: &gt;= -1</para>
<para>Default value: 0</para>
</refsect2>
<refsect2 id="GtkNotebookPage--reorderable" role="property"><title>The <literal>“reorderable”</literal> property</title>
<indexterm zone="GtkNotebookPage--reorderable"><primary>GtkNotebookPage:reorderable</primary></indexterm>
<programlisting>  “reorderable”              <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether the tab is reorderable by user action.</para><para>Owner: GtkNotebookPage</para>
<para>Flags: Read / Write</para>
<para>Default value: FALSE</para>
</refsect2>
<refsect2 id="GtkNotebookPage--tab" role="property"><title>The <literal>“tab”</literal> property</title>
<indexterm zone="GtkNotebookPage--tab"><primary>GtkNotebookPage:tab</primary></indexterm>
<programlisting>  “tab”                      <link linkend="GtkWidget"><type>GtkWidget</type></link>&#160;*</programlisting>
<para>The tab widget for this page.</para><para>Owner: GtkNotebookPage</para>
<para>Flags: Read / Write / Construct&#160;Only</para>
</refsect2>
<refsect2 id="GtkNotebookPage--tab-expand" role="property"><title>The <literal>“tab-expand”</literal> property</title>
<indexterm zone="GtkNotebookPage--tab-expand"><primary>GtkNotebookPage:tab-expand</primary></indexterm>
<programlisting>  “tab-expand”               <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether to expand the child’s tab.</para><para>Owner: GtkNotebookPage</para>
<para>Flags: Read / Write</para>
<para>Default value: FALSE</para>
</refsect2>
<refsect2 id="GtkNotebookPage--tab-fill" role="property"><title>The <literal>“tab-fill”</literal> property</title>
<indexterm zone="GtkNotebookPage--tab-fill"><primary>GtkNotebookPage:tab-fill</primary></indexterm>
<programlisting>  “tab-fill”                 <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether the child’s tab should fill the allocated area.</para><para>Owner: GtkNotebookPage</para>
<para>Flags: Read / Write</para>
<para>Default value: TRUE</para>
</refsect2>
<refsect2 id="GtkNotebookPage--tab-label" role="property"><title>The <literal>“tab-label”</literal> property</title>
<indexterm zone="GtkNotebookPage--tab-label"><primary>GtkNotebookPage:tab-label</primary></indexterm>
<programlisting>  “tab-label”                <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>The text of the tab widget.</para><para>Owner: GtkNotebookPage</para>
<para>Flags: Read / Write</para>
<para>Default value: NULL</para>
</refsect2>

</refsect1>
<refsect1 id="GtkNotebook.signal-details" role="signals">
<title role="signals.title">Signal Details</title>
<refsect2 id="GtkNotebook-change-current-page" role="signal"><title>The <literal>“change-current-page”</literal> signal</title>
<indexterm zone="GtkNotebook-change-current-page"><primary>GtkNotebook::change-current-page</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
user_function (<link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook,
               <link linkend="gint"><type>gint</type></link>         arg1,
               <link linkend="gpointer"><type>gpointer</type></link>     user_data)</programlisting>
<para>Flags: <link linkend="G-SIGNAL-ACTION:CAPS">Action</link></para>
</refsect2><refsect2 id="GtkNotebook-create-window" role="signal"><title>The <literal>“create-window”</literal> signal</title>
<indexterm zone="GtkNotebook-create-window"><primary>GtkNotebook::create-window</primary></indexterm>
<programlisting language="C"><link linkend="GtkNotebook"><returnvalue>GtkNotebook</returnvalue></link>*
user_function (<link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook,
               <link linkend="GtkWidget"><type>GtkWidget</type></link>   *page,
               <link linkend="gpointer"><type>gpointer</type></link>     user_data)</programlisting>
<para>The ::create-window signal is emitted when a detachable
tab is dropped on the root window.</para>
<para>A handler for this signal can create a window containing
a notebook where the tab will be attached. It is also
responsible for moving/resizing the window and adding the
necessary properties to the notebook (e.g. the
<link linkend="GtkNotebook--group-name"><type>“group-name”</type></link> ).</para>
<refsect3 id="GtkNotebook-create-window.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>notebook</para></entry>
<entry role="parameter_description"><para>the <link linkend="GtkNotebook"><type>GtkNotebook</type></link> emitting the signal</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>page</para></entry>
<entry role="parameter_description"><para>the tab of <parameter>notebook</parameter>
that is being detached</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><refsect3 id="GtkNotebook-create-window.returns" role="returns">
<title>Returns</title>
<para>a <link linkend="GtkNotebook"><type>GtkNotebook</type></link> that <parameter>page</parameter>
should be
added to, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>. </para>
<para><emphasis role="annotation">[<acronym>transfer none</acronym>]</emphasis></para>
</refsect3><para>Flags: <link linkend="G-SIGNAL-RUN-LAST:CAPS">Run Last</link></para>
</refsect2><refsect2 id="GtkNotebook-focus-tab" role="signal"><title>The <literal>“focus-tab”</literal> signal</title>
<indexterm zone="GtkNotebook-focus-tab"><primary>GtkNotebook::focus-tab</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
user_function (<link linkend="GtkNotebook"><type>GtkNotebook</type></link>   *notebook,
               <link linkend="GtkNotebookTab"><type>GtkNotebookTab</type></link> arg1,
               <link linkend="gpointer"><type>gpointer</type></link>       user_data)</programlisting>
<para>Flags: <link linkend="G-SIGNAL-ACTION:CAPS">Action</link></para>
</refsect2><refsect2 id="GtkNotebook-move-focus-out" role="signal"><title>The <literal>“move-focus-out”</literal> signal</title>
<indexterm zone="GtkNotebook-move-focus-out"><primary>GtkNotebook::move-focus-out</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
user_function (<link linkend="GtkNotebook"><type>GtkNotebook</type></link>     *notebook,
               <link linkend="GtkDirectionType"><type>GtkDirectionType</type></link> arg1,
               <link linkend="gpointer"><type>gpointer</type></link>         user_data)</programlisting>
<para>Flags: <link linkend="G-SIGNAL-ACTION:CAPS">Action</link></para>
</refsect2><refsect2 id="GtkNotebook-page-added" role="signal"><title>The <literal>“page-added”</literal> signal</title>
<indexterm zone="GtkNotebook-page-added"><primary>GtkNotebook::page-added</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
user_function (<link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook,
               <link linkend="GtkWidget"><type>GtkWidget</type></link>   *child,
               <link linkend="guint"><type>guint</type></link>        page_num,
               <link linkend="gpointer"><type>gpointer</type></link>     user_data)</programlisting>
<para>the ::page-added signal is emitted in the notebook
right after a page is added to the notebook.</para>
<refsect3 id="GtkNotebook-page-added.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>notebook</para></entry>
<entry role="parameter_description"><para>the <link linkend="GtkNotebook"><type>GtkNotebook</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 <link linkend="GtkWidget"><type>GtkWidget</type></link> affected</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>page_num</para></entry>
<entry role="parameter_description"><para>the new page number for <parameter>child</parameter>
</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="GtkNotebook-page-removed" role="signal"><title>The <literal>“page-removed”</literal> signal</title>
<indexterm zone="GtkNotebook-page-removed"><primary>GtkNotebook::page-removed</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
user_function (<link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook,
               <link linkend="GtkWidget"><type>GtkWidget</type></link>   *child,
               <link linkend="guint"><type>guint</type></link>        page_num,
               <link linkend="gpointer"><type>gpointer</type></link>     user_data)</programlisting>
<para>the ::page-removed signal is emitted in the notebook
right after a page is removed from the notebook.</para>
<refsect3 id="GtkNotebook-page-removed.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>notebook</para></entry>
<entry role="parameter_description"><para>the <link linkend="GtkNotebook"><type>GtkNotebook</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 <link linkend="GtkWidget"><type>GtkWidget</type></link> affected</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>page_num</para></entry>
<entry role="parameter_description"><para>the <parameter>child</parameter>
page number</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="GtkNotebook-page-reordered" role="signal"><title>The <literal>“page-reordered”</literal> signal</title>
<indexterm zone="GtkNotebook-page-reordered"><primary>GtkNotebook::page-reordered</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
user_function (<link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook,
               <link linkend="GtkWidget"><type>GtkWidget</type></link>   *child,
               <link linkend="guint"><type>guint</type></link>        page_num,
               <link linkend="gpointer"><type>gpointer</type></link>     user_data)</programlisting>
<para>the ::page-reordered signal is emitted in the notebook
right after a page has been reordered.</para>
<refsect3 id="GtkNotebook-page-reordered.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>notebook</para></entry>
<entry role="parameter_description"><para>the <link linkend="GtkNotebook"><type>GtkNotebook</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 <link linkend="GtkWidget"><type>GtkWidget</type></link> affected</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>page_num</para></entry>
<entry role="parameter_description"><para>the new page number for <parameter>child</parameter>
</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="GtkNotebook-reorder-tab" role="signal"><title>The <literal>“reorder-tab”</literal> signal</title>
<indexterm zone="GtkNotebook-reorder-tab"><primary>GtkNotebook::reorder-tab</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
user_function (<link linkend="GtkNotebook"><type>GtkNotebook</type></link>     *notebook,
               <link linkend="GtkDirectionType"><type>GtkDirectionType</type></link> arg1,
               <link linkend="gboolean"><type>gboolean</type></link>         arg2,
               <link linkend="gpointer"><type>gpointer</type></link>         user_data)</programlisting>
<para>Flags: <link linkend="G-SIGNAL-ACTION:CAPS">Action</link></para>
</refsect2><refsect2 id="GtkNotebook-select-page" role="signal"><title>The <literal>“select-page”</literal> signal</title>
<indexterm zone="GtkNotebook-select-page"><primary>GtkNotebook::select-page</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
user_function (<link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook,
               <link linkend="gboolean"><type>gboolean</type></link>     arg1,
               <link linkend="gpointer"><type>gpointer</type></link>     user_data)</programlisting>
<para>Flags: <link linkend="G-SIGNAL-ACTION:CAPS">Action</link></para>
</refsect2><refsect2 id="GtkNotebook-switch-page" role="signal"><title>The <literal>“switch-page”</literal> signal</title>
<indexterm zone="GtkNotebook-switch-page"><primary>GtkNotebook::switch-page</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
user_function (<link linkend="GtkNotebook"><type>GtkNotebook</type></link> *notebook,
               <link linkend="GtkWidget"><type>GtkWidget</type></link>   *page,
               <link linkend="guint"><type>guint</type></link>        page_num,
               <link linkend="gpointer"><type>gpointer</type></link>     user_data)</programlisting>
<para>Emitted when the user or a function changes the current page.</para>
<refsect3 id="GtkNotebook-switch-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>notebook</para></entry>
<entry role="parameter_description"><para>the object which received the signal.</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>page</para></entry>
<entry role="parameter_description"><para>the new current page</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 the 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>
<refsect1 id="GtkNotebook.action-details" role="action_details">
<title role="action_details.title">Action Details</title>
<refsect2 id="GtkNotebook|menu.popup" role="action"><title>The <literal>“menu.popup”</literal> action</title>
<indexterm zone="GtkNotebook|menu.popup"><primary>GtkNotebook|menu.popup</primary></indexterm>
<para>Opens the context menu.</para>
</refsect2>

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

</refsect1>

</refentry>
