GtkPrintOperation problem
- From: William Yu <william realsoftware com>
- To: gtk-list gnome org
- Subject: GtkPrintOperation problem
- Date: Fri, 26 Oct 2007 15:18:11 -0500
I'm running into a problem where the second print operation is
failing. The first print operation presents a dialog, and prints
successfully, but the second print operation calls straight through
without bringing up the dialog (this is what I want, bringing up the
dialog again seems to work, but I'm trying to avoid that), but this
second print operation fails with RESULT_CANCEL. Perhaps there's a
simple setting I forgot to set on the second print operation? Any
help would be appreciated, thanks.
~William
static GtkPrintOperationResult DoPrint( GtkPrintOperation *operation,
GtkPrintOperationAction action, GError **error )
{
g_signal_connect (operation, "begin-print",
G_CALLBACK (print_operation_begin), NULL);
g_signal_connect (operation, "draw-page",
G_CALLBACK (print_operation_draw), NULL);
GtkPrintOperationResult res = gtk_print_operation_run (operation,
action,
NULL,
error);
return res;
}
gint main (gint argc, gchar *argv[])
{
GtkPrintOperation *operation;
GError *error = NULL;
GtkPrintOperationResult res;
gtk_init (&argc, &argv);
operation = gtk_print_operation_new ();
res = DoPrint( operation, GTK_PRINT_OPERATION_ACTION_PRINT_DIALOG,
&error );
// Succeeds
printf("res = %d\n", res);
if (error) {
printf("error = %s\n", error->message);
g_error_free (error);
error = NULL;
}
GtkPrintSettings *settings = gtk_print_operation_get_print_settings
( operation );
g_object_ref(settings);
g_object_unref(operation);
// Again fails
operation = gtk_print_operation_new ();
res = DoPrint( operation, GTK_PRINT_OPERATION_ACTION_PRINT, &error );
// Returns GTK_PRINT_OPERATION_RESULT_CANCEL
printf("res = %d\n", res);
if (error) {
printf("error = %s\n", error->message);
g_error_free (error);
}
g_object_unref(operation);
return 0;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]