<?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="GtkPaned">
<refmeta>
<refentrytitle role="top_of_page" id="GtkPaned.top_of_page">GtkPaned</refentrytitle>
<manvolnum>3</manvolnum>
<refmiscinfo>GTK4 Library</refmiscinfo>
</refmeta>
<refnamediv>
<refname>GtkPaned</refname>
<refpurpose>A widget with two adjustable panes</refpurpose>
</refnamediv>

<refsect1 id="GtkPaned.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-paned-new">gtk_paned_new</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-paned-set-position">gtk_paned_set_position</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-paned-get-position">gtk_paned_get_position</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-paned-set-wide-handle">gtk_paned_set_wide_handle</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-paned-get-wide-handle">gtk_paned_get_wide_handle</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkPaned.properties" role="properties">
<title role="properties.title">Properties</title>
<informaltable frame="none">
<tgroup cols="3">
<colspec colname="properties_type" colwidth="150px"/>
<colspec colname="properties_name" colwidth="300px"/>
<colspec colname="properties_flags" colwidth="200px"/>
<tbody>
<row><entry role="property_type"><link linkend="GtkWidget"><type>GtkWidget</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkPaned--end-child">end-child</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="GtkPaned--max-position">max-position</link></entry><entry role="property_flags">Read</entry></row>
<row><entry role="property_type"><link linkend="gint"><type>gint</type></link></entry><entry role="property_name"><link linkend="GtkPaned--min-position">min-position</link></entry><entry role="property_flags">Read</entry></row>
<row><entry role="property_type"><link linkend="gint"><type>gint</type></link></entry><entry role="property_name"><link linkend="GtkPaned--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="GtkPaned--position-set">position-set</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="GtkPaned--resize-end-child">resize-end-child</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="GtkPaned--resize-start-child">resize-start-child</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="GtkPaned--shrink-end-child">shrink-end-child</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="GtkPaned--shrink-start-child">shrink-start-child</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="GtkPaned--start-child">start-child</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="GtkPaned--wide-handle">wide-handle</link></entry><entry role="property_flags">Read / Write</entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkPaned.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="GtkPaned-accept-position">accept-position</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="GtkPaned-cancel-position">cancel-position</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="GtkPaned-cycle-child-focus">cycle-child-focus</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="GtkPaned-cycle-handle-focus">cycle-handle-focus</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="GtkPaned-move-handle">move-handle</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="GtkPaned-toggle-handle-focus">toggle-handle-focus</link></entry><entry role="signal_flags"><link linkend="G-SIGNAL-ACTION:CAPS">Action</link></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkPaned.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="GtkPaned-struct">GtkPaned</link></entry></row>

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

</refsect1>

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

<refsect1 id="GtkPaned.description" role="desc">
<title role="desc.title">Description</title>
<para><link linkend="GtkPaned"><type>GtkPaned</type></link> has two panes, arranged either
horizontally or vertically. The division between
the two panes is adjustable by the user by dragging
a handle.</para>
<para>Child widgets are added to the panes of the widget with
<link linkend="gtk-paned-set-start-child"><function>gtk_paned_set_start_child()</function></link> and <link linkend="gtk-paned-set-end-child"><function>gtk_paned_set_end_child()</function></link>.
The division between the two children is set by default
from the size requests of the children, but it can be adjusted by the
user.</para>
<para>A paned widget draws a separator between the two child widgets and a
small handle that the user can drag to adjust the division. It does not
draw any relief around the children or around the separator. (The space
in which the separator is called the gutter.) Often, it is useful to put
each child inside a <link linkend="GtkFrame"><type>GtkFrame</type></link> so that the gutter appears as a ridge.
No separator is drawn if one of the children is missing.</para>
<para>Each child has two options that can be set, <parameter>resize</parameter>
 and <parameter>shrink</parameter>
. If
<parameter>resize</parameter>
 is true, then when the <link linkend="GtkPaned"><type>GtkPaned</type></link> is resized, that child will
expand or shrink along with the paned widget. If <parameter>shrink</parameter>
 is true, then
that child can be made smaller than its requisition by the user.
Setting <parameter>shrink</parameter>
 to <link linkend="FALSE:CAPS"><literal>FALSE</literal></link> allows the application to set a minimum size.
If <parameter>resize</parameter>
 is false for both children, then this is treated as if
<parameter>resize</parameter>
 is true for both children.</para>
