<?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="GtkHeaderBar">
<refmeta>
<refentrytitle role="top_of_page" id="GtkHeaderBar.top_of_page">GtkHeaderBar</refentrytitle>
<manvolnum>3</manvolnum>
<refmiscinfo>GTK4 Library</refmiscinfo>
</refmeta>
<refnamediv>
<refname>GtkHeaderBar</refname>
<refpurpose>A box with a centered child</refpurpose>
</refnamediv>

<refsect1 id="GtkHeaderBar.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-header-bar-new">gtk_header_bar_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-header-bar-set-title-widget">gtk_header_bar_set_title_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-header-bar-get-title-widget">gtk_header_bar_get_title_widget</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-header-bar-pack-start">gtk_header_bar_pack_start</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-header-bar-pack-end">gtk_header_bar_pack_end</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-header-bar-remove">gtk_header_bar_remove</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-header-bar-set-show-title-buttons">gtk_header_bar_set_show_title_buttons</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-header-bar-get-show-title-buttons">gtk_header_bar_get_show_title_buttons</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-header-bar-set-decoration-layout">gtk_header_bar_set_decoration_layout</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-header-bar-get-decoration-layout">gtk_header_bar_get_decoration_layout</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkHeaderBar.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="gchar"><type>gchar</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkHeaderBar--decoration-layout">decoration-layout</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="GtkHeaderBar--show-title-buttons">show-title-buttons</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="GtkHeaderBar--title-widget">title-widget</link></entry><entry role="property_flags">Read / Write</entry></row>

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

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkHeaderBar.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> GtkHeaderBar
</screen>
</refsect1>
<refsect1 id="GtkHeaderBar.implemented-interfaces" role="impl_interfaces">
<title role="impl_interfaces.title">Implemented Interfaces</title>
<para>
GtkHeaderBar implements
 <link linkend="AtkImplementorIface">AtkImplementorIface</link>,  <link linkend="GtkBuildable">GtkBuildable</link> and  <link linkend="GtkConstraintTarget">GtkConstraintTarget</link>.</para>

</refsect1>

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

<refsect1 id="GtkHeaderBar.description" role="desc">
<title role="desc.title">Description</title>
<para>GtkHeaderBar is similar to a horizontal <link linkend="GtkBox"><type>GtkBox</type></link>. It allows children to 
be placed at the start or the end. In addition, it allows the window
title to be displayed. The title will be centered with respect to the
width of the box, even if the children at either side take up different
amounts of space.</para>
<para>GtkHeaderBar can add typical window frame controls, such as minimize,
maximize and close buttons, or the window icon.</para>
<para>For these reasons, GtkHeaderBar is the natural choice for use as the custom
titlebar widget of a <link linkend="GtkWindow"><type>GtkWindow</type></link> (see <link linkend="gtk-window-set-titlebar"><function>gtk_window_set_titlebar()</function></link>), as it gives
features typical of titlebars while allowing the addition of child widgets.</para>
<para>The GtkHeaderBar implementation of the <link linkend="GtkBuildable"><type>GtkBuildable</type></link> interface supports
adding children at the start or end sides by specifying “start” or “end” as
the “type” attribute of a &lt;child> element, or setting the title widget by
specifying “title” value.</para>
<para>By default the GtkHeaderBar uses a <link linkend="GtkLabel"><type>GtkLabel</type></link> displaying the title of the
window it is contained in as the title widget, equivalent to the following
UI definition:</para>
<informalexample><programlisting role="example"><![CDATA[
<object class="GtkHeaderBar">
  <property name="title-widget">
    <object class="GtkLabel">
      <property name="label" translatable="yes">Label</property>
      <property name="single-line-mode">True</property>
      <property name="ellipsize">end</property>
      <property name="width-chars">5</property>
      <style>
        <class name="title"/>
      </style>
    </object>
  </property>
</object>
]]></programlisting></informalexample>
<para></para>
<refsect2><title>CSS nodes</title><informalexample><programlisting role="example"><![CDATA[
headerbar
╰── windowhandle
    ╰── box
        ├── box.start
        │   ├── windowcontrols.start
        │   ╰── [other children]
        ├── [Title Widget]
        ╰── box.end
            ├── [other children]
            ╰── windowcontrols.end
]]></programlisting></informalexample>
<para></para>
<para>A <link linkend="GtkHeaderBar"><type>GtkHeaderBar</type></link>'s CSS node is called headerbar. It contains a windowhandle
subnode, which contains a box subnode, which contains two box subnodes at
the start and end of the headerbar, as well as a center node that represents
the title.</para>
<para>Each of the boxes contains a windowcontrols subnode, see <link linkend="GtkWindowControls"><type>GtkWindowControls</type></link>
for details, as well as other children.</para>
</refsect2>

