Struct gtk4::builders::PrintOperationBuilder

source ·
pub struct PrintOperationBuilder { /* private fields */ }
Expand description

A builder-pattern type to construct PrintOperation objects.

Implementations§

source§

impl PrintOperationBuilder

source

pub fn allow_async(self, allow_async: bool) -> Self

Determines whether the print operation may run asynchronously or not.

Some systems don’t support asynchronous printing, but those that do will return PrintOperationResult::InProgress as the status, and emit the done signal when the operation is actually done.

The Windows port does not support asynchronous operation at all (this is unlikely to change). On other platforms, all actions except for PrintOperationAction::Export support asynchronous operation.

source

pub fn current_page(self, current_page: i32) -> Self

The current page in the document.

If this is set before PrintOperationExt::run(), the user will be able to select to print only the current page.

Note that this only makes sense for pre-paginated documents.

source

pub fn custom_tab_label(self, custom_tab_label: impl Into<GString>) -> Self

Used as the label of the tab containing custom widgets.

Note that this property may be ignored on some platforms.

If this is None, GTK uses a default label.

source

pub fn default_page_setup(self, default_page_setup: &PageSetup) -> Self

The PageSetup used by default.

This page setup will be used by PrintOperationExt::run(), but it can be overridden on a per-page basis by connecting to the request-page-setup signal.

source

pub fn embed_page_setup(self, embed_page_setup: bool) -> Self

If true, page size combo box and orientation combo box are embedded into page setup page.

source

pub fn export_filename(self, export_filename: impl Into<GString>) -> Self

The name of a file to generate instead of showing the print dialog.

Currently, PDF is the only supported format.

The intended use of this property is for implementing “Export to PDF” actions.

“Print to PDF” support is independent of this and is done by letting the user pick the “Print to PDF” item from the list of printers in the print dialog.

source

pub fn has_selection(self, has_selection: bool) -> Self

Determines whether there is a selection in your application.

This can allow your application to print the selection. This is typically used to make a “Selection” button sensitive.

source

pub fn job_name(self, job_name: impl Into<GString>) -> Self

A string used to identify the job (e.g. in monitoring applications like eggcups).

If you don’t set a job name, GTK picks a default one by numbering successive print jobs.

source

pub fn n_pages(self, n_pages: i32) -> Self

The number of pages in the document.

This must be set to a positive number before the rendering starts. It may be set in a begin-print signal handler.

Note that the page numbers passed to the request-page-setup and draw-page signals are 0-based, i.e. if the user chooses to print all pages, the last ::draw-page signal will be for page @n_pages - 1.

source

pub fn print_settings(self, print_settings: &PrintSettings) -> Self

The PrintSettings used for initializing the dialog.

Setting this property is typically used to re-establish print settings from a previous print operation, see PrintOperationExt::run().

source

pub fn show_progress(self, show_progress: bool) -> Self

Determines whether to show a progress dialog during the print operation.

source

pub fn support_selection(self, support_selection: bool) -> Self

If true, the print operation will support print of selection.

This allows the print dialog to show a “Selection” button.

source

pub fn track_print_status(self, track_print_status: bool) -> Self

If true, the print operation will try to continue report on the status of the print job in the printer queues and printer.

This can allow your application to show things like “out of paper” issues, and when the print job actually reaches the printer. However, this is often implemented using polling, and should not be enabled unless needed.

source

pub fn unit(self, unit: Unit) -> Self

The transformation for the cairo context obtained from PrintContext is set up in such a way that distances are measured in units of @unit.

source

pub fn use_full_page(self, use_full_page: bool) -> Self

If true, the transformation for the cairo context obtained from PrintContext puts the origin at the top left corner of the page.

This may not be the top left corner of the sheet, depending on page orientation and the number of pages per sheet. Otherwise, the origin is at the top left corner of the imageable area (i.e. inside the margins).

source

pub fn build(self) -> PrintOperation

Build the PrintOperation.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.