<para>The application can set the position of the slider as if it were set
by the user, by calling <link linkend="gtk-paned-set-position"><function>gtk_paned_set_position()</function></link>.</para>
<refsect2><title>CSS nodes</title><informalexample><programlisting role="example"><![CDATA[
paned
├── <child>
├── separator[.wide]
╰── <child>
]]></programlisting></informalexample>
<para></para>
<para>GtkPaned has a main CSS node with name paned, and a subnode for
the separator with name separator. The subnode gets a .wide style
class when the paned is supposed to be wide.</para>
<para>In horizontal orientation, the nodes are arranged based on the text
direction, so in left-to-right mode, :first-child will select the
leftmost child, while it will select the rightmost child in
RTL layouts.</para>
<refsect3><title>Creating a paned widget with minimum sizes.</title><informalexample><programlisting role="example"><![CDATA[
GtkWidget *hpaned = gtk_paned_new (GTK_ORIENTATION_HORIZONTAL);
GtkWidget *frame1 = gtk_frame_new (NULL);
GtkWidget *frame2 = gtk_frame_new (NULL);

gtk_widget_set_size_request (hpaned, 200, -1);

gtk_paned_pack1 (GTK_PANED (hpaned), frame1, TRUE, FALSE);
gtk_widget_set_size_request (frame1, 50, -1);

gtk_paned_pack2 (GTK_PANED (hpaned), frame2, FALSE, FALSE);
gtk_widget_set_size_request (frame2, 50, -1);
]]></programlisting></informalexample>
<para></para>
</refsect3>
</refsect2>

</refsect1>
<refsect1 id="GtkPaned.functions_details" role="details">
<title role="details.title">Functions</title>
<refsect2 id="gtk-paned-new" role="function">
<title>gtk_paned_new&#160;()</title>
<indexterm zone="gtk-paned-new"><primary>gtk_paned_new</primary></indexterm>
<programlisting language="C"><link linkend="GtkWidget"><returnvalue>GtkWidget</returnvalue></link>&#160;*
gtk_paned_new (<parameter><link linkend="GtkOrientation"><type>GtkOrientation</type></link> orientation</parameter>);</programlisting>
<para>Creates a new <link linkend="GtkPaned"><type>GtkPaned</type></link> widget.</para>
<refsect3 id="gtk-paned-new.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>orientation</para></entry>
<entry role="parameter_description"><para>the paned’s orientation.</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-paned-new.returns" role="returns">
<title>Returns</title>
<para> a new <link linkend="GtkPaned"><type>GtkPaned</type></link>.</para>
</refsect3></refsect2>
<refsect2 id="gtk-paned-set-position" role="function">
<title>gtk_paned_set_position&#160;()</title>
<indexterm zone="gtk-paned-set-position"><primary>gtk_paned_set_position</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_paned_set_position (<parameter><link linkend="GtkPaned"><type>GtkPaned</type></link> *paned</parameter>,
                        <parameter><link linkend="gint"><type>gint</type></link> position</parameter>);</programlisting>
<para>Sets the position of the divider between the two panes.</para>
<refsect3 id="gtk-paned-set-position.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>paned</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkPaned"><type>GtkPaned</type></link> widget</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>position</para></entry>
<entry role="parameter_description"><para>pixel position of divider, a negative value means that the position
is unset.</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-paned-get-position" role="function">
<title>gtk_paned_get_position&#160;()</title>
<indexterm zone="gtk-paned-get-position"><primary>gtk_paned_get_position</primary></indexterm>
<programlisting language="C"><link linkend="gint"><returnvalue>gint</returnvalue></link>
gtk_paned_get_position (<parameter><link linkend="GtkPaned"><type>GtkPaned</type></link> *paned</parameter>);</programlisting>
<para>Obtains the position of the divider between the two panes.</para>
<refsect3 id="gtk-paned-get-position.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>paned</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkPaned"><type>GtkPaned</type></link> widget</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-paned-get-position.returns" role="returns">
<title>Returns</title>
<para> position of the divider</para>
</refsect3></refsect2>
<refsect2 id="gtk-paned-set-wide-handle" role="function">
<title>gtk_paned_set_wide_handle&#160;()</title>
<indexterm zone="gtk-paned-set-wide-handle"><primary>gtk_paned_set_wide_handle</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_paned_set_wide_handle (<parameter><link linkend="GtkPaned"><type>GtkPaned</type></link> *paned</parameter>,
                           <parameter><link linkend="gboolean"><type>gboolean</type></link> wide</parameter>);</programlisting>
