GtkPrinter

GtkPrinter — Represents a printer

Synopsis


#include <gtk/gtk.h>


            GtkPrinter;
            GtkPrintBackend;
GtkPrinter* gtk_printer_new                 (const gchar *name,
                                             GtkPrintBackend *backend,
                                             gboolean virtual_);
GtkPrintBackend* gtk_printer_get_backend    (GtkPrinter *printer);
const gchar* gtk_printer_get_name           (GtkPrinter *printer);
const gchar* gtk_printer_get_state_message  (GtkPrinter *printer);
const gchar* gtk_printer_get_description    (GtkPrinter *printer);
const gchar* gtk_printer_get_location       (GtkPrinter *printer);
const gchar* gtk_printer_get_icon_name      (GtkPrinter *printer);
gint        gtk_printer_get_job_count       (GtkPrinter *printer);
gboolean    gtk_printer_is_active           (GtkPrinter *printer);
gboolean    gtk_printer_is_virtual          (GtkPrinter *printer);
gboolean    gtk_printer_is_default          (GtkPrinter *printer);
gboolean    gtk_printer_accepts_ps          (GtkPrinter *printer);
gboolean    gtk_printer_accepts_pdf         (GtkPrinter *printer);
gint        gtk_printer_compare             (GtkPrinter *a,
                                             GtkPrinter *b);
gboolean    (*GtkPrinterFunc)               (GtkPrinter *printer,
                                             gpointer data);
void        gtk_enumerate_printers          (GtkPrinterFunc func,
                                             gpointer data,
                                             GDestroyNotify destroy,
                                             gboolean wait);


Object Hierarchy


  GObject
   +----GtkPrinter

  GObject
   +----GtkPrintBackend

Properties


  "accepts-pdf"          gboolean              : Read / Write / Construct Only
  "accepts-ps"           gboolean              : Read / Write / Construct Only
  "backend"              GtkPrintBackend       : Read / Write / Construct Only
  "icon-name"            gchararray            : Read
  "is-virtual"           gboolean              : Read / Write / Construct Only
  "job-count"            gint                  : Read
  "location"             gchararray            : Read
  "name"                 gchararray            : Read / Write / Construct Only
  "state-message"        gchararray            : Read

Signals


"details-acquired"
            void        user_function      (GtkPrinter *printer,
                                            gboolean    success,
                                            gpointer    user_data)      : Run last

Description

A GtkPrinter object represents a printer. You only need to deal directly with printers if you use the non-portable GtkPrintUnixDialog API.

A GtkPrinter allows to get status information about the printer, such as its description, its location, the number of queued jobs, etc. Most importantly, a GtkPrinter object can be used to create a GtkPrintJob object, which lets you print to the printer.

Printing support was added in GTK+ 2.10.

Details

GtkPrinter

typedef struct _GtkPrinter GtkPrinter;


GtkPrintBackend

typedef struct _GtkPrintBackend GtkPrintBackend;


gtk_printer_new ()

GtkPrinter* gtk_printer_new                 (const gchar *name,
                                             GtkPrintBackend *backend,
                                             gboolean virtual_);

Creates a new GtkPrinter.

name : the name of the printer
backend : a GtkPrintBackend
virtual_ : whether the printer is virtual
Returns : a new GtkPrinter

Since 2.10


gtk_printer_get_backend ()

GtkPrintBackend* gtk_printer_get_backend    (GtkPrinter *printer);

Returns the backend of the printer.

printer : a GtkPrinter
Returns : the backend of printer

Since 2.10


gtk_printer_get_name ()

const gchar* gtk_printer_get_name           (GtkPrinter *printer);

Returns the name of the printer.

printer : a GtkPrinter
Returns : the name of printer

Since 2.10


gtk_printer_get_state_message ()

const gchar* gtk_printer_get_state_message  (GtkPrinter *printer);

Returns the state message describing the current state of the printer.

printer : a GtkPrinter
Returns : the state message of printer

Since 2.10


gtk_printer_get_description ()

const gchar* gtk_printer_get_description    (GtkPrinter *printer);

Gets the description of the printer.

printer : a GtkPrinter
Returns : the description of printer

Since 2.10


gtk_printer_get_location ()

const gchar* gtk_printer_get_location       (GtkPrinter *printer);

Returns a description of the location of the printer.

printer : a GtkPrinter
Returns : the location of printer

Since 2.10


gtk_printer_get_icon_name ()

const gchar* gtk_printer_get_icon_name      (GtkPrinter *printer);

