Class: Gtk::PrintUnixDialog
Overview
GtkPrintUnixDialog 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 GTK dialog, at the cost of the portability offered by the high-level printing API with [classGtk.PrintOperation].
In order to print something with GtkPrintUnixDialog, you need to
use [methodGtk.PrintUnixDialog.get_selected_printer] to obtain a
[classGtk.Printer] object and use it to construct a [classGtk.PrintJob]
using [ctorGtk.PrintJob.new].
GtkPrintUnixDialog uses the following response values:
- %GTK_RESPONSE_OK: for the “Print” button
- %GTK_RESPONSE_APPLY: for the “Preview” button
- %GTK_RESPONSE_CANCEL: for the “Cancel” button
GtkPrintUnixDialog as GtkBuildable
The GtkPrintUnixDialog implementation of the GtkBuildable interface
exposes its notebook internal children with the name “notebook”.
An example of a GtkPrintUnixDialog UI definition fragment:
<object class="GtkPrintUnixDialog" id="dialog1">
<child internal-child="notebook">
<object class="GtkNotebook" id="notebook">
<child>
<object type="GtkNotebookPage">
<property name="tab_expand">False</property>
<property name="tab_fill">False</property>
<property name="tab">
<object class="GtkLabel" id="tablabel">
<property name="label">Tab label</property>
</object>
</property>
<property name="child">
<object class="GtkLabel" id="tabcontent">
<property name="label">Content on notebook tab</property>
</object>
</property>
</object>
</child>
</object>
</child>
</object>
CSS nodes
GtkPrintUnixDialog has a single CSS node with name window. The style classes
dialog and print are added.
Instance Method Summary collapse
-
#add_custom_tab(child, tab_label) ⇒ nil
Adds a custom tab to the print dialog.
-
#current_page ⇒ Integer
The current page in the document.
-
#current_page=(current_page) ⇒ Integer
The current page in the document.
-
#embed_page_setup ⇒ Boolean
Gets whether to embed the page setup.
-
#embed_page_setup=(embed_page_setup) ⇒ Boolean
true if the page setup controls are embedded.
-
#embed_page_setup? ⇒ Boolean
true if the page setup controls are embedded.
-
#has_selection ⇒ Boolean
Gets whether there is a selection.
-
#has_selection=(has_selection) ⇒ Boolean
Whether the application has a selection.
-
#has_selection? ⇒ Boolean
Whether the application has a selection.
-
#initialize(title, parent) ⇒ Gtk::Widget
constructor
Creates a new
GtkPrintUnixDialog. -
#manual_capabilities ⇒ Gtk::PrintCapabilities
Capabilities the application can handle.
-
#manual_capabilities=(manual_capabilities) ⇒ Gtk::PrintCapabilities
Capabilities the application can handle.
-
#page_setup ⇒ Gtk::PageSetup
The
GtkPageSetupobject to use. -
#page_setup=(page_setup) ⇒ Gtk::PageSetup
The
GtkPageSetupobject to use. -
#page_setup_set ⇒ Boolean
Gets whether a page setup was set by the user.
-
#print_settings ⇒ Gtk::PrintSettings
The
GtkPrintSettingsobject used for this dialog. -
#print_settings=(print_settings) ⇒ Gtk::PrintSettings
The
GtkPrintSettingsobject used for this dialog. -
#selected_printer ⇒ Gtk::Printer
The
GtkPrinterwhich is selected. -
#selected_printer=(selected_printer) ⇒ Gtk::Printer
The
GtkPrinterwhich is selected. -
#settings ⇒ Gtk::PrintSettings
Gets a new
GtkPrintSettingsobject that represents the current values in the print dialog. -
#settings=(settings) ⇒ nil
Sets the
GtkPrintSettingsfor theGtkPrintUnixDialog. -
#support_selection ⇒ Boolean
Gets whether the print dialog allows user to print a selection.
-
#support_selection=(support_selection) ⇒ Boolean
Whether the dialog supports selection.
-
#support_selection? ⇒ Boolean
Whether the dialog supports selection.
Methods inherited from Dialog
#add_action_widget, #add_button, #add_buttons, #content_area, #default_response=, #get_response_for_widget, #get_widget_for_response, #header_bar, #response, #set_response_sensitive, #use_header_bar, #use_header_bar=
Methods inherited from Window
#application, #application=, auto_startup_notification=, #child, #child=, #close, #decorated, #decorated=, #decorated?, #default_height, #default_height=, default_icon_name, default_icon_name=, #default_widget, #default_widget=, #default_width, #default_width=, #deletable, #deletable=, #deletable?, #destroy, #destroy_with_parent, #destroy_with_parent=, #destroy_with_parent?, #display, #display=, #focus, #focus=, #focus_visible, #focus_visible=, #focus_visible?, #focus_widget, #focus_widget=, #fullscreen, #fullscreen_on_monitor, #fullscreened=, #fullscreened?, #get_default_size, #group, #handle_menubar_accel, #handle_menubar_accel=, #handle_menubar_accel?, #has_group, #hide_on_close, #hide_on_close=, #hide_on_close?, #icon_name, #icon_name=, interactive_debugging=, #is_active, #is_active=, #is_active?, #is_fullscreen, #is_maximized, #is_suspended, list_toplevels, #maximize, #maximized=, #maximized?, #minimize, #mnemonics_visible, #mnemonics_visible=, #mnemonics_visible?, #modal, #modal=, #modal?, #present, #present_with_time, #resizable, #resizable=, #resizable?, #set_default_size, #startup_id=, #suspended=, #suspended?, #title, #title=, #titlebar, #titlebar=, toplevels, #transient_for, #transient_for=, #unfullscreen, #unmaximize, #unminimize
Methods inherited from Widget
#accessible_role, #accessible_role=, #action_set_enabled, #activate, #activate_action, #activate_action_variant, #activate_default, #activate_signal, #activate_signal=, #activate_signal_from_name=, #add_binding, #add_binding_action, #add_binding_signal, #add_controller, #add_css_class, #add_mnemonic_label, #add_shortcut, #add_tick_callback, #allocate, #allocated_baseline, #allocated_height, #allocated_width, #baseline, #bind_template_callback_full, #bind_template_child_full, #can_focus, #can_focus=, #can_focus?, #can_target, #can_target=, #can_target?, #child_focus, #child_visible, #child_visible=, #clipboard, #compute_bounds, #compute_expand, #compute_point, #compute_transform, #contains, #create_pango_context, #create_pango_layout, #css_classes, #css_classes=, #css_name, #css_name=, #cursor, #cursor=, #cursor_from_name=, default_direction, default_direction=, #direction, #direction=, #display, #dispose_template, #drag_check_threshold, #error_bell, #first_child, #focus_child, #focus_child=, #focus_on_click, #focus_on_click=, #focus_on_click?, #focusable, #focusable=, #focusable?, #font_map, #font_map=, #font_options, #font_options=, #frame_clock, #get_allocation, #get_ancestor, #get_color, #get_preferred_size, #get_size, #get_size_request, #get_template_child, #grab_focus, #halign, #halign=, #has_css_class, #has_default, #has_default=, #has_default?, #has_focus, #has_focus=, #has_focus?, #has_tooltip, #has_tooltip=, #has_tooltip?, #has_visible_focus, #height, #height_request, #height_request=, #hexpand, #hexpand=, #hexpand?, #hexpand_set, #hexpand_set=, #hexpand_set?, #hide, #in_destruction, #init_template, #insert_action_group, #insert_after, #insert_before, #install_action, #install_property_action, #is_ancestor, #is_drawable, #is_focus, #is_sensitive, #is_visible, #keynav_failed, #last_child, #layout_manager, #layout_manager=, #layout_manager_type, #layout_manager_type=, #list_mnemonic_labels, #map, #mapped, #margin_bottom, #margin_bottom=, #margin_end, #margin_end=, #margin_start, #margin_start=, #margin_top, #margin_top=, #measure, #mnemonic_activate, #name, #name=, #native, #next_sibling, #observe_children, #observe_controllers, #opacity, #opacity=, #overflow, #overflow=, #pango_context, #parent, #parent=, #pick, #prev_sibling, #primary_clipboard, #query_action, #queue_allocate, #queue_draw, #queue_resize, #realize, #realized, #receives_default, #receives_default=, #receives_default?, #remove_controller, #remove_css_class, #remove_mnemonic_label, #remove_tick_callback, #request_mode, #root, #root=, #scale_factor, #scale_factor=, #sensitive, #sensitive=, #sensitive?, #set_size_request, #set_state_flags, #should_layout, #show, #size_allocate, #snapshot_child, #state_flags, #style_context, #template=, #template_from_resource=, #template_scope=, #tooltip_markup, #tooltip_markup=, #tooltip_text, #tooltip_text=, #translate_coordinates, #trigger_tooltip_query, #unmap, #unparent, #unrealize, #unset_state_flags, #valign, #valign=, #vexpand, #vexpand=, #vexpand?, #vexpand_set, #vexpand_set=, #vexpand_set?, #visible, #visible=, #visible?, #width, #width_request, #width_request=
Constructor Details
#initialize(title, parent) ⇒ Gtk::Widget
Creates a new GtkPrintUnixDialog.
Instance Method Details
#add_custom_tab(child, tab_label) ⇒ nil
Adds a custom tab to the print dialog.
#current_page ⇒ Integer
The current page in the document.
#current_page=(current_page) ⇒ Integer
The current page in the document.
#embed_page_setup ⇒ Boolean
Gets whether to embed the page setup.
#embed_page_setup=(embed_page_setup) ⇒ Boolean
true if the page setup controls are embedded.
#embed_page_setup? ⇒ Boolean
true if the page setup controls are embedded.
#has_selection ⇒ Boolean
Gets whether there is a selection.
#has_selection=(has_selection) ⇒ Boolean
Whether the application has a selection.
#has_selection? ⇒ Boolean
Whether the application has a selection.
#manual_capabilities ⇒ Gtk::PrintCapabilities
Capabilities the application can handle.
#manual_capabilities=(manual_capabilities) ⇒ Gtk::PrintCapabilities
Capabilities the application can handle.
#page_setup ⇒ Gtk::PageSetup
The GtkPageSetup object to use.
#page_setup=(page_setup) ⇒ Gtk::PageSetup
The GtkPageSetup object to use.
#page_setup_set ⇒ Boolean
Gets whether a page setup was set by the user.
#print_settings ⇒ Gtk::PrintSettings
The GtkPrintSettings object used for this dialog.
#print_settings=(print_settings) ⇒ Gtk::PrintSettings
The GtkPrintSettings object used for this dialog.
#selected_printer ⇒ Gtk::Printer
The GtkPrinter which is selected.
#selected_printer=(selected_printer) ⇒ Gtk::Printer
The GtkPrinter which is selected.
#settings ⇒ Gtk::PrintSettings
Gets a new GtkPrintSettings 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.
#settings=(settings) ⇒ nil
Sets the GtkPrintSettings for the GtkPrintUnixDialog.
Typically, this is used to restore saved print settings from a previous print operation before the print dialog is shown.
#support_selection ⇒ Boolean
Gets whether the print dialog allows user to print a selection.
#support_selection=(support_selection) ⇒ Boolean
Whether the dialog supports selection.
#support_selection? ⇒ Boolean
Whether the dialog supports selection.