## gnome-print-dialog gnome-print-dialog |

## Synopsis

                        GnomePrintDialog;
                        GnomePrintDialogClass;
    enum                GnomePrintRangeType;
    GtkWidget *         gnome_print_dialog_new              (GnomePrintJob *gpj,
                                                             const guchar *title,
                                                             gint flags);
    void                gnome_print_dialog_construct        (GnomePrintDialog *gpd,
                                                             const guchar *title,
                                                             gint flags);
    void                gnome_print_dialog_construct_range_custom
                                                            (GnomePrintDialog *gpd,
                                                             GtkWidget *custom);
    void                gnome_print_dialog_construct_range_any
                                                            (GnomePrintDialog *gpd,
                                                             gint flags,
                                                             GtkWidget *range_widget,
                                                             const guchar *currentlabel,
                                                             const guchar *rangelabel);
    void                gnome_print_dialog_construct_range_page
                                                            (GnomePrintDialog *gpd,
                                                             gint flags,
                                                             gint start,
                                                             gint end,
                                                             const guchar *currentlabel,
                                                             const guchar *rangelabel);
    GnomePrintRangeType gnome_print_dialog_get_range        (GnomePrintDialog *gpd);
    int                 gnome_print_dialog_get_range_page   (GnomePrintDialog *gpd,
                                                             gint *start,
                                                             gint *end);
    void                gnome_print_dialog_get_copies       (GnomePrintDialog *gpd,
                                                             gint *copies,
                                                             gboolean *collate);
    void                gnome_print_dialog_set_copies       (GnomePrintDialog *gpd,
                                                             gint copies,
                                                             gint collate);
    GnomePrintConfig *  gnome_print_dialog_get_config       (GnomePrintDialog *gpd);

## Object Hierarchy

      GObject
       +----GInitiallyUnowned
             +----GtkObject
                   +----GtkWidget
                         +----GtkContainer
                               +----GtkBin
                                     +----GtkWindow
                                           +----GtkDialog
                                                 +----GnomePrintDialog

## Implemented Interfaces

GnomePrintDialog implements AtkImplementorIface and GtkBuildable.

## Properties

      "content-selector"         GnomePrintContentSelector*  : Read / Write
      "flags"                    gint                  : Read / Write
      "notebook"                 GtkNotebook*          : Read
      "page-selector"            GnomePrintPageSelector*  : Read
      "print-config"             GnomePrintConfig*     : Read / Write
      "printer-selector"         GnomePrinterSelector*  : Read
      "title"                    gchar*                : Read / Write

## Description

## Details

### GnomePrintDialog

    typedef struct _GnomePrintDialog GnomePrintDialog;

### GnomePrintDialogClass

    typedef struct _GnomePrintDialogClass GnomePrintDialogClass;

### enum GnomePrintRangeType

    typedef enum {
    	GNOME_PRINT_RANGETYPE_NONE,
    	GNOME_PRINT_RANGETYPE_CUSTOM,
    	GNOME_PRINT_RANGETYPE_PAGES
    } GnomePrintRangeType;

### gnome_print_dialog_new ()

    GtkWidget *         gnome_print_dialog_new              (GnomePrintJob *gpj,
                                                             const guchar *title,
                                                             gint flags);

Create a new gnome-print-dialog window.

The following options flags are available: GNOME_PRINT_DIALOG_RANGE: A range widget container will be created. A range widget must be created separately, using one of the gnome_print_dialog_construct_* functions. GNOME_PRINT_DIALOG_COPIES: A copies widget will be created.

`gpj` : | GnomePrintJob
`title` : | Title of window.
`flags` : | Options for created widget.
Returns : | A newly created and initialised widget.

### gnome_print_dialog_construct ()

    void                gnome_print_dialog_construct        (GnomePrintDialog *gpd,
                                                             const guchar *title,
                                                             gint flags);

Used for language bindings to post-initialise an object instantiation.

`gpd` : | A created GnomePrintDialog.
`title` : | Title of the window.
`flags` : | Initialisation options, see `gnome_print_dialog_new()`.

### gnome_print_dialog_construct_range_custom ()

    void                gnome_print_dialog_construct_range_custom
                                                            (GnomePrintDialog *gpd,
                                                             GtkWidget *custom);

Install a custom range specification widget.

`gpd` : | A GnomePrintDialog for which a range was requested.
`custom` : | A widget which will be placed in a "Range" frame in the main display.

