2006-06-16 Matthias Clasen <mclasen@redhat.com>
+ * gtk/gtkprintoperation-unix.c:
+ * gtk/gtkprintbackend.c: Move the registration of the
+ gtk-print-preview-command setting from gtkprintbackend.c to
+ gtkprintoperation-unix.c, to make sure it is registered before
+ the first use. Also, document the two settings.
+
* tests/print-editor.c: Add a "Preview" menu item.
* gtk/gtkprintoperation-unix.c (handle_print_response): When starting
2006-06-16 Matthias Clasen <mclasen@redhat.com>
+ * gtk/gtkprintoperation-unix.c:
+ * gtk/gtkprintbackend.c: Move the registration of the
+ gtk-print-preview-command setting from gtkprintbackend.c to
+ gtkprintoperation-unix.c, to make sure it is registered before
+ the first use. Also, document the two settings.
+
* tests/print-editor.c: Add a "Preview" menu item.
* gtk/gtkprintoperation-unix.c (handle_print_response): When starting
if (!initialized)
{
+ /**
+ * GtkSettings::gtk-print-backends:
+ *
+ * A comma-separated list of print backends to use in the print
+ * dialog. Available print backends depend on the GTK+ installation,
+ * and may include "pdf", "cups" or "lpr".
+ *
+ * Since: 2.10
+ */
gtk_settings_install_property (g_param_spec_string ("gtk-print-backends",
P_("Default print backend"),
P_("List of the GtkPrintBackend backends to use by default"),
GTK_PRINT_BACKENDS,
GTK_PARAM_READWRITE));
- gtk_settings_install_property (g_param_spec_string ("gtk-print-preview-command",
- P_("Default command to run when displaying a print preview"),
- P_("Command to run when displaying a print preview"),
- GTK_PRINT_PREVIEW_COMMAND,
- GTK_PARAM_READWRITE));
initialized = TRUE;
}
}
#include <cairo-pdf.h>
#include <cairo-ps.h>
+#include "gtkprivate.h"
#include "gtkprintunixdialog.h"
#include "gtkpagesetupunixdialog.h"
#include "gtkprintbackend.h"
return result;
}
+static void
+gtk_print_operation_unix_initialize (void)
+{
+ static gboolean initialized = FALSE;
+
+ if (!initialized)
+ {
+ /**
+ * GtkSettings::gtk-print-preview-command:
+ *
+ * A command to run for displaying the print preview. The command
+ * should contain a %f placeholder, which will get replaced by
+ * the path to the pdf file.
+ *
+ * The preview application is responsible for removing the pdf file
+ * when it is done.
+ *
+ * Since: 2.10
+ */
+ gtk_settings_install_property (g_param_spec_string ("gtk-print-preview-command",
+ P_("Default command to run when displaying a print preview"),
+ P_("Command to run when displaying a print preview"),
+ GTK_PRINT_PREVIEW_COMMAND,
+ GTK_PARAM_READWRITE));
+ initialized = TRUE;
+ }
+}
+
void
_gtk_print_operation_platform_backend_launch_preview (GtkPrintOperation *op,
cairo_surface_t *surface,
GdkScreen *screen;
GError *error = NULL;
+ gtk_print_operation_unix_initialize ();
+
cairo_surface_destroy (surface);
settings = gtk_settings_get_default ();