</refsect1>
<refsect1 id="GtkHeaderBar.functions_details" role="details">
<title role="details.title">Functions</title>
<refsect2 id="gtk-header-bar-new" role="function">
<title>gtk_header_bar_new&#160;()</title>
<indexterm zone="gtk-header-bar-new"><primary>gtk_header_bar_new</primary></indexterm>
<programlisting language="C"><link linkend="GtkWidget"><returnvalue>GtkWidget</returnvalue></link>&#160;*
gtk_header_bar_new (<parameter><type>void</type></parameter>);</programlisting>
<para>Creates a new <link linkend="GtkHeaderBar"><type>GtkHeaderBar</type></link> widget.</para>
<refsect3 id="gtk-header-bar-new.returns" role="returns">
<title>Returns</title>
<para> a new <link linkend="GtkHeaderBar"><type>GtkHeaderBar</type></link></para>
</refsect3></refsect2>
<refsect2 id="gtk-header-bar-set-title-widget" role="function">
<title>gtk_header_bar_set_title_widget&#160;()</title>
<indexterm zone="gtk-header-bar-set-title-widget"><primary>gtk_header_bar_set_title_widget</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_header_bar_set_title_widget (<parameter><link linkend="GtkHeaderBar"><type>GtkHeaderBar</type></link> *bar</parameter>,
                                 <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *title_widget</parameter>);</programlisting>
