| Top |
| int | current-page | Read / Write |
| gboolean | embed-page-setup | Read / Write |
| gboolean | has-selection | Read / Write |
| CtkPrintCapabilities | manual-capabilities | Read / Write |
| CtkPageSetup * | page-setup | Read / Write |
| CtkPrintSettings * | print-settings | Read / Write |
| CtkPrinter * | selected-printer | Read |
| gboolean | support-selection | Read / Write |
GObject
╰── GInitiallyUnowned
╰── CtkWidget
╰── CtkContainer
╰── CtkBin
╰── CtkWindow
╰── CtkDialog
╰── CtkPrintUnixDialog
CtkPrintUnixDialog 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 CTK+ dialog, at the cost of the portability offered by the high-level printing API
In order to print something with CtkPrintUnixDialog, you need
to use ctk_print_unix_dialog_get_selected_printer() to obtain
a CtkPrinter object and use it to construct a CtkPrintJob using
ctk_print_job_new().
CtkPrintUnixDialog uses the following response values:
CTK_RESPONSE_OK: for the “Print” button
CTK_RESPONSE_APPLY: for the “Preview” button
CTK_RESPONSE_CANCEL: for the “Cancel” button
Printing support was added in CTK+ 2.10.
The CtkPrintUnixDialog implementation of the CtkBuildable interface exposes its
notebook
internal children with the name “notebook”.
An example of a CtkPrintUnixDialog UI definition fragment:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
<object class="CtkPrintUnixDialog" id="dialog1"> <child internal-child="notebook"> <object class="CtkNotebook" id="notebook"> <child> <object class="CtkLabel" id="tabcontent"> <property name="label">Content on notebook tab</property> </object> </child> <child type="tab"> <object class="CtkLabel" id="tablabel"> <property name="label">Tab label</property> </object> <packing> <property name="tab_expand">False</property> <property name="tab_fill">False</property> </packing> </child> </object> </child> </object> |
CtkWidget * ctk_print_unix_dialog_new (const gchar *title,CtkWindow *parent);
Creates a new CtkPrintUnixDialog.
title |
Title of the dialog, or |
[allow-none] |
parent |
Transient parent of the dialog, or |
[allow-none] |
Since: 2.10
void ctk_print_unix_dialog_set_page_setup (CtkPrintUnixDialog *dialog,CtkPageSetup *page_setup);
Sets the page setup of the CtkPrintUnixDialog.
Since: 2.10
CtkPageSetup *
ctk_print_unix_dialog_get_page_setup (CtkPrintUnixDialog *dialog);
Gets the page setup that is used by the CtkPrintUnixDialog.
Since: 2.10
void ctk_print_unix_dialog_set_current_page (CtkPrintUnixDialog *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.
Since: 2.10
gint
ctk_print_unix_dialog_get_current_page
(CtkPrintUnixDialog *dialog);
Gets the current page of the CtkPrintUnixDialog.
Since: 2.10
void ctk_print_unix_dialog_set_settings (CtkPrintUnixDialog *dialog,CtkPrintSettings *settings);
Sets the CtkPrintSettings for the CtkPrintUnixDialog. Typically, this is used to restore saved print settings from a previous print operation before the print dialog is shown.
Since: 2.10
CtkPrintSettings *
ctk_print_unix_dialog_get_settings (CtkPrintUnixDialog *dialog);
Gets a new CtkPrintSettings 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.
Since: 2.10
CtkPrinter *
ctk_print_unix_dialog_get_selected_printer
(CtkPrintUnixDialog *dialog);
Gets the currently selected printer.
Since: 2.10
void ctk_print_unix_dialog_add_custom_tab (CtkPrintUnixDialog *dialog,CtkWidget *child,CtkWidget *tab_label);
Adds a custom tab to the print dialog.
dialog |
||
child |
the widget to put in the custom tab |
|
tab_label |
the widget to use as tab label |
Since: 2.10
void ctk_print_unix_dialog_set_support_selection (CtkPrintUnixDialog *dialog,gboolean support_selection);
Sets whether the print dialog allows user to print a selection.
Since: 2.18
gboolean
ctk_print_unix_dialog_get_support_selection
(CtkPrintUnixDialog *dialog);
Gets the value of “support-selection” property.
Since: 2.18
void ctk_print_unix_dialog_set_has_selection (CtkPrintUnixDialog *dialog,gboolean has_selection);
Sets whether a selection exists.
Since: 2.18
gboolean
ctk_print_unix_dialog_get_has_selection
(CtkPrintUnixDialog *dialog);
Gets the value of “has-selection” property.
Since: 2.18
void ctk_print_unix_dialog_set_embed_page_setup (CtkPrintUnixDialog *dialog,gboolean embed);
Embed page size combo box and orientation combo box into page setup page.
Since: 2.18
gboolean
ctk_print_unix_dialog_get_embed_page_setup
(CtkPrintUnixDialog *dialog);
Gets the value of “embed-page-setup” property.
Since: 2.18
gboolean
ctk_print_unix_dialog_get_page_setup_set
(CtkPrintUnixDialog *dialog);
Gets the page setup that is used by the CtkPrintUnixDialog.
Since: 2.18
void ctk_print_unix_dialog_set_manual_capabilities (CtkPrintUnixDialog *dialog,CtkPrintCapabilities capabilities);
This lets you specify the printing capabilities your application supports. For instance, if you can handle scaling the output then you pass CTK_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.
Since: 2.10
CtkPrintCapabilities
ctk_print_unix_dialog_get_manual_capabilities
(CtkPrintUnixDialog *dialog);
Gets the value of “manual-capabilities” property.
Since: 2.18
An enum for specifying which features the print dialog should offer.
If neither CTK_PRINT_CAPABILITY_GENERATE_PDF nor
CTK_PRINT_CAPABILITY_GENERATE_PS is specified, CTK+ assumes that all
formats are supported.
|
Print dialog will offer printing even/odd pages. |
||
|
Print dialog will allow to print multiple copies. |
||
|
Print dialog will allow to collate multiple copies. |
||
|
Print dialog will allow to print pages in reverse order. |
||
|
Print dialog will allow to scale the output. |
||
|
The program will send the document to the printer in PDF format |
||
|
The program will send the document to the printer in Postscript format |
||
|
Print dialog will offer a preview |
||
|
Print dialog will offer printing multiple pages per sheet. Since 2.12 |
||
|
Print dialog will allow to rearrange pages when printing multiple pages per sheet. Since 2.14 |
“current-page” property “current-page” int
The current page in the document.
Owner: CtkPrintUnixDialog
Flags: Read / Write
Allowed values: >= -1
Default value: -1
“embed-page-setup” property “embed-page-setup” gboolean
TRUE if page setup combos are embedded in CtkPrintUnixDialog.
Owner: CtkPrintUnixDialog
Flags: Read / Write
Default value: FALSE
“has-selection” property “has-selection” gboolean
Whether the application has a selection.
Owner: CtkPrintUnixDialog
Flags: Read / Write
Default value: FALSE
“manual-capabilities” property“manual-capabilities” CtkPrintCapabilities
Capabilities the application can handle.
Owner: CtkPrintUnixDialog
Flags: Read / Write
“page-setup” property“page-setup” CtkPageSetup *
The CtkPageSetup to use.
Owner: CtkPrintUnixDialog
Flags: Read / Write
“print-settings” property“print-settings” CtkPrintSettings *
The CtkPrintSettings used for initializing the dialog.
Owner: CtkPrintUnixDialog
Flags: Read / Write
“selected-printer” property“selected-printer” CtkPrinter *
The CtkPrinter which is selected.
Owner: CtkPrintUnixDialog
Flags: Read