<?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="GtkNativeDialog">
<refmeta>
<refentrytitle role="top_of_page" id="GtkNativeDialog.top_of_page">GtkNativeDialog</refentrytitle>
<manvolnum>3</manvolnum>
<refmiscinfo>GTK4 Library</refmiscinfo>
</refmeta>
<refnamediv>
<refname>GtkNativeDialog</refname>
<refpurpose>Integrate with native dialogs</refpurpose>
</refnamediv>

<refsect1 id="GtkNativeDialog.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="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-native-dialog-show">gtk_native_dialog_show</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-native-dialog-hide">gtk_native_dialog_hide</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-native-dialog-destroy">gtk_native_dialog_destroy</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-native-dialog-get-visible">gtk_native_dialog_get_visible</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-native-dialog-set-modal">gtk_native_dialog_set_modal</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-native-dialog-get-modal">gtk_native_dialog_get_modal</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-native-dialog-set-title">gtk_native_dialog_set_title</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type">const <link linkend="char"><returnvalue>char</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-native-dialog-get-title">gtk_native_dialog_get_title</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gtk-native-dialog-set-transient-for">gtk_native_dialog_set_transient_for</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GtkWindow"><returnvalue>GtkWindow</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gtk-native-dialog-get-transient-for">gtk_native_dialog_get_transient_for</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkNativeDialog.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="GtkNativeDialog--modal">modal</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="GtkNativeDialog--title">title</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="GtkWindow"><type>GtkWindow</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkNativeDialog--transient-for">transient-for</link></entry><entry role="property_flags">Read / Write / Construct</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkNativeDialog--visible">visible</link></entry><entry role="property_flags">Read / Write</entry></row>

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

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkNativeDialog.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="define_keyword">#define</entry><entry role="function_name"><link linkend="GTK-TYPE-NATIVE-DIALOG:CAPS">GTK_TYPE_NATIVE_DIALOG</link></entry></row>
<row><entry role="datatype_keyword">struct</entry><entry role="function_name"><link linkend="GtkNativeDialogClass">GtkNativeDialogClass</link></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkNativeDialog.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> GtkNativeDialog
</screen>
</refsect1>

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

<refsect1 id="GtkNativeDialog.description" role="desc">
<title role="desc.title">Description</title>
<para>Native dialogs are platform dialogs that don't use <link linkend="GtkDialog"><type>GtkDialog</type></link> or
<link linkend="GtkWindow"><type>GtkWindow</type></link>. They are used in order to integrate better with a
platform, by looking the same as other native applications and
supporting platform specific features.</para>
<para>The <link linkend="GtkDialog"><type>GtkDialog</type></link> functions cannot be used on such objects, but we
need a similar API in order to drive them. The <link linkend="GtkNativeDialog"><type>GtkNativeDialog</type></link>
object is an API that allows you to do this. It allows you to set
various common properties on the dialog, as well as show and hide
it and get a <link linkend="GtkNativeDialog-response"><type>“response”</type></link> signal when the user finished
with the dialog.</para>

