Trait gtk::prelude::PrintOperationExt [−][src]
pub trait PrintOperationExt: 'static {
Show methods
fn cancel(&self);
fn draw_page_finish(&self);
fn default_page_setup(&self) -> Option<PageSetup>;
fn embeds_page_setup(&self) -> bool;
fn error(&self) -> Result<(), Error>;
fn has_selection(&self) -> bool;
fn n_pages_to_print(&self) -> i32;
fn print_settings(&self) -> Option<PrintSettings>;
fn status(&self) -> PrintStatus;
fn status_string(&self) -> Option<GString>;
fn supports_selection(&self) -> bool;
fn is_finished(&self) -> bool;
fn run<P: IsA<Window>>(
&self,
action: PrintOperationAction,
parent: Option<&P>
) -> Result<PrintOperationResult, Error>;
fn set_allow_async(&self, allow_async: bool);
fn set_current_page(&self, current_page: i32);
fn set_custom_tab_label(&self, label: Option<&str>);
fn set_default_page_setup(&self, default_page_setup: Option<&PageSetup>);
fn set_defer_drawing(&self);
fn set_embed_page_setup(&self, embed: bool);
fn set_export_filename<P: AsRef<Path>>(&self, filename: P);
fn set_has_selection(&self, has_selection: bool);
fn set_job_name(&self, job_name: &str);
fn set_n_pages(&self, n_pages: i32);
fn set_print_settings(&self, print_settings: Option<&PrintSettings>);
fn set_show_progress(&self, show_progress: bool);
fn set_support_selection(&self, support_selection: bool);
fn set_track_print_status(&self, track_status: bool);
fn set_unit(&self, unit: Unit);
fn set_use_full_page(&self, full_page: bool);
fn allows_async(&self) -> bool;
fn current_page(&self) -> i32;
fn custom_tab_label(&self) -> Option<GString>;
fn export_filename(&self) -> Option<GString>;
fn job_name(&self) -> Option<GString>;
fn n_pages(&self) -> i32;
fn shows_progress(&self) -> bool;
fn tracks_print_status(&self) -> bool;
fn unit(&self) -> Unit;
fn uses_full_page(&self) -> bool;
fn connect_begin_print<F: Fn(&Self, &PrintContext) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_create_custom_widget<F: Fn(&Self) -> Object + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_custom_widget_apply<F: Fn(&Self, &Widget) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_done<F: Fn(&Self, PrintOperationResult) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_draw_page<F: Fn(&Self, &PrintContext, i32) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_end_print<F: Fn(&Self, &PrintContext) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_paginate<F: Fn(&Self, &PrintContext) -> bool + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_preview<F: Fn(&Self, &PrintOperationPreview, &PrintContext, Option<&Window>) -> bool + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_request_page_setup<F: Fn(&Self, &PrintContext, i32, &PageSetup) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_status_changed<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_update_custom_widget<F: Fn(&Self, &Widget, &PageSetup, &PrintSettings) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_allow_async_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_current_page_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_custom_tab_label_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_default_page_setup_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_embed_page_setup_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_export_filename_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_has_selection_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_job_name_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_n_pages_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_n_pages_to_print_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_print_settings_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_show_progress_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_status_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_status_string_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_support_selection_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_track_print_status_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_unit_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
fn connect_use_full_page_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId;
}Expand description
Required methods
Cancels a running print operation. This function may
be called from a signal::PrintOperation::begin-print,
signal::PrintOperation::paginate or signal::PrintOperation::draw-page
signal handler to stop the currently running print
operation.
fn draw_page_finish(&self)
fn draw_page_finish(&self)Signalize that drawing of particular page is complete.
It is called after completion of page drawing (e.g. drawing in another
thread).
If set_defer_drawing() was called before, then this function
has to be called by application. In another case it is called by the library
itself.
fn default_page_setup(&self) -> Option<PageSetup>
fn default_page_setup(&self) -> Option<PageSetup>fn embeds_page_setup(&self) -> bool
fn embeds_page_setup(&self) -> boolGets the value of property::PrintOperation::embed-page-setup property.
Returns
whether page setup selection combos are embedded
Call this when the result of a print operation is
PrintOperationResult::Error, either as returned by
run(), or in the signal::PrintOperation::done signal
handler. The returned glib::Error will contain more details on what went wrong.
fn has_selection(&self) -> bool
fn has_selection(&self) -> boolGets the value of property::PrintOperation::has-selection property.
Returns
whether there is a selection
fn n_pages_to_print(&self) -> i32
fn n_pages_to_print(&self) -> i32Returns the number of pages that will be printed.
Note that this value is set during print preparation phase
(PrintStatus::Preparing), so this function should never be
called before the data generation phase (PrintStatus::GeneratingData).
You can connect to the signal::PrintOperation::status-changed signal
and call n_pages_to_print() when
print status is PrintStatus::GeneratingData.
This is typically used to track the progress of print operation.
Returns
the number of pages that will be printed
fn print_settings(&self) -> Option<PrintSettings>
fn print_settings(&self) -> Option<PrintSettings>Returns the current print settings.
Note that the return value is None until either
set_print_settings() or
run() have been called.
Returns
the current print settings of self.
fn status(&self) -> PrintStatus
fn status(&self) -> PrintStatusReturns the status of the print operation.
Also see status_string().
Returns
the status of the print operation
fn status_string(&self) -> Option<GString>
fn status_string(&self) -> Option<GString>Returns a string representation of the status of the
print operation. The string is translated and suitable
for displaying the print status e.g. in a Statusbar.
Use status() to obtain a status
value that is suitable for programmatic use.
Returns
a string representation of the status of the print operation
fn supports_selection(&self) -> bool
fn supports_selection(&self) -> boolGets the value of property::PrintOperation::support-selection property.
Returns
whether the application supports print of selection
fn is_finished(&self) -> bool
fn is_finished(&self) -> boolA convenience function to find out if the print operation
is finished, either successfully (PrintStatus::Finished)
or unsuccessfully (PrintStatus::FinishedAborted).
Note: when you enable print status tracking the print operation can be in a non-finished state even after done has been called, as the operation status then tracks the print job status on the printer.
Returns
true, if the print operation is finished.
fn run<P: IsA<Window>>(
&self,
action: PrintOperationAction,
parent: Option<&P>
) -> Result<PrintOperationResult, Error>
fn run<P: IsA<Window>>(
&self,
action: PrintOperationAction,
parent: Option<&P>
) -> Result<PrintOperationResult, Error>Runs the print operation, by first letting the user modify print settings in the print dialog, and then print the document.
Normally that this function does not return until the rendering of all
pages is complete. You can connect to the
signal::PrintOperation::status-changed signal on self to obtain some
information about the progress of the print operation.
Furthermore, it may use a recursive mainloop to show the print dialog.
If you call set_allow_async() or set the
property::PrintOperation::allow-async property the operation will run
asynchronously if this is supported on the platform. The
signal::PrintOperation::done signal will be emitted with the result of the
operation when the it is done (i.e. when the dialog is canceled, or when
the print succeeds or fails).
⚠️ The following code is in C ⚠️
if (settings != NULL)
gtk_print_operation_set_print_settings (print, settings);
if (page_setup != NULL)
gtk_print_operation_set_default_page_setup (print, page_setup);
g_signal_connect (print, "begin-print",
G_CALLBACK (begin_print), &data);
g_signal_connect (print, "draw-page",
G_CALLBACK (draw_page), &data);
res = gtk_print_operation_run (print,
GTK_PRINT_OPERATION_ACTION_PRINT_DIALOG,
parent,
&error);
if (res == GTK_PRINT_OPERATION_RESULT_ERROR)
{
error_dialog = gtk_message_dialog_new (GTK_WINDOW (parent),
GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_MESSAGE_ERROR,
GTK_BUTTONS_CLOSE,
"Error printing file:\n%s",
error->message);
g_signal_connect (error_dialog, "response",
G_CALLBACK (gtk_widget_destroy), NULL);
gtk_widget_show (error_dialog);
g_error_free (error);
}
else if (res == GTK_PRINT_OPERATION_RESULT_APPLY)
{
if (settings != NULL)
g_object_unref (settings);
settings = g_object_ref (gtk_print_operation_get_print_settings (print));
}
Note that run() can only be called once on a
given PrintOperation.
action
the action to start
parent
Transient parent of the dialog
Returns
the result of the print operation. A return value of
PrintOperationResult::Apply indicates that the printing was
completed successfully. In this case, it is a good idea to obtain
the used print settings with print_settings()
and store them for reuse with the next print operation. A value of
PrintOperationResult::InProgress means the operation is running
asynchronously, and will emit the signal::PrintOperation::done signal when
done.
fn set_allow_async(&self, allow_async: bool)
fn set_allow_async(&self, allow_async: bool)Sets whether the run() may return
before the print operation is completed. Note that
some platforms may not allow asynchronous operation.
allow_async
true to allow asynchronous operation
fn set_current_page(&self, current_page: i32)
fn set_current_page(&self, current_page: i32)Sets the current page.
If this is called before run(),
the user will be able to select to print only the current page.
Note that this only makes sense for pre-paginated documents.
current_page
the current page, 0-based
fn set_custom_tab_label(&self, label: Option<&str>)
fn set_custom_tab_label(&self, label: Option<&str>)fn set_default_page_setup(&self, default_page_setup: Option<&PageSetup>)
fn set_default_page_setup(&self, default_page_setup: Option<&PageSetup>)Makes default_page_setup the default page setup for self.
This page setup will be used by run(),
but it can be overridden on a per-page basis by connecting
to the signal::PrintOperation::request-page-setup signal.
default_page_setup
fn set_defer_drawing(&self)
fn set_defer_drawing(&self)Sets up the PrintOperation to wait for calling of
draw_page_finish() from application. It can
be used for drawing page in another thread.
This function must be called in the callback of “draw-page” signal.
fn set_embed_page_setup(&self, embed: bool)
fn set_embed_page_setup(&self, embed: bool)Embed page size combo box and orientation combo box into page setup page.
Selected page setup is stored as default page setup in PrintOperation.
embed
true to embed page setup selection in the GtkPrintUnixDialog
fn set_export_filename<P: AsRef<Path>>(&self, filename: P)
fn set_export_filename<P: AsRef<Path>>(&self, filename: P)Sets up the PrintOperation to generate a file instead
of showing the print dialog. The indended use of this function
is for implementing “Export to PDF” actions. Currently, PDF
is the only supported format.
“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.
filename
the filename for the exported file
fn set_has_selection(&self, has_selection: bool)
fn set_has_selection(&self, has_selection: bool)Sets whether there is a selection to print.
Application has to set number of pages to which the selection
will draw by set_n_pages() in a callback of
signal::PrintOperation::begin-print.
has_selection
true indicates that a selection exists
fn set_job_name(&self, job_name: &str)
fn set_job_name(&self, job_name: &str)Sets the name of the print job. The name is 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.
job_name
a string that identifies the print job
fn set_n_pages(&self, n_pages: i32)
fn set_n_pages(&self, n_pages: i32)Sets 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
signal::PrintOperation::begin-print signal hander.
Note that the page numbers passed to the
signal::PrintOperation::request-page-setup
and signal::PrintOperation::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.
n_pages
the number of pages
fn set_print_settings(&self, print_settings: Option<&PrintSettings>)
fn set_print_settings(&self, print_settings: Option<&PrintSettings>)Sets the print settings for self. This is typically used to
re-establish print settings from a previous print operation,
see run().
print_settings
fn set_show_progress(&self, show_progress: bool)
fn set_show_progress(&self, show_progress: bool)If show_progress is true, the print operation will show a
progress dialog during the print operation.
show_progress
true to show a progress dialog
fn set_support_selection(&self, support_selection: bool)
fn set_support_selection(&self, support_selection: bool)fn set_track_print_status(&self, track_status: bool)
fn set_track_print_status(&self, track_status: bool)If track_status is 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.
This function is often implemented using some form of polling, so it should not be enabled unless needed.
track_status
true to track status after printing
Sets up the transformation for the cairo context obtained from
PrintContext in such a way that distances are measured in
units of unit.
unit
the unit to use
fn set_use_full_page(&self, full_page: bool)
fn set_use_full_page(&self, full_page: bool)If full_page is true, the transformation for the cairo context
obtained from PrintContext puts the origin at the top left
corner of the page (which 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).
full_page
true to set up the PrintContext for the full page
fn allows_async(&self) -> bool
fn allows_async(&self) -> boolDetermines 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 signal::PrintOperation::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.
fn current_page(&self) -> i32
fn current_page(&self) -> i32The current page in the document.
If this is set before run(),
the user will be able to select to print only the current page.
Note that this only makes sense for pre-paginated documents.
fn custom_tab_label(&self) -> Option<GString>
fn custom_tab_label(&self) -> Option<GString>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.
fn export_filename(&self) -> Option<GString>
fn export_filename(&self) -> Option<GString>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.
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.
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
signal::PrintOperation::begin-print signal hander.
Note that the page numbers passed to the
signal::PrintOperation::request-page-setup and
signal::PrintOperation::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.
fn shows_progress(&self) -> bool
fn shows_progress(&self) -> boolDetermines whether to show a progress dialog during the print operation.
fn tracks_print_status(&self) -> bool
fn tracks_print_status(&self) -> boolIf 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.
The transformation for the cairo context obtained from
PrintContext is set up in such a way that distances
are measured in units of unit.
fn uses_full_page(&self) -> bool
fn uses_full_page(&self) -> boolIf true, the transformation for the cairo context obtained
from PrintContext puts the origin at the top left corner
of the page (which 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).
fn connect_begin_print<F: Fn(&Self, &PrintContext) + 'static>(
&self,
f: F
) -> SignalHandlerId
fn connect_begin_print<F: Fn(&Self, &PrintContext) + 'static>(
&self,
f: F
) -> SignalHandlerIdEmitted after the user has finished changing print settings in the dialog, before the actual rendering starts.
A typical use for ::begin-print is to use the parameters from the
PrintContext and paginate the document accordingly, and then
set the number of pages with set_n_pages().
context
the PrintContext for the current operation
fn connect_create_custom_widget<F: Fn(&Self) -> Object + 'static>(
&self,
f: F
) -> SignalHandlerId
fn connect_create_custom_widget<F: Fn(&Self) -> Object + 'static>(
&self,
f: F
) -> SignalHandlerIdEmitted when displaying the print dialog. If you return a widget in a handler for this signal it will be added to a custom tab in the print dialog. You typically return a container widget with multiple widgets in it.
The print dialog owns the returned widget, and its lifetime is not
controlled by the application. However, the widget is guaranteed
to stay around until the signal::PrintOperation::custom-widget-apply
signal is emitted on the operation. Then you can read out any
information you need from the widgets.
Returns
A custom widget that gets embedded in
the print dialog, or None
fn connect_custom_widget_apply<F: Fn(&Self, &Widget) + 'static>(
&self,
f: F
) -> SignalHandlerId
fn connect_custom_widget_apply<F: Fn(&Self, &Widget) + 'static>(
&self,
f: F
) -> SignalHandlerIdEmitted right before signal::PrintOperation::begin-print if you added
a custom widget in the signal::PrintOperation::create-custom-widget handler.
When you get this signal you should read the information from the
custom widgets, as the widgets are not guaraneed to be around at a
later time.
widget
the custom widget added in create-custom-widget
fn connect_done<F: Fn(&Self, PrintOperationResult) + 'static>(
&self,
f: F
) -> SignalHandlerId
fn connect_done<F: Fn(&Self, PrintOperationResult) + 'static>(
&self,
f: F
) -> SignalHandlerIdEmitted when the print operation run has finished doing everything required for printing.
result gives you information about what happened during the run.
If result is PrintOperationResult::Error then you can call
error() for more information.
If you enabled print status tracking then
is_finished() may still return false
after signal::PrintOperation::done was emitted.
result
the result of the print operation
fn connect_draw_page<F: Fn(&Self, &PrintContext, i32) + 'static>(
&self,
f: F
) -> SignalHandlerId
fn connect_draw_page<F: Fn(&Self, &PrintContext, i32) + 'static>(
&self,
f: F
) -> SignalHandlerIdEmitted for every page that is printed. The signal handler
must render the page_nr’s page onto the cairo context obtained
from context using PrintContext::cairo_context().
⚠️ The following code is in C ⚠️
static void
draw_page (GtkPrintOperation *operation,
GtkPrintContext *context,
gint page_nr,
gpointer user_data)
{
cairo_t *cr;
PangoLayout *layout;
gdouble width, text_height;
gint layout_height;
PangoFontDescription *desc;
cr = gtk_print_context_get_cairo_context (context);
width = gtk_print_context_get_width (context);
cairo_rectangle (cr, 0, 0, width, HEADER_HEIGHT);
cairo_set_source_rgb (cr, 0.8, 0.8, 0.8);
cairo_fill (cr);
layout = gtk_print_context_create_pango_layout (context);
desc = pango_font_description_from_string ("sans 14");
pango_layout_set_font_description (layout, desc);
pango_font_description_free (desc);
pango_layout_set_text (layout, "some text", -1);
pango_layout_set_width (layout, width * PANGO_SCALE);
pango_layout_set_alignment (layout, PANGO_ALIGN_CENTER);
pango_layout_get_size (layout, NULL, &layout_height);
text_height = (gdouble)layout_height / PANGO_SCALE;
cairo_move_to (cr, width / 2, (HEADER_HEIGHT - text_height) / 2);
pango_cairo_show_layout (cr, layout);
g_object_unref (layout);
}
Use set_use_full_page() and
set_unit() before starting the print operation
to set up the transformation of the cairo context according to your
needs.
context
the PrintContext for the current operation
page_nr
the number of the currently printed page (0-based)
fn connect_end_print<F: Fn(&Self, &PrintContext) + 'static>(
&self,
f: F
) -> SignalHandlerId
fn connect_end_print<F: Fn(&Self, &PrintContext) + 'static>(
&self,
f: F
) -> SignalHandlerIdEmitted after all pages have been rendered.
A handler for this signal can clean up any resources that have
been allocated in the signal::PrintOperation::begin-print handler.
context
the PrintContext for the current operation
fn connect_paginate<F: Fn(&Self, &PrintContext) -> bool + 'static>(
&self,
f: F
) -> SignalHandlerId
fn connect_paginate<F: Fn(&Self, &PrintContext) -> bool + 'static>(
&self,
f: F
) -> SignalHandlerIdEmitted after the signal::PrintOperation::begin-print signal, but before
the actual rendering starts. It keeps getting emitted until a connected
signal handler returns true.
The ::paginate signal is intended to be used for paginating a document
in small chunks, to avoid blocking the user interface for a long
time. The signal handler should update the number of pages using
set_n_pages(), and return true if the document
has been completely paginated.
If you don’t need to do pagination in chunks, you can simply do it all in the ::begin-print handler, and set the number of pages from there.
context
the PrintContext for the current operation
Returns
true if pagination is complete
fn connect_preview<F: Fn(&Self, &PrintOperationPreview, &PrintContext, Option<&Window>) -> bool + 'static>(
&self,
f: F
) -> SignalHandlerId
fn connect_preview<F: Fn(&Self, &PrintOperationPreview, &PrintContext, Option<&Window>) -> bool + 'static>(
&self,
f: F
) -> SignalHandlerIdGets emitted when a preview is requested from the native dialog.
The default handler for this signal uses an external viewer application to preview.
To implement a custom print preview, an application must return
true from its handler for this signal. In order to use the
provided context for the preview implementation, it must be
given a suitable cairo context with PrintContext::set_cairo_context().
The custom preview implementation can use
PrintOperationPreviewExt::is_selected() and
PrintOperationPreviewExt::render_page() to find pages which
are selected for print and render them. The preview must be
finished by calling PrintOperationPreviewExt::end_preview()
(typically in response to the user clicking a close button).
preview
the PrintOperationPreview for the current operation
context
the PrintContext that will be used
parent
the Window to use as window parent, or None
Returns
true if the listener wants to take over control of the preview
fn connect_request_page_setup<F: Fn(&Self, &PrintContext, i32, &PageSetup) + 'static>(
&self,
f: F
) -> SignalHandlerId
fn connect_request_page_setup<F: Fn(&Self, &PrintContext, i32, &PageSetup) + 'static>(
&self,
f: F
) -> SignalHandlerIdEmitted once for every page that is printed, to give
the application a chance to modify the page setup. Any changes
done to setup will be in force only for printing this page.
context
the PrintContext for the current operation
page_nr
the number of the currently printed page (0-based)
setup
the PageSetup
fn connect_status_changed<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId
fn connect_status_changed<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerIdEmitted at between the various phases of the print operation.
See PrintStatus for the phases that are being discriminated.
Use status() to find out the current
status.
fn connect_update_custom_widget<F: Fn(&Self, &Widget, &PageSetup, &PrintSettings) + 'static>(
&self,
f: F
) -> SignalHandlerId
fn connect_update_custom_widget<F: Fn(&Self, &Widget, &PageSetup, &PrintSettings) + 'static>(
&self,
f: F
) -> SignalHandlerIdfn connect_allow_async_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerIdfn connect_current_page_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerIdfn connect_custom_tab_label_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerIdfn connect_default_page_setup_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerIdfn connect_embed_page_setup_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerIdfn connect_export_filename_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerIdfn connect_has_selection_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerIdfn connect_job_name_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerIdfn connect_n_pages_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerIdfn connect_n_pages_to_print_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerIdfn connect_print_settings_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerIdfn connect_show_progress_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerIdfn connect_status_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerIdfn connect_status_string_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerIdfn connect_support_selection_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerIdfn connect_track_print_status_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerIdfn connect_unit_notify<F: Fn(&Self) + 'static>(&self, f: F) -> SignalHandlerIdfn connect_use_full_page_notify<F: Fn(&Self) + 'static>(
&self,
f: F
) -> SignalHandlerId