|  |  |  | GTK+ Reference Manual |  | 
|---|---|---|---|---|
#include <gtk/gtkprintunixdialog.h>
                    GtkPrintUnixDialog;
GtkWidget*          gtk_print_unix_dialog_new           (const gchar *title,
                                                         GtkWindow *parent);
void                gtk_print_unix_dialog_set_page_setup
                                                        (GtkPrintUnixDialog *dialog,
                                                         GtkPageSetup *page_setup);
GtkPageSetup*       gtk_print_unix_dialog_get_page_setup
                                                        (GtkPrintUnixDialog *dialog);
void                gtk_print_unix_dialog_set_current_page
                                                        (GtkPrintUnixDialog *dialog,
                                                         gint current_page);
gint                gtk_print_unix_dialog_get_current_page
                                                        (GtkPrintUnixDialog *dialog);
void                gtk_print_unix_dialog_set_settings  (GtkPrintUnixDialog *dialog,
                                                         GtkPrintSettings *settings);
GtkPrintSettings*   gtk_print_unix_dialog_get_settings  (GtkPrintUnixDialog *dialog);
GtkPrinter*         gtk_print_unix_dialog_get_selected_printer
                                                        (GtkPrintUnixDialog *dialog);
void                gtk_print_unix_dialog_add_custom_tab
                                                        (GtkPrintUnixDialog *dialog,
                                                         GtkWidget *child,
                                                         GtkWidget *tab_label);
enum                GtkPrintCapabilities;
void                gtk_print_unix_dialog_set_manual_capabilities
                                                        (GtkPrintUnixDialog *dialog,
                                                         GtkPrintCapabilities capabilities);
  GObject
   +----GInitiallyUnowned
         +----GtkObject
               +----GtkWidget
                     +----GtkContainer
                           +----GtkBin
                                 +----GtkWindow
                                       +----GtkDialog
                                             +----GtkPrintUnixDialog
current-page gint : Read / Write page-setup GtkPageSetup : Read / Write print-settings GtkPrintSettings : Read / Write selected-printer GtkPrinter : Read
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 high-level printing API
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().
GtkPrintUnixDialog uses the following response values:
| GTK_RESPONSE_OK | for the "Print" button | 
| GTK_RESPONSE_APPLY | for the "Preview" button | 
| GTK_RESPONSE_CANCEL | for the "Cancel" button | 
Printing support was added in GTK+ 2.10.
GtkWidget* gtk_print_unix_dialog_new (const gchar *title, GtkWindow *parent);
Creates a new GtkPrintUnixDialog.
| title: | Title of the dialog, or NULL | 
| parent: | Transient parent of the dialog, or NULL | 
| Returns : | a new GtkPrintUnixDialog | 
Since 2.10
void                gtk_print_unix_dialog_set_page_setup
                                                        (GtkPrintUnixDialog *dialog,
                                                         GtkPageSetup *page_setup);
Sets the page setup of the GtkPrintUnixDialog.
| dialog: | a GtkPrintUnixDialog | 
| page_setup: | a GtkPageSetup | 
Since 2.10
GtkPageSetup* gtk_print_unix_dialog_get_page_setup (GtkPrintUnixDialog *dialog);
Gets the page setup that is used by the GtkPrintUnixDialog.
| dialog: | a GtkPrintUnixDialog | 
| Returns : | the page setup of dialog. | 
Since 2.10
void                gtk_print_unix_dialog_set_current_page
                                                        (GtkPrintUnixDialog *dialog,
                                                         gint current_page);
Sets the current page number. If current_page is not -1, this enables
the current page choice for the range of pages to print.
| dialog: | a GtkPrintUnixDialog | 
| current_page: | the current page number. | 
Since 2.10
gint                gtk_print_unix_dialog_get_current_page
                                                        (GtkPrintUnixDialog *dialog);
Gets the current page of the GtkPrintDialog.
| dialog: | a GtkPrintUnixDialog | 
| Returns : | the current page of dialog | 
Since 2.10
void gtk_print_unix_dialog_set_settings (GtkPrintUnixDialog *dialog, GtkPrintSettings *settings);
Sets the GtkPrintSettings for the GtkPrintUnixDialog. Typically, this is used to restore saved print settings from a previous print operation before the print dialog is shown.
| dialog: | a GtkPrintUnixDialog | 
| settings: | a GtkPrintSettings, or NULL | 
Since 2.10
GtkPrintSettings* gtk_print_unix_dialog_get_settings (GtkPrintUnixDialog *dialog);
Gets a new GtkPrintSettings object that represents the current values in the print dialog. Note that this creates a new object, and you need to unref it if don't want to keep it.
| dialog: | a GtkPrintUnixDialog | 
| Returns : | a new GtkPrintSettings object with the values from dialog | 
Since 2.10
GtkPrinter* gtk_print_unix_dialog_get_selected_printer (GtkPrintUnixDialog *dialog);
Gets the currently selected printer.
| dialog: | a GtkPrintUnixDialog | 
| Returns : | the currently selected printer | 
Since 2.10
void                gtk_print_unix_dialog_add_custom_tab
                                                        (GtkPrintUnixDialog *dialog,
                                                         GtkWidget *child,
                                                         GtkWidget *tab_label);
Adds a custom tab to the print dialog.
| dialog: | a GtkPrintUnixDialog | 
| child: | the widget to put in the custom tab | 
| tab_label: | the widget to use as tab label | 
Since 2.10
typedef enum
{
  GTK_PRINT_CAPABILITY_PAGE_SET     = 1 << 0,
  GTK_PRINT_CAPABILITY_COPIES       = 1 << 1,
  GTK_PRINT_CAPABILITY_COLLATE      = 1 << 2,
  GTK_PRINT_CAPABILITY_REVERSE      = 1 << 3,
  GTK_PRINT_CAPABILITY_SCALE        = 1 << 4,
  GTK_PRINT_CAPABILITY_GENERATE_PDF = 1 << 5,
  GTK_PRINT_CAPABILITY_GENERATE_PS  = 1 << 6,
  GTK_PRINT_CAPABILITY_PREVIEW      = 1 << 7
} GtkPrintCapabilities;
An enum for specifying which features the print dialog should offer.
I neither GTK_PRINT_CAPABILITY_GENERATE_PDF nor GTK_PRINT_CAPABILITY_GENERATE_PS is
specified, GTK+ assumes that all formats are supported.
void                gtk_print_unix_dialog_set_manual_capabilities
                                                        (GtkPrintUnixDialog *dialog,
                                                         GtkPrintCapabilities capabilities);
This lets you specify the printing capabilities your application supports. For instance, if you can handle scaling the output then you pass GTK_PRINT_CAPABILITY_SCALE. If you don't pass that, then the dialog will only let you select the scale if the printing system automatically handles scaling.
| dialog: | a GtkPrintUnixDialog | 
| capabilities: | the printing capabilities of your application | 
Since 2.10
current-page propertycurrent-page gint : Read / Write
The current page in the document.
Allowed values: >= -1
Default value: -1
print-settings propertyprint-settings GtkPrintSettings : Read / Write
The GtkPrintSettings used for initializing the dialog.