</refsect1>
<refsect1 id="GtkNativeDialog.functions_details" role="details">
<title role="details.title">Functions</title>
<refsect2 id="gtk-native-dialog-show" role="function">
<title>gtk_native_dialog_show&#160;()</title>
<indexterm zone="gtk-native-dialog-show"><primary>gtk_native_dialog_show</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_native_dialog_show (<parameter><link linkend="GtkNativeDialog"><type>GtkNativeDialog</type></link> *self</parameter>);</programlisting>
<para>Shows the dialog on the display, allowing the user to interact with
it. When the user accepts the state of the dialog the dialog will
be automatically hidden and the <link linkend="GtkNativeDialog-response"><type>“response”</type></link> signal
will be emitted.</para>
<para>Multiple calls while the dialog is visible will be ignored.</para>
<refsect3 id="gtk-native-dialog-show.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>self</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNativeDialog"><type>GtkNativeDialog</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-native-dialog-hide" role="function">
<title>gtk_native_dialog_hide&#160;()</title>
<indexterm zone="gtk-native-dialog-hide"><primary>gtk_native_dialog_hide</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_native_dialog_hide (<parameter><link linkend="GtkNativeDialog"><type>GtkNativeDialog</type></link> *self</parameter>);</programlisting>
<para>Hides the dialog if it is visilbe, aborting any interaction. Once this
is called the  <link linkend="GtkNativeDialog-response"><type>“response”</type></link> signal will not be emitted
until after the next call to <link linkend="gtk-native-dialog-show"><function>gtk_native_dialog_show()</function></link>.</para>
<para>If the dialog is not visible this does nothing.</para>
<refsect3 id="gtk-native-dialog-hide.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>self</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNativeDialog"><type>GtkNativeDialog</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-native-dialog-destroy" role="function">
<title>gtk_native_dialog_destroy&#160;()</title>
<indexterm zone="gtk-native-dialog-destroy"><primary>gtk_native_dialog_destroy</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_native_dialog_destroy (<parameter><link linkend="GtkNativeDialog"><type>GtkNativeDialog</type></link> *self</parameter>);</programlisting>
<para>Destroys a dialog.</para>
<para>When a dialog is destroyed, it will break any references it holds
to other objects. If it is visible it will be hidden and any underlying
window system resources will be destroyed.</para>
<para>Note that this does not release any reference to the object (as opposed to
destroying a GtkWindow) because there is no reference from the windowing
system to the <link linkend="GtkNativeDialog"><type>GtkNativeDialog</type></link>.</para>
<refsect3 id="gtk-native-dialog-destroy.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>self</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNativeDialog"><type>GtkNativeDialog</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-native-dialog-get-visible" role="function">
<title>gtk_native_dialog_get_visible&#160;()</title>
<indexterm zone="gtk-native-dialog-get-visible"><primary>gtk_native_dialog_get_visible</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_native_dialog_get_visible (<parameter><link linkend="GtkNativeDialog"><type>GtkNativeDialog</type></link> *self</parameter>);</programlisting>
<para>Determines whether the dialog is visible.</para>
<refsect3 id="gtk-native-dialog-get-visible.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>self</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNativeDialog"><type>GtkNativeDialog</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-native-dialog-get-visible.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if the dialog is visible</para>
</refsect3></refsect2>
<refsect2 id="gtk-native-dialog-set-modal" role="function">
<title>gtk_native_dialog_set_modal&#160;()</title>
<indexterm zone="gtk-native-dialog-set-modal"><primary>gtk_native_dialog_set_modal</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_native_dialog_set_modal (<parameter><link linkend="GtkNativeDialog"><type>GtkNativeDialog</type></link> *self</parameter>,
                             <parameter><link linkend="gboolean"><type>gboolean</type></link> modal</parameter>);</programlisting>
<para>Sets a dialog modal or non-modal. Modal dialogs prevent interaction
with other windows in the same application. To keep modal dialogs
on top of main application windows, use
<link linkend="gtk-native-dialog-set-transient-for"><function>gtk_native_dialog_set_transient_for()</function></link> to make the dialog transient for the
parent; most <link linkend="gtk-X11-arch">window managers</link>
will then disallow lowering the dialog below the parent.</para>
<refsect3 id="gtk-native-dialog-set-modal.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>self</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNativeDialog"><type>GtkNativeDialog</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>modal</para></entry>
<entry role="parameter_description"><para>whether the window is modal</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-native-dialog-get-modal" role="function">
<title>gtk_native_dialog_get_modal&#160;()</title>
<indexterm zone="gtk-native-dialog-get-modal"><primary>gtk_native_dialog_get_modal</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gtk_native_dialog_get_modal (<parameter><link linkend="GtkNativeDialog"><type>GtkNativeDialog</type></link> *self</parameter>);</programlisting>
<para>Returns whether the dialog is modal. See <link linkend="gtk-native-dialog-set-modal"><function>gtk_native_dialog_set_modal()</function></link>.</para>
<refsect3 id="gtk-native-dialog-get-modal.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>self</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNativeDialog"><type>GtkNativeDialog</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-native-dialog-get-modal.returns" role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if the dialog is set to be modal</para>
</refsect3></refsect2>
<refsect2 id="gtk-native-dialog-set-title" role="function">
<title>gtk_native_dialog_set_title&#160;()</title>
<indexterm zone="gtk-native-dialog-set-title"><primary>gtk_native_dialog_set_title</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_native_dialog_set_title (<parameter><link linkend="GtkNativeDialog"><type>GtkNativeDialog</type></link> *self</parameter>,
                             <parameter>const <link linkend="char"><type>char</type></link> *title</parameter>);</programlisting>