<para>Sets the title for the <link linkend="GtkHeaderBar"><type>GtkHeaderBar</type></link>.</para>
<para>When set to <link linkend="NULL:CAPS"><literal>NULL</literal></link>, the headerbar will display the title of the window it is
contained in.</para>
<para>The title should help a user identify the current view. To achieve the same
style as the builtin title, use the “title” style class.</para>
<para>You should set the title widget to <link linkend="NULL:CAPS"><literal>NULL</literal></link>, for the window title label to be
visible again.</para>
<refsect3 id="gtk-header-bar-set-title-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>bar</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkHeaderBar"><type>GtkHeaderBar</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>title_widget</para></entry>
<entry role="parameter_description"><para>a widget to use for a title. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>allow-none</acronym>]</emphasis></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-header-bar-get-title-widget" role="function">
<title>gtk_header_bar_get_title_widget&#160;()</title>
<indexterm zone="gtk-header-bar-get-title-widget"><primary>gtk_header_bar_get_title_widget</primary></indexterm>
<programlisting language="C"><link linkend="GtkWidget"><returnvalue>GtkWidget</returnvalue></link>&#160;*
gtk_header_bar_get_title_widget (<parameter><link linkend="GtkHeaderBar"><type>GtkHeaderBar</type></link> *bar</parameter>);</programlisting>
<para>Retrieves the title widget of the header. See
<link linkend="gtk-header-bar-set-title-widget"><function>gtk_header_bar_set_title_widget()</function></link>.</para>
<refsect3 id="gtk-header-bar-get-title-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>bar</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkHeaderBar"><type>GtkHeaderBar</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-header-bar-get-title-widget.returns" role="returns">
<title>Returns</title>
<para>the title widget
of the header, or <link linkend="NULL:CAPS"><literal>NULL</literal></link> if none has been set explicitly. </para>
<para><emphasis role="annotation">[<acronym>nullable</acronym>][<acronym>transfer none</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-header-bar-pack-start" role="function">
<title>gtk_header_bar_pack_start&#160;()</title>
<indexterm zone="gtk-header-bar-pack-start"><primary>gtk_header_bar_pack_start</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_header_bar_pack_start (<parameter><link linkend="GtkHeaderBar"><type>GtkHeaderBar</type></link> *bar</parameter>,
                           <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>);</programlisting>
<para>Adds <parameter>child</parameter>
 to <parameter>bar</parameter>
, packed with reference to the
start of the <parameter>bar</parameter>
.</para>
<refsect3 id="gtk-header-bar-pack-start.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>bar</para></entry>
<entry role="parameter_description"><para>A <link linkend="GtkHeaderBar"><type>GtkHeaderBar</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 be added to <parameter>bar</parameter>
</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-header-bar-pack-end" role="function">
<title>gtk_header_bar_pack_end&#160;()</title>
<indexterm zone="gtk-header-bar-pack-end"><primary>gtk_header_bar_pack_end</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_header_bar_pack_end (<parameter><link linkend="GtkHeaderBar"><type>GtkHeaderBar</type></link> *bar</parameter>,
                         <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>);</programlisting>
<para>Adds <parameter>child</parameter>
 to <parameter>bar</parameter>
, packed with reference to the
end of the <parameter>bar</parameter>
.</para>
<refsect3 id="gtk-header-bar-pack-end.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>bar</para></entry>
<entry role="parameter_description"><para>A <link linkend="GtkHeaderBar"><type>GtkHeaderBar</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 be added to <parameter>bar</parameter>
</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-header-bar-remove" role="function">
<title>gtk_header_bar_remove&#160;()</title>
<indexterm zone="gtk-header-bar-remove"><primary>gtk_header_bar_remove</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_header_bar_remove (<parameter><link linkend="GtkHeaderBar"><type>GtkHeaderBar</type></link> *bar</parameter>,
                       <parameter><link linkend="GtkWidget"><type>GtkWidget</type></link> *child</parameter>);</programlisting>
<para>Removes a child from <parameter>bar</parameter>
, after it has been added
with <link linkend="gtk-header-bar-pack-start"><function>gtk_header_bar_pack_start()</function></link>, <link linkend="gtk-header-bar-pack-end"><function>gtk_header_bar_pack_end()</function></link>
or <link linkend="gtk-header-bar-set-title-widget"><function>gtk_header_bar_set_title_widget()</function></link>.</para>
<refsect3 id="gtk-header-bar-remove.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>bar</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkHeaderBar"><type>GtkHeaderBar</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>child</para></entry>
<entry role="parameter_description"><para>the child to remove</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-header-bar-set-show-title-buttons" role="function">
<title>gtk_header_bar_set_show_title_buttons&#160;()</title>
<indexterm zone="gtk-header-bar-set-show-title-buttons"><primary>gtk_header_bar_set_show_title_buttons</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_header_bar_set_show_title_buttons (<parameter><link linkend="GtkHeaderBar"><type>GtkHeaderBar</type></link> *bar</parameter>,
                                       <parameter><link linkend="gboolean"><type>gboolean</type></link> setting</parameter>);</programlisting>
<para>Sets whether this header bar shows the standard window
title buttons including close, maximize, and minimize.</para>
<refsect3 id="gtk-header-bar-set-show-title-buttons.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>bar</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkHeaderBar"><type>GtkHeaderBar</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>setting</para></entry>
<entry role="parameter_description"><para><link linkend="TRUE:CAPS"><literal>TRUE</literal></link> to show standard title buttons</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-header-bar-get-show-title-buttons" role="function">
<title>gtk_header_bar_get_show_title_buttons&#160;()</title>
<indexterm zone="gtk-header-bar-get-show-title-buttons"><primary>gtk_header_bar_get_show_title_buttons</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_header_bar_get_show_title_buttons (<parameter><link linkend="GtkHeaderBar"><type>GtkHeaderBar</type></link> *bar</parameter>);</programlisting>
<para>Returns whether this header bar shows the standard window
title buttons.</para>
<refsect3 id="gtk-header-bar-get-show-title-buttons.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>bar</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkHeaderBar"><type>GtkHeaderBar</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-header-bar-get-show-title-buttons.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if title buttons are shown</para>
</refsect3></refsect2>
<refsect2 id="gtk-header-bar-set-decoration-layout" role="function">
<title>gtk_header_bar_set_decoration_layout&#160;()</title>
<indexterm zone="gtk-header-bar-set-decoration-layout"><primary>gtk_header_bar_set_decoration_layout</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_header_bar_set_decoration_layout (<parameter><link linkend="GtkHeaderBar"><type>GtkHeaderBar</type></link> *bar</parameter>,
                                      <parameter>const <link linkend="gchar"><type>gchar</type></link> *layout</parameter>);</programlisting>
<para>Sets the decoration layout for this header bar, overriding
the <link linkend="GtkSettings--gtk-decoration-layout"><type>“gtk-decoration-layout”</type></link> setting. </para>
<para>There can be valid reasons for overriding the setting, such
as a header bar design that does not allow for buttons to take
room on the right, or only offers room for a single close button.
Split header bars are another example for overriding the
setting.</para>
<para>The format of the string is button names, separated by commas.
A colon separates the buttons that should appear on the left
from those on the right. Recognized button names are minimize,
maximize, close and icon (the window icon).</para>
<para>For example, “icon:minimize,maximize,close” specifies a icon
on the left, and minimize, maximize and close buttons on the right.</para>
<refsect3 id="gtk-header-bar-set-decoration-layout.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>bar</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkHeaderBar"><type>GtkHeaderBar</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>layout</para></entry>
<entry role="parameter_description"><para>a decoration layout, or <link linkend="NULL:CAPS"><literal>NULL</literal></link> to
unset the layout. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>allow-none</acronym>]</emphasis></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-header-bar-get-decoration-layout" role="function">
<title>gtk_header_bar_get_decoration_layout&#160;()</title>
<indexterm zone="gtk-header-bar-get-decoration-layout"><primary>gtk_header_bar_get_decoration_layout</primary></indexterm>
<programlisting language="C">const <link linkend="gchar"><returnvalue>gchar</returnvalue></link>&#160;*
gtk_header_bar_get_decoration_layout (<parameter><link linkend="GtkHeaderBar"><type>GtkHeaderBar</type></link> *bar</parameter>);</programlisting>
<para>Gets the decoration layout set with
<link linkend="gtk-header-bar-set-decoration-layout"><function>gtk_header_bar_set_decoration_layout()</function></link>.</para>
<refsect3 id="gtk-header-bar-get-decoration-layout.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>bar</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkHeaderBar"><type>GtkHeaderBar</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-header-bar-get-decoration-layout.returns" role="returns">
<title>Returns</title>
<para> the decoration layout</para>
</refsect3></refsect2>

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