### gnome_print_dialog_construct_range_any ()

    void                gnome_print_dialog_construct_range_any
                                                            (GnomePrintDialog *gpd,
                                                             gint flags,
                                                             GtkWidget *range_widget,
                                                             const guchar *currentlabel,
                                                             const guchar *rangelabel);

Create a generic range area within the print range dialogue. The flags field contains a mask of which options you wish displayed:

GNOME_PRINT_RANGE_CURRENT: A label `currentlabel` will be displayed. GNOME_PRINT_RANGE_ALL: A label "All" will be displayed. GNOME_PRINT_RANGE_RANGE: A label `rangelabel` will be displayed, next to the range specification widget `range_widget`. GNOME_PRINT_RANGE_SELECTION: A label "Selection" will be displayed.

`gpd` : | An initialise GnomePrintDialog, which can contain a range.
`flags` : | Options flags, which ranges are displayed.
`range_widget` : | Widget to display for the range option.
`currentlabel` : | Label to display next to the 'current page' button.
`rangelabel` : | Label to display next to the 'range' button.

### gnome_print_dialog_construct_range_page ()

    void                gnome_print_dialog_construct_range_page
                                                            (GnomePrintDialog *gpd,
                                                             gint flags,
                                                             gint start,
                                                             gint end,
                                                             const guchar *currentlabel,
                                                             const guchar *rangelabel);

Construct a generic page/sheet range area.

`gpd` : | An initialise GnomePrintDialog, which can contain a range.
`flags` : | Option flags. See `gnome_print_dialog_construct_any()`.
`start` : | First page which may be printed.
`end` : | Last page which may be printed.
`currentlabel` : | Label text for current option.
`rangelabel` : | Label text for range option.

### gnome_print_dialog_get_range ()

    GnomePrintRangeType gnome_print_dialog_get_range        (GnomePrintDialog *gpd);

Return the range option selected by the user. This is a bitmask with only 1 bit set, out of:

GNOME_PRINT_RANGE_CURRENT: The current option selected. GNOME_PRINT_RANGE_ALL: The all option selected. GNOME_PRINT_RANGE_RANGE The range option selected. GNOME_PRINT_RANGE_SELECTION: The selection option selected.

`gpd` : | A GnomePrintDialog with a range display.
Returns : | A bitmask with one option set.

### gnome_print_dialog_get_range_page ()

    int                 gnome_print_dialog_get_range_page   (GnomePrintDialog *gpd,
                                                             gint *start,
                                                             gint *end);

Retrieves the user choice for range type and range, if the user has requested a range of pages to print.

`gpd` : | A GnomePrintDialog with a page range display.
`start` : | Return for the user-specified start page.
`end` : | Return for the user-specified end page.
Returns : | A bitmask with the user-selection set. See `gnome_print_dialog_get_range()`.

### gnome_print_dialog_get_copies ()

    void                gnome_print_dialog_get_copies       (GnomePrintDialog *gpd,
                                                             gint *copies,
                                                             gboolean *collate);

Retrieves the number of copies and collation indicator from the print dialogue. If the print dialogue does not have a copies indicator, then a default of 1 copy is returned.

`gpd` : | A GnomePrintDialog with a copies display.
`copies` : | Return for the number of copies.
`collate` : | Return for collation flag.

### gnome_print_dialog_set_copies ()

    void                gnome_print_dialog_set_copies       (GnomePrintDialog *gpd,
                                                             gint copies,
                                                             gint collate);

Sets the print copies and collation status in the print dialogue.

`gpd` : | A GnomePrintDialog with a copies display.
`copies` : | New number of copies.
`collate` : | New collation status.

### gnome_print_dialog_get_config ()

    GnomePrintConfig *  gnome_print_dialog_get_config       (GnomePrintDialog *gpd);

## Property Details

### The `"content-selector"` property

      "content-selector"         GnomePrintContentSelector*  : Read / Write

Content selector.

### The `"flags"` property

      "flags"                    gint                  : Read / Write

Flags.

Allowed values: >= -2147483647

Default value: 0

### The `"notebook"` property

      "notebook"                 GtkNotebook*          : Read

Notebook.

### The `"page-selector"` property

      "page-selector"            GnomePrintPageSelector*  : Read

Page selector.

### The `"print-config"` property

      "print-config"             GnomePrintConfig*     : Read / Write

Printing Configuration to be used.

### The `"printer-selector"` property

      "printer-selector"         GnomePrinterSelector*  : Read

Printer selector.

### The `"title"` property

      "title"                    gchar*                : Read / Write

Title.

Default value: "Gnome Print Dialog"