<refentry id="ThunarxPropertyPage">
<refmeta>
<refentrytitle>ThunarxPropertyPage</refentrytitle>
<manvolnum>3</manvolnum>
<refmiscinfo>THUNARX Library</refmiscinfo>
</refmeta>

<refnamediv>
<refname>ThunarxPropertyPage</refname><refpurpose>Base class for pages added to the properties dialog</refpurpose>
</refnamediv>
<refsect1>
<title>Stability Level</title>
Stable, unless otherwise indicated
</refsect1>

<refsynopsisdiv><title>Synopsis</title>

<synopsis>

#include &lt;thunarx/thunarx.h&gt;


            <link linkend="ThunarxPropertyPage-struct">ThunarxPropertyPage</link>;
<link linkend="GtkWidget">GtkWidget</link>*  <link linkend="thunarx-property-page-new">thunarx_property_page_new</link>       (const <link linkend="gchar">gchar</link> *label);
<link linkend="GtkWidget">GtkWidget</link>*  <link linkend="thunarx-property-page-new-with-label-widget">thunarx_property_page_new_with_label_widget</link>
                                            (<link linkend="GtkWidget">GtkWidget</link> *label_widget);
const <link linkend="gchar">gchar</link>* <link linkend="thunarx-property-page-get-label">thunarx_property_page_get_label</link>
                                            (<link linkend="ThunarxPropertyPage">ThunarxPropertyPage</link> *property_page);
<link linkend="void">void</link>        <link linkend="thunarx-property-page-set-label">thunarx_property_page_set_label</link> (<link linkend="ThunarxPropertyPage">ThunarxPropertyPage</link> *property_page,
                                             const <link linkend="gchar">gchar</link> *label);
<link linkend="GtkWidget">GtkWidget</link>*  <link linkend="thunarx-property-page-get-label-widget">thunarx_property_page_get_label_widget</link>
                                            (<link linkend="ThunarxPropertyPage">ThunarxPropertyPage</link> *property_page);
<link linkend="void">void</link>        <link linkend="thunarx-property-page-set-label-widget">thunarx_property_page_set_label_widget</link>
                                            (<link linkend="ThunarxPropertyPage">ThunarxPropertyPage</link> *property_page,
                                             <link linkend="GtkWidget">GtkWidget</link> *label_widget);


</synopsis>
</refsynopsisdiv>

<refsect1>
<title>Object Hierarchy</title>
<synopsis>

  <link linkend="GObject">GObject</link>
   +----<link linkend="GtkObject">GtkObject</link>
         +----<link linkend="GtkWidget">GtkWidget</link>
               +----<link linkend="GtkContainer">GtkContainer</link>
                     +----<link linkend="GtkBin">GtkBin</link>
                           +----ThunarxPropertyPage
</synopsis>

</refsect1>



<refsect1>
<title>Implemented Interfaces</title>
<para>
ThunarxPropertyPage implements
 <link linkend="AtkImplementorIface">AtkImplementorIface</link>.</para>

</refsect1>


<refsect1>
<title>Properties</title>
<synopsis>

  &quot;<link linkend="ThunarxPropertyPage--label">label</link>&quot;                <link linkend="gchararray">gchararray</link>            : Read / Write
  &quot;<link linkend="ThunarxPropertyPage--label-widget">label-widget</link>&quot;         <link linkend="GtkWidget">GtkWidget</link>             : Read / Write
</synopsis>
</refsect1>



<refsect1>
<title>Description</title>
<para>
  The class for pages that can be added to Thunar's file properties dialog
  by extensions implementing the <link linkend="ThunarxPropertyPageProvider"><type>ThunarxPropertyPageProvider</type></link> interface.
</para>
</refsect1>

<refsect1>
<title>Details</title>
<refsect2>
<title><anchor id="ThunarxPropertyPage-struct"/>ThunarxPropertyPage</title>
<indexterm><primary>ThunarxPropertyPage</primary></indexterm><programlisting>typedef struct _ThunarxPropertyPage ThunarxPropertyPage;</programlisting>
<para>
  Base instance type for property pages.
</para></refsect2>
<refsect2>
<title><anchor id="thunarx-property-page-new"/>thunarx_property_page_new ()</title>
<indexterm><primary>thunarx_property_page_new</primary></indexterm><programlisting><link linkend="GtkWidget">GtkWidget</link>*  thunarx_property_page_new       (const <link linkend="gchar">gchar</link> *label);</programlisting>
<para>
Allocates a new <link linkend="ThunarxPropertyPage"><type>ThunarxPropertyPage</type></link> widget and sets its label to the
specified <parameter>label</parameter>. If <parameter>label</parameter> is <literal>NULL</literal>, the label is omitted.</para>
<para>

</para><variablelist role="params">
<varlistentry><term><parameter>label</parameter>&nbsp;:</term>
<listitem><simpara> the text to use as the label of the page.
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> the newly allocated <link linkend="ThunarxPropertyPage"><type>ThunarxPropertyPage</type></link>
              widget.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2>
<title><anchor id="thunarx-property-page-new-with-label-widget"/>thunarx_property_page_new_with_label_widget ()</title>
<indexterm><primary>thunarx_property_page_new_with_label_widget</primary></indexterm><programlisting><link linkend="GtkWidget">GtkWidget</link>*  thunarx_property_page_new_with_label_widget
                                            (<link linkend="GtkWidget">GtkWidget</link> *label_widget);</programlisting>
<para>
Allocates a new <link linkend="ThunarxPropertyPage"><type>ThunarxPropertyPage</type></link> widget and sets its label to
the specified <parameter>label_widget</parameter>.</para>
<para>