<para>Sets the title of the <link linkend="GtkNativeDialog"><type>GtkNativeDialog</type></link>.</para>
<refsect3 id="gtk-native-dialog-set-title.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>self</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNativeDialog"><type>GtkNativeDialog</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>title</para></entry>
<entry role="parameter_description"><para>title of the dialog</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-native-dialog-get-title" role="function">
<title>gtk_native_dialog_get_title&#160;()</title>
<indexterm zone="gtk-native-dialog-get-title"><primary>gtk_native_dialog_get_title</primary></indexterm>
<programlisting language="C">const <link linkend="char"><returnvalue>char</returnvalue></link>&#160;*
gtk_native_dialog_get_title (<parameter><link linkend="GtkNativeDialog"><type>GtkNativeDialog</type></link> *self</parameter>);</programlisting>
<para>Gets the title of the <link linkend="GtkNativeDialog"><type>GtkNativeDialog</type></link>.</para>
<refsect3 id="gtk-native-dialog-get-title.parameters" role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>self</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNativeDialog"><type>GtkNativeDialog</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-native-dialog-get-title.returns" role="returns">
<title>Returns</title>
<para>the title of the dialog, or <link linkend="NULL:CAPS"><literal>NULL</literal></link> if none has
been set explicitly. The returned string is owned by the widget
and must not be modified or freed. </para>
<para><emphasis role="annotation">[<acronym>nullable</acronym>]</emphasis></para>
</refsect3></refsect2>
<refsect2 id="gtk-native-dialog-set-transient-for" role="function">
<title>gtk_native_dialog_set_transient_for&#160;()</title>
<indexterm zone="gtk-native-dialog-set-transient-for"><primary>gtk_native_dialog_set_transient_for</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gtk_native_dialog_set_transient_for (<parameter><link linkend="GtkNativeDialog"><type>GtkNativeDialog</type></link> *self</parameter>,
                                     <parameter><link linkend="GtkWindow"><type>GtkWindow</type></link> *parent</parameter>);</programlisting>
<para>Dialog windows should be set transient for the main application
window they were spawned from. This allows
<link linkend="gtk-X11-arch">window managers</link> to e.g. keep the
dialog on top of the main window, or center the dialog over the
main window.</para>
<para>Passing <link linkend="NULL:CAPS"><literal>NULL</literal></link> for <parameter>parent</parameter>
 unsets the current transient window.</para>
<refsect3 id="gtk-native-dialog-set-transient-for.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>self</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNativeDialog"><type>GtkNativeDialog</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>parent</para></entry>
<entry role="parameter_description"><para>parent window, or <link linkend="NULL:CAPS"><literal>NULL</literal></link>. </para></entry>
<entry role="parameter_annotations"><emphasis role="annotation">[<acronym>allow-none</acronym>]</emphasis></entry></row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>
<refsect2 id="gtk-native-dialog-get-transient-for" role="function">
<title>gtk_native_dialog_get_transient_for&#160;()</title>
<indexterm zone="gtk-native-dialog-get-transient-for"><primary>gtk_native_dialog_get_transient_for</primary></indexterm>
<programlisting language="C"><link linkend="GtkWindow"><returnvalue>GtkWindow</returnvalue></link>&#160;*
gtk_native_dialog_get_transient_for (<parameter><link linkend="GtkNativeDialog"><type>GtkNativeDialog</type></link> *self</parameter>);</programlisting>
<para>Fetches the transient parent for this window. See
<link linkend="gtk-native-dialog-set-transient-for"><function>gtk_native_dialog_set_transient_for()</function></link>.</para>
<refsect3 id="gtk-native-dialog-get-transient-for.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>self</para></entry>
<entry role="parameter_description"><para>a <link linkend="GtkNativeDialog"><type>GtkNativeDialog</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 id="gtk-native-dialog-get-transient-for.returns" role="returns">
<title>Returns</title>
<para>the transient parent for this window,
or <link linkend="NULL:CAPS"><literal>NULL</literal></link> if no transient parent has been set. </para>
<para><emphasis role="annotation">[<acronym>nullable</acronym>][<acronym>transfer none</acronym>]</emphasis></para>
</refsect3></refsect2>

