# gnome-print-dialog

## Name

gnome-print-dialog --

## Synopsis

    struct      GnomePrintDialog;
    struct      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
       +----GtkObject
             +----GtkWidget
                   +----GtkContainer
                         +----GtkBin
                               +----GtkWindow
                                     +----GtkDialog
                                           +----GnomePrintDialog

## Implemented Interfaces

GnomePrintDialog implements AtkImplementorIface.

## Properties

      "print-config"         gpointer              : Write / Construct Only

## Description

## Details

### struct GnomePrintDialog

    struct GnomePrintDialog;

### struct GnomePrintDialogClass

    struct GnomePrintDialogClass {

    	GtkDialogClass parent_class;
    };

### 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);

gpd : |
Returns : |

## Properties

### The "print-config" property

      "print-config"         gpointer              : Write / Construct Only

Printing Configuration to be used.