PrintUnixDialog

open class PrintUnixDialog : Dialog, PrintUnixDialogProtocol

GtkPrintUnixDialog implements a print dialog for platforms which don’t provide a native print dialog, like Unix.

An example GtkPrintUnixDialog

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.

The PrintUnixDialog type acts as a reference-counted owner of an underlying GtkPrintUnixDialog instance. It provides the methods that can operate on this data type through PrintUnixDialogProtocol conformance. Use PrintUnixDialog as a strong reference or owner of a GtkPrintUnixDialog instance.

  • Designated initialiser from the underlying `C` data type.
    

    This creates an instance without performing an unbalanced retain i.e., ownership is transferred to the PrintUnixDialog instance.

    Declaration

    Swift

    @inlinable
    public init(_ op: UnsafeMutablePointer<GtkPrintUnixDialog>)

    Parameters

    op

    pointer to the underlying object

  • Designated initialiser from a constant pointer to the underlying C data type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to the PrintUnixDialog instance.

    Declaration

    Swift

    @inlinable
    public init(_ op: UnsafePointer<GtkPrintUnixDialog>)

    Parameters

    op

    pointer to the underlying object

  • Optional initialiser from a non-mutating gpointer to the underlying C data type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to the PrintUnixDialog instance.

    Declaration

    Swift

    @inlinable
    override public init!(gpointer op: gpointer?)

    Parameters

    op

    gpointer to the underlying object

  • Optional initialiser from a non-mutating gconstpointer to the underlying C data type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to the PrintUnixDialog instance.

    Declaration

    Swift

    @inlinable
    override public init!(gconstpointer op: gconstpointer?)

    Parameters

    op

    pointer to the underlying object

  • Optional initialiser from a constant pointer to the underlying C data type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to the PrintUnixDialog instance.

    Declaration

    Swift

    @inlinable
    public init!(_ op: UnsafePointer<GtkPrintUnixDialog>?)

    Parameters

    op

    pointer to the underlying object

  • Optional initialiser from the underlying C data type. This creates an instance without performing an unbalanced retain i.e., ownership is transferred to the PrintUnixDialog instance.

    Declaration

    Swift

    @inlinable
    public init!(_ op: UnsafeMutablePointer<GtkPrintUnixDialog>?)

    Parameters

    op

    pointer to the underlying object

  • Designated initialiser from the underlying C data type. Will retain GtkPrintUnixDialog. i.e., ownership is transferred to the PrintUnixDialog instance.

    Declaration

    Swift

    @inlinable
    public init(retaining op: UnsafeMutablePointer<GtkPrintUnixDialog>)

    Parameters

    op

    pointer to the underlying object

  • Reference intialiser for a related type that implements PrintUnixDialogProtocol Will retain GtkPrintUnixDialog.

    Declaration

    Swift

    @inlinable
    public init<T>(printUnixDialog other: T) where T : PrintUnixDialogProtocol

    Parameters

    other

    an instance of a related type that implements PrintUnixDialogProtocol

  • Unsafe typed initialiser. Do not use unless you know the underlying data type the pointer points to conforms to PrintUnixDialogProtocol.

    Declaration

    Swift

    @inlinable
    override public init<T>(cPointer p: UnsafeMutablePointer<T>)

    Parameters

    cPointer

    pointer to the underlying object

  • Unsafe typed, retaining initialiser. Do not use unless you know the underlying data type the pointer points to conforms to PrintUnixDialogProtocol.

    Declaration

    Swift

    @inlinable
    override public init<T>(retainingCPointer cPointer: UnsafeMutablePointer<T>)

    Parameters

    cPointer

    pointer to the underlying object

  • Unsafe untyped initialiser. Do not use unless you know the underlying data type the pointer points to conforms to PrintUnixDialogProtocol.

    Declaration

    Swift

    @inlinable
    override public init(raw p: UnsafeRawPointer)

    Parameters

    p

    raw pointer to the underlying object

  • Unsafe untyped, retaining initialiser. Do not use unless you know the underlying data type the pointer points to conforms to PrintUnixDialogProtocol.

    Declaration

    Swift

    @inlinable
    override public init(retainingRaw raw: UnsafeRawPointer)
  • Unsafe untyped initialiser. Do not use unless you know the underlying data type the pointer points to conforms to PrintUnixDialogProtocol.

    Declaration

    Swift

    @inlinable
    public required init(raw p: UnsafeMutableRawPointer)

    Parameters

    p

    mutable raw pointer to the underlying object

  • Unsafe untyped, retaining initialiser. Do not use unless you know the underlying data type the pointer points to conforms to PrintUnixDialogProtocol.

    Declaration

    Swift

    @inlinable
    required public init(retainingRaw raw: UnsafeMutableRawPointer)

    Parameters

    raw

    mutable raw pointer to the underlying object

  • Unsafe untyped initialiser. Do not use unless you know the underlying data type the pointer points to conforms to PrintUnixDialogProtocol.

    Declaration

    Swift

    @inlinable
    override public init(opaquePointer p: OpaquePointer)

    Parameters

    p

    opaque pointer to the underlying object

  • Unsafe untyped, retaining initialiser. Do not use unless you know the underlying data type the pointer points to conforms to PrintUnixDialogProtocol.

    Declaration

    Swift

    @inlinable
    override public init(retainingOpaquePointer p: OpaquePointer)

    Parameters

    p

    opaque pointer to the underlying object

  • Creates a new GtkPrintUnixDialog.

    Declaration

    Swift

    @inlinable
    public init<WindowT>(title: UnsafePointer<CChar>? = nil, parent: WindowT?) where WindowT : WindowProtocol