</para><variablelist role="params">
<varlistentry><term><parameter>label_widget</parameter>&nbsp;:</term>
<listitem><simpara> a <link linkend="GtkWidget"><type>GtkWidget</type></link>, which should be used as label.
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> the newly allocated <link linkend="ThunarxPropertyPage"><type>ThunarxPropertyPage</type></link> widget.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2>
<title><anchor id="thunarx-property-page-get-label"/>thunarx_property_page_get_label ()</title>
<indexterm><primary>thunarx_property_page_get_label</primary></indexterm><programlisting>const <link linkend="gchar">gchar</link>* thunarx_property_page_get_label
                                            (<link linkend="ThunarxPropertyPage">ThunarxPropertyPage</link> *property_page);</programlisting>
<para>
If the <parameter>property_page</parameter>'s label widget is a <link linkend="GtkLabel"><type>GtkLabel</type></link>, returns the text
in the label widget (the <parameter>property_page</parameter> will have a <link linkend="GtkLabel"><type>GtkLabel</type></link> for the
label widget if a non-<literal>NULL</literal> argument was passed to <link linkend="thunarx-property-page-new"><function>thunarx_property_page_new()</function></link>).</para>
<para>

</para><variablelist role="params">
<varlistentry><term><parameter>property_page</parameter>&nbsp;:</term>
<listitem><simpara> a <link linkend="ThunarxPropertyPage"><type>ThunarxPropertyPage</type></link>.
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> the text in the label or <literal>NULL</literal> if there was no label widget or
              the label widget was not a <link linkend="GtkLabel"><type>GtkLabel</type></link>. The returned string is
              owned by the <parameter>property_page</parameter> and must not be modified or freed.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2>
<title><anchor id="thunarx-property-page-set-label"/>thunarx_property_page_set_label ()</title>
<indexterm><primary>thunarx_property_page_set_label</primary></indexterm><programlisting><link linkend="void">void</link>        thunarx_property_page_set_label (<link linkend="ThunarxPropertyPage">ThunarxPropertyPage</link> *property_page,
                                             const <link linkend="gchar">gchar</link> *label);</programlisting>
<para>
Sets the text of the label. If <parameter>label</parameter> is <literal>NULL</literal>, the current label is
removed.</para>
<para>

</para><variablelist role="params">
<varlistentry><term><parameter>property_page</parameter>&nbsp;:</term>
<listitem><simpara> a <link linkend="ThunarxPropertyPage"><type>ThunarxPropertyPage</type></link>.
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>label</parameter>&nbsp;:</term>
<listitem><simpara> the text to use as the label of the page.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2>
<title><anchor id="thunarx-property-page-get-label-widget"/>thunarx_property_page_get_label_widget ()</title>
<indexterm><primary>thunarx_property_page_get_label_widget</primary></indexterm><programlisting><link linkend="GtkWidget">GtkWidget</link>*  thunarx_property_page_get_label_widget
                                            (<link linkend="ThunarxPropertyPage">ThunarxPropertyPage</link> *property_page);</programlisting>
<para>
Returns the label widget for the <parameter>property_page</parameter>. See
<link linkend="thunarx-property-page-set-label-widget"><function>thunarx_property_page_set_label_widget()</function></link>.</para>
<para>

</para><variablelist role="params">
<varlistentry><term><parameter>property_page</parameter>&nbsp;:</term>
<listitem><simpara> a <link linkend="ThunarxPropertyPage"><type>ThunarxPropertyPage</type></link>.
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> the label widget or <literal>NULL</literal> if there is none.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2>
<title><anchor id="thunarx-property-page-set-label-widget"/>thunarx_property_page_set_label_widget ()</title>
<indexterm><primary>thunarx_property_page_set_label_widget</primary></indexterm><programlisting><link linkend="void">void</link>        thunarx_property_page_set_label_widget
                                            (<link linkend="ThunarxPropertyPage">ThunarxPropertyPage</link> *property_page,
                                             <link linkend="GtkWidget">GtkWidget</link> *label_widget);</programlisting>
<para>
Sets the label widget for the <parameter>property_page</parameter>. This is the widget
that will appear in the notebook header for the <parameter>property_page</parameter>.</para>
<para>

</para><variablelist role="params">
<varlistentry><term><parameter>property_page</parameter>&nbsp;:</term>
<listitem><simpara> a <link linkend="ThunarxPropertyPage"><type>ThunarxPropertyPage</type></link>.
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>label_widget</parameter>&nbsp;:</term>
<listitem><simpara> the new label widget.
</simpara></listitem></varlistentry>
</variablelist></refsect2>

</refsect1>
<refsect1>
<title>Properties</title>
<refsect2><title><anchor id="ThunarxPropertyPage--label"/>The &quot;<literal>label</literal>&quot; property</title>
<programlisting>  &quot;label&quot;                <link linkend="gchararray">gchararray</link>            : Read / Write</programlisting>
<para>Text of the page's label.</para><para>Default value: NULL</para>
</refsect2>
<refsect2><title><anchor id="ThunarxPropertyPage--label-widget"/>The &quot;<literal>label-widget</literal>&quot; property</title>
<programlisting>  &quot;label-widget&quot;         <link linkend="GtkWidget">GtkWidget</link>             : Read / Write</programlisting>
<para>A widget to display in place of the usual page label.</para></refsect2>

</refsect1>



<refsect1>
<title>See Also</title>
<para>
  The description of the <link linkend="ThunarxPropertyPageProvider"><type>ThunarxPropertyPageProvider</type></link> interface.
</para>
</refsect1>

</refentry>
