summaryrefslogtreecommitdiff
path: root/gtk/gtkprintbackend.c
diff options
context:
space:
mode:
authorAlexander Larsson <alexl@redhat.com>2006-05-24 10:50:57 +0000
committerAlexander Larsson <alexl@src.gnome.org>2006-05-24 10:50:57 +0000
commit70376f280a6735551404ad583eb9efd8afcc7cc3 (patch)
treede5dd5dc1df73c718f4dd5c4db22e55392901386 /gtk/gtkprintbackend.c
parent27f2b1d95a164b5a48d5bb402fb13c99423f5305 (diff)
downloadgdk-pixbuf-70376f280a6735551404ad583eb9efd8afcc7cc3.tar.gz
Add gtk_print_unix_dialog_set_manual_capabilities that controls what
2006-05-24 Alexander Larsson <alexl@redhat.com> * gtk/gtk.symbols: * gtk/gtkprintunixdialog.[ch]: Add gtk_print_unix_dialog_set_manual_capabilities that controls what widgets to enable in the dialog depending on the apps capabilities. * gtk/gtkprintbackend.[ch]: * gtk/gtkprinter-private.h: * gtk/gtkprinter.c: * gtk/gtkprintjob.h: Add printer_get_capabilities to backend. Move some fallback calls to the printbackend base class. * gtk/gtkprintoperation-unix.c: Set manual capabilities * modules/printbackends/cups/gtkprintbackendcups.c: Implement get_capabilities * modules/printbackends/lpr/gtkprintbackendlpr.c: * modules/printbackends/pdf/gtkprintbackendpdf.c: Move some methods to baseclass.
Diffstat (limited to 'gtk/gtkprintbackend.c')
-rw-r--r--gtk/gtkprintbackend.c56
1 files changed, 55 insertions, 1 deletions
diff --git a/gtk/gtkprintbackend.c b/gtk/gtkprintbackend.c
index 9bd1069a9..68c90981a 100644
--- a/gtk/gtkprintbackend.c
+++ b/gtk/gtkprintbackend.c
@@ -303,6 +303,17 @@ gtk_print_backend_load_modules ()
G_DEFINE_TYPE (GtkPrintBackend, gtk_print_backend, G_TYPE_OBJECT)
+static void fallback_printer_request_details (GtkPrinter *printer);
+static gboolean fallback_printer_mark_conflicts (GtkPrinter *printer,
+ GtkPrinterOptionSet *options);
+static void fallback_printer_get_hard_margins (GtkPrinter *printer,
+ double *top,
+ double *bottom,
+ double *left,
+ double *right);
+static GList * fallback_printer_list_papers (GtkPrinter *printer);
+static GtkPrintCapabilities fallback_printer_get_capabilities (GtkPrinter *printer);
+
static void
gtk_print_backend_class_init (GtkPrintBackendClass *class)
{
@@ -313,8 +324,13 @@ gtk_print_backend_class_init (GtkPrintBackendClass *class)
object_class->dispose = gtk_print_backend_dispose;
+ class->printer_request_details = fallback_printer_request_details;
+ class->printer_mark_conflicts = fallback_printer_mark_conflicts;
+ class->printer_get_hard_margins = fallback_printer_get_hard_margins;
+ class->printer_list_papers = fallback_printer_list_papers;
+ class->printer_get_capabilities = fallback_printer_get_capabilities;
+
g_type_class_add_private (class, sizeof (GtkPrintBackendPrivate));
-
signals[PRINTER_LIST_CHANGED] =
g_signal_new ("printer-list-changed",
@@ -392,6 +408,44 @@ gtk_print_backend_dispose (GObject *object)
static void
+fallback_printer_request_details (GtkPrinter *printer)
+{
+}
+
+static gboolean
+fallback_printer_mark_conflicts (GtkPrinter *printer,
+ GtkPrinterOptionSet *options)
+{
+ return FALSE;
+}
+
+static void
+fallback_printer_get_hard_margins (GtkPrinter *printer,
+ double *top,
+ double *bottom,
+ double *left,
+ double *right)
+{
+ *top = 0;
+ *bottom = 0;
+ *left = 0;
+ *right = 0;
+}
+
+static GList *
+fallback_printer_list_papers (GtkPrinter *printer)
+{
+ return NULL;
+}
+
+static GtkPrintCapabilities
+fallback_printer_get_capabilities (GtkPrinter *printer)
+{
+ return 0;
+}
+
+
+static void
printer_hash_to_sorted_active_list (const gchar *key,
gpointer value,
GList **out_list)