]> Pileus Git - ~andy/gtk/blobdiff - gtk/gtkprintbackend.h
Fix a crash with icon themes
[~andy/gtk] / gtk / gtkprintbackend.h
index 21419095f789008d0dbb7e0b340d9fe5a6f48034..ea2f0f7d9b0eacb7934f53d59fd97229ec091471 100644 (file)
@@ -70,49 +70,51 @@ struct _GtkPrintBackendClass
   GObjectClass parent_class;
 
   /* Global backend methods: */
-  void (*request_printer_list) (GtkPrintBackend *backend);
-  void (*print_stream)         (GtkPrintBackend *backend,
-                               GtkPrintJob *job,
-                               gint data_fd,
-                               GtkPrintJobCompleteFunc callback,
-                               gpointer user_data,
-                               GDestroyNotify dnotify);
+  void                   (*request_printer_list)            (GtkPrintBackend        *backend);
+  void                   (*print_stream)                    (GtkPrintBackend        *backend,
+                                                            GtkPrintJob            *job,
+                                                            GIOChannel             *data_io,
+                                                            GtkPrintJobCompleteFunc callback,
+                                                            gpointer                user_data,
+                                                            GDestroyNotify          dnotify);
 
   /* Printer methods: */
-  void                  (*printer_request_details)           (GtkPrinter *printer);
-  cairo_surface_t *     (*printer_create_cairo_surface)      (GtkPrinter *printer,
-                                                             gdouble height,
-                                                             gdouble width,
-                                                             gint cache_fd);
-  GtkPrinterOptionSet * (*printer_get_options)               (GtkPrinter *printer,
-                                                             GtkPrintSettings *settings,
-                                                             GtkPageSetup *page_setup);
-  gboolean              (*printer_mark_conflicts)            (GtkPrinter *printer,
+  void                  (*printer_request_details)           (GtkPrinter          *printer);
+  cairo_surface_t *     (*printer_create_cairo_surface)      (GtkPrinter          *printer,
+                                                             GtkPrintSettings    *settings,
+                                                             gdouble              height,
+                                                             gdouble              width,
+                                                             GIOChannel          *cache_io);
+  GtkPrinterOptionSet * (*printer_get_options)               (GtkPrinter          *printer,
+                                                             GtkPrintSettings    *settings,
+                                                             GtkPageSetup        *page_setup,
+                                                             GtkPrintCapabilities capabilities);
+  gboolean              (*printer_mark_conflicts)            (GtkPrinter          *printer,
                                                              GtkPrinterOptionSet *options);
-  void                  (*printer_get_settings_from_options) (GtkPrinter *printer,
+  void                  (*printer_get_settings_from_options) (GtkPrinter          *printer,
                                                              GtkPrinterOptionSet *options,
-                                                             GtkPrintSettings *settings);
-  void                  (*printer_prepare_for_print)         (GtkPrinter *printer,
-                                                             GtkPrintJob *print_job,
-                                                             GtkPrintSettings *settings,
-                                                             GtkPageSetup *page_setup);
-  GList  *              (*printer_list_papers)               (GtkPrinter *printer);
-  void                  (*printer_get_hard_margins)          (GtkPrinter *printer,
-                                                             double     *top,
-                                                             double     *bottom,
-                                                             double     *left,
-                                                             double     *right);
-  GtkPrintCapabilities  (*printer_get_capabilities)          (GtkPrinter *printer);
+                                                             GtkPrintSettings    *settings);
+  void                  (*printer_prepare_for_print)         (GtkPrinter          *printer,
+                                                             GtkPrintJob         *print_job,
+                                                             GtkPrintSettings    *settings,
+                                                             GtkPageSetup        *page_setup);
+  GList  *              (*printer_list_papers)               (GtkPrinter          *printer);
+  void                  (*printer_get_hard_margins)          (GtkPrinter          *printer,
+                                                             double              *top,
+                                                             double              *bottom,
+                                                             double              *left,
+                                                             double              *right);
+  GtkPrintCapabilities  (*printer_get_capabilities)          (GtkPrinter          *printer);
 
   /* Signals */
-  void (*printer_list_changed)   (GtkPrintBackend *backend);
-  void (*printer_list_done)      (GtkPrintBackend *backend);
-  void (*printer_added)          (GtkPrintBackend *backend,
-                                 GtkPrinter      *printer);
-  void (*printer_removed)        (GtkPrintBackend *backend,
-                                 GtkPrinter      *printer);
-  void (*printer_status_changed) (GtkPrintBackend *backend,
-                                 GtkPrinter      *printer);
+  void                  (*printer_list_changed)              (GtkPrintBackend     *backend);
+  void                  (*printer_list_done)                 (GtkPrintBackend     *backend);
+  void                  (*printer_added)                     (GtkPrintBackend     *backend,
+                                                             GtkPrinter          *printer);
+  void                  (*printer_removed)                   (GtkPrintBackend     *backend,
+                                                             GtkPrinter          *printer);
+  void                  (*printer_status_changed)            (GtkPrintBackend     *backend,
+                                                             GtkPrinter          *printer);
 
   /* Padding for future expansion */
   void (*_gtk_reserved1) (void);
@@ -132,7 +134,7 @@ GtkPrinter *gtk_print_backend_find_printer         (GtkPrintBackend         *pri
                                                    const gchar             *printer_name);
 void        gtk_print_backend_print_stream         (GtkPrintBackend         *print_backend,
                                                    GtkPrintJob             *job,
-                                                   gint                     data_fd,
+                                                   GIOChannel              *data_io,
                                                    GtkPrintJobCompleteFunc  callback,
                                                    gpointer                 user_data,
                                                    GDestroyNotify           dnotify);