<!-- ##### SECTION Title ##### --> GtkPrintUnixDialog <!-- ##### SECTION Short_Description ##### --> A print dialog <!-- ##### SECTION Long_Description ##### --> <para> GtkPrintUnixDialog implements a print dialog for platforms which don't provide a native print dialog, like Unix. It can be used very much like any other GTK+ dialog, at the cost of the portability offered by the <link linkend="gtk-High-level-Printing-API">high-level printing API</link> </para> <para> In order to print something with #GtkPrintUnixDialog, you need to use gtk_print_unix_dialog_get_selected_printer() to obtain a #GtkPrinter object and use it to construct a #GtkPrintJob using gtk_print_job_new(). </para> <para> #GtkPrintUnixDialog uses the following response values: <variablelist> <varlistentry><term>%GTK_RESPONSE_OK</term> <listitem><para>for the "Print" button</para></listitem> </varlistentry> <varlistentry><term>%GTK_RESPONSE_APPLY</term> <listitem><para>for the "Preview" button</para></listitem> </varlistentry> <varlistentry><term>%GTK_RESPONSE_CANCEL</term> <listitem><para>for the "Cancel" button</para></listitem> </varlistentry> </variablelist> </para> <!-- FIXME example here --> <para> Printing support was added in GTK+ 2.10. </para> <refsect2 id="GtkPrintUnixDialog-BUILDER-UI"><title>GtkPrintUnixDialog as GtkBuildable</title> <para> The GtkPrintUnixDialog implementation of the GtkBuildable interface exposes its @notebook internal children with the name "notebook". </para> <example> <title>A <structname>GtkPrintUnixDialog</structname> UI definition fragment.</title> <programlisting><![CDATA[ <object class="GtkPrintUnixDialog" id="dialog1"> <child internal-child="notebook"> <object class="GtkNotebook" id="notebook"> <child> <object class="GtkLabel" id="tabcontent"> <property name="label">Content on notebook tab</property> </object> </child> <child type="tab"> <object class="GtkLabel" id="tablabel"> <property name="label">Tab label</property> </object> <packing> <property name="tab_expand">False</property> <property name="tab_fill">False</property> </packing> </child> </object> </child> </object> ]]></programlisting> </example> </refsect2> <!-- ##### SECTION See_Also ##### --> <para> #GtkPageSetupUnixDialog, #GtkPrinter, #GtkPrintJob </para> <!-- ##### SECTION Stability_Level ##### --> <!-- ##### SECTION Image ##### --> <!-- ##### STRUCT GtkPrintUnixDialog ##### --> <para> </para> <!-- ##### ARG GtkPrintUnixDialog:current-page ##### --> <para> </para> <!-- ##### ARG GtkPrintUnixDialog:embed-page-setup ##### --> <para> </para> <!-- ##### ARG GtkPrintUnixDialog:has-selection ##### --> <para> </para> <!-- ##### ARG GtkPrintUnixDialog:manual-capabilities ##### --> <para> </para> <!-- ##### ARG GtkPrintUnixDialog:page-setup ##### --> <para> </para> <!-- ##### ARG GtkPrintUnixDialog:print-settings ##### --> <para> </para> <!-- ##### ARG GtkPrintUnixDialog:selected-printer ##### --> <para> </para> <!-- ##### ARG GtkPrintUnixDialog:support-selection ##### --> <para> </para> <!-- ##### FUNCTION gtk_print_unix_dialog_new ##### --> <para> </para> @title: @parent: @Returns: <!-- ##### FUNCTION gtk_print_unix_dialog_set_page_setup ##### --> <para> </para> @dialog: @page_setup: <!-- ##### FUNCTION gtk_print_unix_dialog_get_page_setup ##### --> <para> </para> @dialog: @Returns: <!-- ##### FUNCTION gtk_print_unix_dialog_set_current_page ##### --> <para> </para> @dialog: @current_page: <!-- ##### FUNCTION gtk_print_unix_dialog_get_current_page ##### --> <para> </para> @dialog: @Returns: <!-- ##### FUNCTION gtk_print_unix_dialog_set_settings ##### --> <para> </para> @dialog: @settings: <!-- ##### FUNCTION gtk_print_unix_dialog_get_settings ##### --> <para> </para> @dialog: @Returns: <!-- ##### FUNCTION gtk_print_unix_dialog_get_selected_printer ##### --> <para> </para> @dialog: @Returns: <!-- ##### FUNCTION gtk_print_unix_dialog_add_custom_tab ##### --> <para> </para> @dialog: @child: @tab_label: <!-- ##### FUNCTION gtk_print_unix_dialog_set_support_selection ##### --> <para> </para> @dialog: @support_selection: <!-- ##### FUNCTION gtk_print_unix_dialog_get_support_selection ##### --> <para> </para> @dialog: @Returns: <!-- ##### FUNCTION gtk_print_unix_dialog_set_has_selection ##### --> <para> </para> @dialog: @has_selection: <!-- ##### FUNCTION gtk_print_unix_dialog_get_has_selection ##### --> <para> </para> @dialog: @Returns: <!-- ##### FUNCTION gtk_print_unix_dialog_set_embed_page_setup ##### --> <para> </para> @dialog: @embed: <!-- ##### FUNCTION gtk_print_unix_dialog_get_embed_page_setup ##### --> <para> </para> @dialog: @Returns: <!-- ##### FUNCTION gtk_print_unix_dialog_get_page_setup_set ##### --> <para> </para> @dialog: @Returns: <!-- ##### ENUM GtkPrintCapabilities ##### --> <para> An enum for specifying which features the print dialog should offer. If neither %GTK_PRINT_CAPABILITY_GENERATE_PDF nor %GTK_PRINT_CAPABILITY_GENERATE_PS is specified, GTK+ assumes that all formats are supported. </para> @GTK_PRINT_CAPABILITY_PAGE_SET: Print dialog will offer printing even/odd pages. @GTK_PRINT_CAPABILITY_COPIES: Print dialog will allow to print multiple copies. @GTK_PRINT_CAPABILITY_COLLATE: Print dialog will allow to collate multiple copies. @GTK_PRINT_CAPABILITY_REVERSE: Print dialog will allow to print pages in reverse order. @GTK_PRINT_CAPABILITY_SCALE: Print dialog will allow to scale the output. @GTK_PRINT_CAPABILITY_GENERATE_PDF: The program will send the document to the printer in PDF format @GTK_PRINT_CAPABILITY_GENERATE_PS: The program will send the document to the printer in Postscript format @GTK_PRINT_CAPABILITY_PREVIEW: Print dialog will offer a preview @GTK_PRINT_CAPABILITY_NUMBER_UP: Print dialog will offer printing multiple pages per sheet. Since 2.12 @GTK_PRINT_CAPABILITY_NUMBER_UP_LAYOUT: Print dialog will allow to rearrange pages when printing multiple pages per sheet. Since 2.14 <!-- ##### FUNCTION gtk_print_unix_dialog_set_manual_capabilities ##### --> <para> </para> @dialog: @capabilities: <!-- ##### FUNCTION gtk_print_unix_dialog_get_manual_capabilities ##### --> <para> </para> @dialog: @Returns: