|  |  |  | GTK+ 3 Reference Manual |  | 
|---|---|---|---|---|
| Top | Description | Object Hierarchy | Properties | Signals | ||||
#include <gtk/gtk.h> struct 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_paused (GtkPrinter *printer); gboolean gtk_printer_is_accepting_jobs (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); GList * gtk_printer_list_papers (GtkPrinter *printer); gint gtk_printer_compare (GtkPrinter *a,GtkPrinter *b); gboolean gtk_printer_has_details (GtkPrinter *printer); void gtk_printer_request_details (GtkPrinter *printer); GtkPrintCapabilities gtk_printer_get_capabilities (GtkPrinter *printer); GtkPageSetup * gtk_printer_get_default_page_size (GtkPrinter *printer); gboolean gtk_printer_get_hard_margins (GtkPrinter *printer,gdouble *top,gdouble *bottom,gdouble *left,gdouble *right); gboolean (*GtkPrinterFunc) (GtkPrinter *printer,gpointer data); void gtk_enumerate_printers (GtkPrinterFunc func,gpointer data,GDestroyNotify destroy,gboolean wait);
"accepting-jobs" gboolean : Read "accepts-pdf" gboolean : Read / Write / Construct Only "accepts-ps" gboolean : Read / Write / Construct Only "backend" GtkPrintBackend* : Read / Write / Construct Only "icon-name" gchar* : Read "is-virtual" gboolean : Read / Write / Construct Only "job-count" gint : Read "location" gchar* : Read "name" gchar* : Read / Write / Construct Only "paused" gboolean : Read "state-message" gchar* : Read
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.
GtkPrinter * gtk_printer_new (const gchar *name,GtkPrintBackend *backend,gboolean virtual_);
Creates a new GtkPrinter.
| 
 | the name of the printer | 
| 
 | a GtkPrintBackend | 
| 
 | whether the printer is virtual | 
| Returns : | a new GtkPrinter | 
Since 2.10
GtkPrintBackend *   gtk_printer_get_backend             (GtkPrinter *printer);
Returns the backend of the printer.
| 
 | a GtkPrinter | 
| Returns : | the backend of printer. [transfer none] | 
Since 2.10
const gchar *             gtk_printer_get_name          (GtkPrinter *printer);
Returns the name of the printer.
| 
 | a GtkPrinter | 
| Returns : | the name of printer | 
Since 2.10
const gchar *             gtk_printer_get_state_message (GtkPrinter *printer);
Returns the state message describing the current state of the printer.
| 
 | a GtkPrinter | 
| Returns : | the state message of printer | 
Since 2.10
const gchar *             gtk_printer_get_description   (GtkPrinter *printer);
Gets the description of the printer.
| 
 | a GtkPrinter | 
| Returns : | the description of printer | 
Since 2.10
const gchar *             gtk_printer_get_location      (GtkPrinter *printer);
Returns a description of the location of the printer.
| 
 | a GtkPrinter | 
| Returns : | the location of printer | 
Since 2.10
const gchar *             gtk_printer_get_icon_name     (GtkPrinter *printer);
Gets the name of the icon to use for the printer.
| 
 | a GtkPrinter | 
| Returns : | the icon name for printer | 
Since 2.10
gint                gtk_printer_get_job_count           (GtkPrinter *printer);
Gets the number of jobs currently queued on the printer.
| 
 | a GtkPrinter | 
| Returns : | the number of jobs on printer | 
Since 2.10
gboolean            gtk_printer_is_active               (GtkPrinter *printer);
Returns whether the printer is currently active (i.e. accepts new jobs).
| 
 | a GtkPrinter | 
| Returns : | TRUEifprinteris active | 
Since 2.10
gboolean            gtk_printer_is_paused               (GtkPrinter *printer);
Returns whether the printer is currently paused. A paused printer still accepts jobs, but it is not printing them.
| 
 | a GtkPrinter | 
| Returns : | TRUEifprinteris paused | 
Since 2.14
gboolean            gtk_printer_is_accepting_jobs       (GtkPrinter *printer);
Returns whether the printer is accepting jobs
| 
 | a GtkPrinter | 
| Returns : | TRUEifprinteris accepting jobs | 
Since 2.14
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).
| 
 | a GtkPrinter | 
| Returns : | TRUEifprinteris virtual | 
Since 2.10
gboolean            gtk_printer_is_default              (GtkPrinter *printer);
Returns whether the printer is the default printer.
| 
 | a GtkPrinter | 
| Returns : | TRUEifprinteris the default | 
Since 2.10
gboolean            gtk_printer_accepts_ps              (GtkPrinter *printer);
Returns whether the printer accepts input in PostScript format.
| 
 | a GtkPrinter | 