</refsect1>
<refsect1 id="GtkHeaderBar.property-details" role="property_details">
<title role="property_details.title">Property Details</title>
<refsect2 id="GtkHeaderBar--decoration-layout" role="property"><title>The <literal>“decoration-layout”</literal> property</title>
<indexterm zone="GtkHeaderBar--decoration-layout"><primary>GtkHeaderBar:decoration-layout</primary></indexterm>
<programlisting>  “decoration-layout”        <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>The decoration layout for buttons. If this property is
not set, the <link linkend="GtkSettings--gtk-decoration-layout"><type>“gtk-decoration-layout”</type></link> setting
is used.</para>
<para>See <link linkend="gtk-header-bar-set-decoration-layout"><function>gtk_header_bar_set_decoration_layout()</function></link> for information
about the format of this string.</para>
<para>Owner: GtkHeaderBar</para>
<para>Flags: Read / Write</para>
<para>Default value: NULL</para>
</refsect2>
<refsect2 id="GtkHeaderBar--show-title-buttons" role="property"><title>The <literal>“show-title-buttons”</literal> property</title>
<indexterm zone="GtkHeaderBar--show-title-buttons"><primary>GtkHeaderBar:show-title-buttons</primary></indexterm>
<programlisting>  “show-title-buttons”       <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether to show title buttons like close, minimize, maximize.</para>
<para>Which buttons are actually shown and where is determined
by the <link linkend="GtkHeaderBar--decoration-layout"><type>“decoration-layout”</type></link> property, and by
the state of the window (e.g. a close button will not be
shown if the window can't be closed).</para>
<para>Owner: GtkHeaderBar</para>
<para>Flags: Read / Write</para>
<para>Default value: FALSE</para>
</refsect2>
<refsect2 id="GtkHeaderBar--title-widget" role="property"><title>The <literal>“title-widget”</literal> property</title>
<indexterm zone="GtkHeaderBar--title-widget"><primary>GtkHeaderBar:title-widget</primary></indexterm>
<programlisting>  “title-widget”             <link linkend="GtkWidget"><type>GtkWidget</type></link>&#160;*</programlisting>
<para>Title widget to display.</para><para>Owner: GtkHeaderBar</para>
<para>Flags: Read / Write</para>
</refsect2>

</refsect1>
<refsect1 id="GtkHeaderBar.see-also">
<title>See Also</title>
<para><link linkend="GtkBox"><type>GtkBox</type></link>, <link linkend="GtkActionBar"><type>GtkActionBar</type></link></para>

</refsect1>

</refentry>