<para>Sets the <link linkend="GtkPaned--wide-handle"><type>“wide-handle”</type></link> property.</para>
<refsect3 id="gtk-paned-set-wide-handle.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>paned</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkPaned"><type>GtkPaned</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>wide</para></entry>
<entry role="parameter_description"><para>the new value for the <link linkend="GtkPaned--wide-handle"><type>“wide-handle”</type></link> property</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-paned-get-wide-handle" role="function">
<title>gtk_paned_get_wide_handle&#160;()</title>
<indexterm zone="gtk-paned-get-wide-handle"><primary>gtk_paned_get_wide_handle</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_paned_get_wide_handle (<parameter><link linkend="GtkPaned"><type>GtkPaned</type></link> *paned</parameter>);</programlisting>
<para>Gets the <link linkend="GtkPaned--wide-handle"><type>“wide-handle”</type></link> property.</para>
<refsect3 id="gtk-paned-get-wide-handle.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>paned</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkPaned"><type>GtkPaned</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-paned-get-wide-handle.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if the paned should have a wide handle</para>
</refsect3></refsect2>

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

</refsect1>
<refsect1 id="GtkPaned.property-details" role="property_details">
<title role="property_details.title">Property Details</title>
<refsect2 id="GtkPaned--end-child" role="property"><title>The <literal>“end-child”</literal> property</title>
<indexterm zone="GtkPaned--end-child"><primary>GtkPaned:end-child</primary></indexterm>
<programlisting>  “end-child”                <link linkend="GtkWidget"><type>GtkWidget</type></link>&#160;*</programlisting>
<para>The second child.</para><para>Owner: GtkPaned</para>
<para>Flags: Read / Write</para>
</refsect2>
<refsect2 id="GtkPaned--max-position" role="property"><title>The <literal>“max-position”</literal> property</title>
<indexterm zone="GtkPaned--max-position"><primary>GtkPaned:max-position</primary></indexterm>
<programlisting>  “max-position”             <link linkend="gint"><type>gint</type></link></programlisting>
<para>The largest possible value for the position property.
This property is derived from the size and shrinkability
of the widget's children.</para>
<para>Owner: GtkPaned</para>
<para>Flags: Read</para>
<para>Allowed values: &gt;= 0</para>
<para>Default value: 2147483647</para>
</refsect2>
<refsect2 id="GtkPaned--min-position" role="property"><title>The <literal>“min-position”</literal> property</title>
<indexterm zone="GtkPaned--min-position"><primary>GtkPaned:min-position</primary></indexterm>
<programlisting>  “min-position”             <link linkend="gint"><type>gint</type></link></programlisting>
<para>The smallest possible value for the position property.
This property is derived from the size and shrinkability
of the widget's children.</para>
<para>Owner: GtkPaned</para>
<para>Flags: Read</para>
<para>Allowed values: &gt;= 0</para>
<para>Default value: 0</para>
</refsect2>
<refsect2 id="GtkPaned--position" role="property"><title>The <literal>“position”</literal> property</title>
<indexterm zone="GtkPaned--position"><primary>GtkPaned:position</primary></indexterm>
<programlisting>  “position”                 <link linkend="gint"><type>gint</type></link></programlisting>
<para>Position of paned separator in pixels (0 means all the way to the left/top).</para><para>Owner: GtkPaned</para>
<para>Flags: Read / Write</para>
<para>Allowed values: &gt;= 0</para>
<para>Default value: 0</para>
</refsect2>
<refsect2 id="GtkPaned--position-set" role="property"><title>The <literal>“position-set”</literal> property</title>
<indexterm zone="GtkPaned--position-set"><primary>GtkPaned:position-set</primary></indexterm>
<programlisting>  “position-set”             <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>TRUE if the Position property should be used.</para><para>Owner: GtkPaned</para>
<para>Flags: Read / Write</para>
<para>Default value: FALSE</para>
</refsect2>
<refsect2 id="GtkPaned--resize-end-child" role="property"><title>The <literal>“resize-end-child”</literal> property</title>
<indexterm zone="GtkPaned--resize-end-child"><primary>GtkPaned:resize-end-child</primary></indexterm>
<programlisting>  “resize-end-child”         <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>The "resize-end-child" property determines whether the second child expands and
shrinks along with the paned widget.</para>
<para>Owner: GtkPaned</para>
<para>Flags: Read / Write</para>
<para>Default value: TRUE</para>
</refsect2>
<refsect2 id="GtkPaned--resize-start-child" role="property"><title>The <literal>“resize-start-child”</literal> property</title>
<indexterm zone="GtkPaned--resize-start-child"><primary>GtkPaned:resize-start-child</primary></indexterm>
<programlisting>  “resize-start-child”       <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>The "resize-start-child" property determines whether the first child expands and
shrinks along with the paned widget.</para>
<para>Owner: GtkPaned</para>
<para>Flags: Read / Write</para>
<para>Default value: TRUE</para>
</refsect2>
<refsect2 id="GtkPaned--shrink-end-child" role="property"><title>The <literal>“shrink-end-child”</literal> property</title>
<indexterm zone="GtkPaned--shrink-end-child"><primary>GtkPaned:shrink-end-child</primary></indexterm>
<programlisting>  “shrink-end-child”         <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>The "shrink-end-child" property determines whether the second child can be made
smaller than its requisition.</para>
<para>Owner: GtkPaned</para>
<para>Flags: Read / Write</para>
<para>Default value: TRUE</para>
</refsect2>
<refsect2 id="GtkPaned--shrink-start-child" role="property"><title>The <literal>“shrink-start-child”</literal> property</title>
<indexterm zone="GtkPaned--shrink-start-child"><primary>GtkPaned:shrink-start-child</primary></indexterm>
<programlisting>  “shrink-start-child”       <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>The "shrink-start-child" property determines whether the first child can be made
smaller than its requisition.</para>
<para>Owner: GtkPaned</para>
<para>Flags: Read / Write</para>
<para>Default value: TRUE</para>
</refsect2>
<refsect2 id="GtkPaned--start-child" role="property"><title>The <literal>“start-child”</literal> property</title>
<indexterm zone="GtkPaned--start-child"><primary>GtkPaned:start-child</primary></indexterm>
<programlisting>  “start-child”              <link linkend="GtkWidget"><type>GtkWidget</type></link>&#160;*</programlisting>
<para>The first child.</para><para>Owner: GtkPaned</para>
<para>Flags: Read / Write</para>
</refsect2>
<refsect2 id="GtkPaned--wide-handle" role="property"><title>The <literal>“wide-handle”</literal> property</title>
<indexterm zone="GtkPaned--wide-handle"><primary>GtkPaned:wide-handle</primary></indexterm>
<programlisting>  “wide-handle”              <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Setting this property to <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> indicates that the paned needs
to provide stronger visual separation (e.g. because it separates
between two notebooks, whose tab rows would otherwise merge visually).</para>
<para>Owner: GtkPaned</para>
<para>Flags: Read / Write</para>
<para>Default value: FALSE</para>
</refsect2>