| Returns : | TRUEifprinteraccepts PostScript | 
Since 2.10
gboolean            gtk_printer_accepts_pdf             (GtkPrinter *printer);
Returns whether the printer accepts input in PDF format.
| 
 | a GtkPrinter | 
| Returns : | TRUEifprinteraccepts PDF | 
Since 2.10
GList *             gtk_printer_list_papers             (GtkPrinter *printer);
Lists all the paper sizes printer supports.
This will return and empty list unless the printer's details are 
available, see gtk_printer_has_details() and gtk_printer_request_details().
| 
 | a GtkPrinter | 
| Returns : | a newly allocated list of newly allocated GtkPageSetup s. [element-type GtkPageSetup][transfer full] | 
Since 2.12
gint gtk_printer_compare (GtkPrinter *a,GtkPrinter *b);
Compares two printers.
| 
 | a GtkPrinter | 
| 
 | another GtkPrinter | 
| Returns : | 0 if the printer match, a negative value if a<b,
or a positive value ifa>b | 
Since 2.10
gboolean            gtk_printer_has_details             (GtkPrinter *printer);
Returns whether the printer details are available.
| 
 | a GtkPrinter | 
| Returns : | TRUEifprinterdetails are available | 
Since 2.12
void                gtk_printer_request_details         (GtkPrinter *printer);
Requests the printer details. When the details are available,
the "details-acquired" signal will be emitted on printer.
| 
 | a GtkPrinter | 
Since 2.12
GtkPrintCapabilities  gtk_printer_get_capabilities      (GtkPrinter *printer);
Returns the printer's capabilities.
This is useful when you're using GtkPrintUnixDialog's manual-capabilities setting and need to know which settings the printer can handle and which you must handle yourself.
This will return 0 unless the printer's details are available, see
gtk_printer_has_details() and gtk_printer_request_details().
| 
 | a GtkPrinter | 
| Returns : | the printer's capabilities | 
Since 2.12
GtkPageSetup *      gtk_printer_get_default_page_size   (GtkPrinter *printer);
Returns default page size of printer.
| 
 | a GtkPrinter | 
| Returns : | a newly allocated GtkPageSetup with default page size of the printer. | 
Since 2.14
gboolean gtk_printer_get_hard_margins (GtkPrinter *printer,gdouble *top,gdouble *bottom,gdouble *left,gdouble *right);
Retrieve the hard margins of printer, i.e. the margins that define
the area at the borders of the paper that the printer cannot print to.
Note: This will not succeed unless the printer's details are available,
see gtk_printer_has_details() and gtk_printer_request_details().
| 
 | a GtkPrinter | 
| 
 | a location to store the top margin in. [out] | 
| 
 | a location to store the bottom margin in. [out] | 
| 
 | a location to store the left margin in. [out] | 
| 
 | a location to store the right margin in. [out] | 
| Returns : | TRUEiff the hard margins were retrieved | 
Since 2.20
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.
| 
 | a GtkPrinter | 
| 
 | user data passed to gtk_enumerate_printers(). [closure] | 
| Returns : | TRUEto stop the enumeration,FALSEto continue | 
Since 2.10
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.
| 
 | a function to call for each printer | 
| 
 | user data to pass to func | 
| 
 | function to call if datais no longer needed | 
| 
 | if TRUE, wait in a recursive mainloop until
all printers are enumerated; otherwise return early | 
Since 2.10
"accepting-jobs" property"accepting-jobs" gboolean : Read
This property is TRUE if the printer is accepting jobs.
Default value: TRUE
Since 2.14
"accepts-pdf" property"accepts-pdf" gboolean : Read / Write / Construct Only
TRUE if this printer can accept PDF.
Default value: FALSE
"accepts-ps" property"accepts-ps" gboolean : Read / Write / Construct Only
TRUE if this printer can accept PostScript.
Default value: TRUE
"backend" property"backend" GtkPrintBackend* : Read / Write / Construct Only
Backend for the printer.
"icon-name" property"icon-name" gchar* : Read
The icon name to use for the printer.
Default value: ""
"is-virtual" property"is-virtual" gboolean : Read / Write / Construct Only
FALSE if this represents a real hardware printer.
Default value: FALSE
"job-count" property"job-count" gint : Read
Number of jobs queued in the printer.
Allowed values: >= 0
Default value: 0
"name" property"name" gchar* : Read / Write / Construct Only
Name of the printer.
Default value: ""
"paused" property"paused" gboolean : Read
This property is TRUE if this printer is paused.
A paused printer still accepts jobs, but it does 
not print them.
Default value: FALSE
Since 2.14
"state-message" property"state-message" gchar* : Read
String giving the current state of the printer.
Default value: ""
"details-acquired" signalvoid                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.
| 
 | the GtkPrinter on which the signal is emitted | 
| 
 | TRUEif the details were successfully acquired | 
| 
 | user data set when the signal handler was connected. | 
Since 2.10