</refsect1>
<refsect1 id="GtkNativeDialog.other_details" role="details">
<title role="details.title">Types and Values</title>
<refsect2 id="GTK-TYPE-NATIVE-DIALOG:CAPS" role="macro">
<title>GTK_TYPE_NATIVE_DIALOG</title>
<indexterm zone="GTK-TYPE-NATIVE-DIALOG:CAPS"><primary>GTK_TYPE_NATIVE_DIALOG</primary></indexterm>
<programlisting language="C">#define GTK_TYPE_NATIVE_DIALOG             (gtk_native_dialog_get_type ())
</programlisting>
</refsect2>
<refsect2 id="GtkNativeDialogClass" role="struct">
<title>struct GtkNativeDialogClass</title>
<indexterm zone="GtkNativeDialogClass"><primary>GtkNativeDialogClass</primary></indexterm>
<programlisting language="C">struct GtkNativeDialogClass {
  GObjectClass parent_class;

  void (* response) (GtkNativeDialog *self, gint response_id);
};
</programlisting>
</refsect2>

</refsect1>
<refsect1 id="GtkNativeDialog.property-details" role="property_details">
<title role="property_details.title">Property Details</title>
<refsect2 id="GtkNativeDialog--modal" role="property"><title>The <literal>“modal”</literal> property</title>
<indexterm zone="GtkNativeDialog--modal"><primary>GtkNativeDialog:modal</primary></indexterm>
<programlisting>  “modal”                    <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether the window should be modal with respect to its transient parent.</para>
<para>Owner: GtkNativeDialog</para>
<para>Flags: Read / Write</para>
<para>Default value: FALSE</para>
</refsect2>
<refsect2 id="GtkNativeDialog--title" role="property"><title>The <literal>“title”</literal> property</title>
<indexterm zone="GtkNativeDialog--title"><primary>GtkNativeDialog:title</primary></indexterm>
<programlisting>  “title”                    <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>The title of the dialog window</para>
<para>Owner: GtkNativeDialog</para>
<para>Flags: Read / Write</para>
<para>Default value: NULL</para>
</refsect2>
<refsect2 id="GtkNativeDialog--transient-for" role="property"><title>The <literal>“transient-for”</literal> property</title>
<indexterm zone="GtkNativeDialog--transient-for"><primary>GtkNativeDialog:transient-for</primary></indexterm>
<programlisting>  “transient-for”            <link linkend="GtkWindow"><type>GtkWindow</type></link>&#160;*</programlisting>
<para>The transient parent of the dialog, or <link linkend="NULL:CAPS"><literal>NULL</literal></link> for none.</para>
<para>Owner: GtkNativeDialog</para>
<para>Flags: Read / Write / Construct</para>
</refsect2>
<refsect2 id="GtkNativeDialog--visible" role="property"><title>The <literal>“visible”</literal> property</title>
<indexterm zone="GtkNativeDialog--visible"><primary>GtkNativeDialog:visible</primary></indexterm>
<programlisting>  “visible”                  <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para>Whether the window is currenlty visible.</para>
<para>Owner: GtkNativeDialog</para>
<para>Flags: Read / Write</para>
<para>Default value: FALSE</para>
</refsect2>

</refsect1>
<refsect1 id="GtkNativeDialog.signal-details" role="signals">
<title role="signals.title">Signal Details</title>
<refsect2 id="GtkNativeDialog-response" role="signal"><title>The <literal>“response”</literal> signal</title>
<indexterm zone="GtkNativeDialog-response"><primary>GtkNativeDialog::response</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
user_function (<link linkend="GtkNativeDialog"><type>GtkNativeDialog</type></link> *self,
               <link linkend="gint"><type>gint</type></link>             response_id,
               <link linkend="gpointer"><type>gpointer</type></link>         user_data)</programlisting>
<para>Emitted when the user responds to the dialog.</para>
<para>When this is called the dialog has been hidden.</para>
<para>If you call <link linkend="gtk-native-dialog-hide"><function>gtk_native_dialog_hide()</function></link> before the user responds to
the dialog this signal will not be emitted.</para>
<refsect3 id="GtkNativeDialog-response.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>self</para></entry>
<entry role="parameter_description"><para>the object on which the signal is emitted</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>response_id</para></entry>
<entry role="parameter_description"><para>the response ID</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="GtkNativeDialog.see-also">
<title>See Also</title>
<para><link linkend="GtkFileChooserNative"><type>GtkFileChooserNative</type></link>, <link linkend="GtkDialog"><type>GtkDialog</type></link></para>

</refsect1>

</refentry>