</refsect1>
<refsect1 id="GtkPaned.signal-details" role="signals">
<title role="signals.title">Signal Details</title>
<refsect2 id="GtkPaned-accept-position" role="signal"><title>The <literal>“accept-position”</literal> signal</title>
<indexterm zone="GtkPaned-accept-position"><primary>GtkPaned::accept-position</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
user_function (<link linkend="GtkPaned"><type>GtkPaned</type></link> *widget,
               <link linkend="gpointer"><type>gpointer</type></link>  user_data)</programlisting>
<para>The ::accept-position signal is a
<link linkend="GtkBindingSignal">keybinding signal</link>
which gets emitted to accept the current position of the handle when
moving it using key bindings.</para>
<para>The default binding for this signal is Return or Space.</para>
<refsect3 id="GtkPaned-accept-position.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>widget</para></entry>
<entry role="parameter_description"><para>the object that received the signal</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-ACTION:CAPS">Action</link></para>
</refsect2><refsect2 id="GtkPaned-cancel-position" role="signal"><title>The <literal>“cancel-position”</literal> signal</title>
<indexterm zone="GtkPaned-cancel-position"><primary>GtkPaned::cancel-position</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
user_function (<link linkend="GtkPaned"><type>GtkPaned</type></link> *widget,
               <link linkend="gpointer"><type>gpointer</type></link>  user_data)</programlisting>