Gets the name of the icon to use for the printer.

printer : a GtkPrinter
Returns : the icon name for printer

Since 2.10


gtk_printer_get_job_count ()

gint        gtk_printer_get_job_count       (GtkPrinter *printer);

Gets the number of jobs currently queued on the printer.

printer : a GtkPrinter
Returns : the number of jobs on printer

Since 2.10


gtk_printer_is_active ()

gboolean    gtk_printer_is_active           (GtkPrinter *printer);

Returns whether the printer is currently active (i.e. accepts new jobs).

printer : a GtkPrinter
Returns : TRUE if printer is active

Since 2.10


gtk_printer_is_virtual ()

gboolean    gtk_printer_is_virtual          (GtkPrinter *printer);

Returns whether the printer is virtual (i.e. does not represent actual printer hardware, but something like a CUPS class).

printer : a GtkPrinter
Returns : TRUE if printer is virtual

Since 2.10


gtk_printer_is_default ()

gboolean    gtk_printer_is_default          (GtkPrinter *printer);

Returns whether the printer is the default printer.

printer : a GtkPrinter
Returns : TRUE if printer is the default

Since 2.10


gtk_printer_accepts_ps ()

gboolean    gtk_printer_accepts_ps          (GtkPrinter *printer);

Returns whether the printer accepts input in PostScript format.

printer : a GtkPrinter
Returns : TRUE if printer accepts PostScript

Since 2.10


gtk_printer_accepts_pdf ()

gboolean    gtk_printer_accepts_pdf         (GtkPrinter *printer);

Returns whether the printer accepts input in PDF format.

printer : a GtkPrinter
Returns : TRUE if printer accepts PDF

Since 2.10


gtk_printer_compare ()

gint        gtk_printer_compare             (GtkPrinter *a,
                                             GtkPrinter *b);

Compares two printers.

a : a GtkPrinter
b : another GtkPrinter
Returns : 0 if the printer match, a negative value if a < b, or a positive value if a > b

Since 2.10


GtkPrinterFunc ()

gboolean    (*GtkPrinterFunc)               (GtkPrinter *printer,
                                             gpointer data);

The type of function passed to gtk_enumerate_printers(). Note that you need to ref printer, if you want to keep a reference to it after the function has returned.

printer : a GtkPrinter
data : user data passed to gtk_enumerate_printers()
Returns : TRUE to stop the enumeration, FALSE to continue

gtk_enumerate_printers ()

void        gtk_enumerate_printers          (GtkPrinterFunc func,
                                             gpointer data,
                                             GDestroyNotify destroy,
                                             gboolean wait);

Calls a function for all GtkPrinters. If func returns TRUE, the enumeration is stopped.

func : a function to call for each printer
data : user data to pass to func
destroy : function to call if data is no longer needed
wait : if TRUE, wait in a recursive mainloop until all printers are enumerated; otherwise return early

Since 2.10

Property Details

The "accepts-pdf" property

  "accepts-pdf"          gboolean              : Read / Write / Construct Only

TRUE if this printer can accept PDF.

Default value: TRUE


The "accepts-ps" property

  "accepts-ps"           gboolean              : Read / Write / Construct Only

TRUE if this printer can accept PostScript.

Default value: TRUE


The "backend" property

  "backend"              GtkPrintBackend       : Read / Write / Construct Only

Backend for the printer.


The "icon-name" property

  "icon-name"            gchararray            : Read

The icon name to use for the printer.

Default value: NULL


The "is-virtual" property

  "is-virtual"           gboolean              : Read / Write / Construct Only

FALSE if this represents a real hardware printer.

Default value: FALSE


The "job-count" property

  "job-count"            gint                  : Read

Number of jobs queued in the printer.

Allowed values: >= 0

Default value: 0


The "location" property

  "location"             gchararray            : Read

The location of the printer.

Default value: NULL


The "name" property

  "name"                 gchararray            : Read / Write / Construct Only

Name of the printer.

Default value: NULL


The "state-message" property

  "state-message"        gchararray            : Read

String giving the current state of the printer.

Default value: NULL

Signal Details

The "details-acquired" signal

void        user_function                  (GtkPrinter *printer,
                                            gboolean    success,
                                            gpointer    user_data)      : Run last

Gets emitted in response to a request for detailed information about a printer from the print backend. The success parameter indicates if the information was actually obtained.

printer : the GtkPrinter on which the signal is emitted
success : TRUE if the details were successfully acquired
user_data : user data set when the signal handler was connected.

Since 2.10