<para>The ::cancel-position signal is a
<link linkend="GtkBindingSignal">keybinding signal</link>
which gets emitted to cancel moving the position of the handle using key
bindings. The position of the handle will be reset to the value prior to
moving it.</para>
<para>The default binding for this signal is Escape.</para>
<refsect3 id="GtkPaned-cancel-position.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>widget</para></entry>
<entry role="parameter_description"><para>the object that received the signal</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-ACTION:CAPS">Action</link></para>
</refsect2><refsect2 id="GtkPaned-cycle-child-focus" role="signal"><title>The <literal>“cycle-child-focus”</literal> signal</title>
<indexterm zone="GtkPaned-cycle-child-focus"><primary>GtkPaned::cycle-child-focus</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
user_function (<link linkend="GtkPaned"><type>GtkPaned</type></link> *widget,
               <link linkend="gboolean"><type>gboolean</type></link>  reversed,
               <link linkend="gpointer"><type>gpointer</type></link>  user_data)</programlisting>
<para>The ::cycle-child-focus signal is a
<link linkend="GtkBindingSignal">keybinding signal</link>
which gets emitted to cycle the focus between the children of the paned.</para>
<para>The default binding is f6.</para>
<refsect3 id="GtkPaned-cycle-child-focus.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>widget</para></entry>
<entry role="parameter_description"><para>the object that received the signal</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>reversed</para></entry>
<entry role="parameter_description"><para>whether cycling backward or forward</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-ACTION:CAPS">Action</link></para>
</refsect2><refsect2 id="GtkPaned-cycle-handle-focus" role="signal"><title>The <literal>“cycle-handle-focus”</literal> signal</title>
<indexterm zone="GtkPaned-cycle-handle-focus"><primary>GtkPaned::cycle-handle-focus</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
user_function (<link linkend="GtkPaned"><type>GtkPaned</type></link> *widget,
               <link linkend="gboolean"><type>gboolean</type></link>  reversed,
               <link linkend="gpointer"><type>gpointer</type></link>  user_data)</programlisting>
<para>The ::cycle-handle-focus signal is a
<link linkend="GtkBindingSignal">keybinding signal</link>
which gets emitted to cycle whether the paned should grab focus to allow
the user to change position of the handle by using key bindings.</para>
<para>The default binding for this signal is f8.</para>
<refsect3 id="GtkPaned-cycle-handle-focus.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>widget</para></entry>
<entry role="parameter_description"><para>the object that received the signal</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>reversed</para></entry>
<entry role="parameter_description"><para>whether cycling backward or forward</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-ACTION:CAPS">Action</link></para>
</refsect2><refsect2 id="GtkPaned-move-handle" role="signal"><title>The <literal>“move-handle”</literal> signal</title>
<indexterm zone="GtkPaned-move-handle"><primary>GtkPaned::move-handle</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
user_function (<link linkend="GtkPaned"><type>GtkPaned</type></link>     *widget,
               <link linkend="GtkScrollType"><type>GtkScrollType</type></link> scroll_type,
               <link linkend="gpointer"><type>gpointer</type></link>      user_data)</programlisting>
<para>The ::move-handle signal is a
<link linkend="GtkBindingSignal">keybinding signal</link>
which gets emitted to move the handle when the user is using key bindings
to move it.</para>
<refsect3 id="GtkPaned-move-handle.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>widget</para></entry>
<entry role="parameter_description"><para>the object that received the signal</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>scroll_type</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkScrollType"><type>GtkScrollType</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><simpara>user_data</simpara></entry>
<entry role="parameter_description"><simpara>user data set when the signal handler was connected.</simpara></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><para>Flags: <link linkend="G-SIGNAL-ACTION:CAPS">Action</link></para>
</refsect2><refsect2 id="GtkPaned-toggle-handle-focus" role="signal"><title>The <literal>“toggle-handle-focus”</literal> signal</title>
<indexterm zone="GtkPaned-toggle-handle-focus"><primary>GtkPaned::toggle-handle-focus</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
user_function (<link linkend="GtkPaned"><type>GtkPaned</type></link> *widget,
               <link linkend="gpointer"><type>gpointer</type></link>  user_data)</programlisting>
<para>The ::toggle-handle-focus is a
<link linkend="GtkBindingSignal">keybinding signal</link>
which gets emitted to accept the current position of the handle and then
move focus to the next widget in the focus chain.</para>
<para>The default binding is Tab.</para>
<refsect3 id="GtkPaned-toggle-handle-focus.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>widget</para></entry>
<entry role="parameter_description"><para>the object that received the signal</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-ACTION:CAPS">Action</link></para>
</refsect2>
</refsect1>

</refentry>
