]> Pileus Git - ~andy/gtk/blobdiff - gtk/gtkprintbackend.h
Rename property to be more neutral
[~andy/gtk] / gtk / gtkprintbackend.h
index 389ef00a53caeb9cae6b445fb83aa1c323047c18..5ae80efda218555eb84f38cde9bc4c2154416a55 100644 (file)
@@ -13,9 +13,7 @@
  * Lesser General Public License for more details.
  *
  * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
  */
 
 #ifndef __GTK_PRINT_BACKEND_H__
@@ -55,6 +53,13 @@ GQuark     gtk_print_backend_error_quark      (void);
 #define GTK_IS_PRINT_BACKEND_CLASS(klass)       (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_PRINT_BACKEND))
 #define GTK_PRINT_BACKEND_GET_CLASS(obj)        (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_PRINT_BACKEND, GtkPrintBackendClass))
 
+typedef enum 
+{
+  GTK_PRINT_BACKEND_STATUS_UNKNOWN,
+  GTK_PRINT_BACKEND_STATUS_OK,
+  GTK_PRINT_BACKEND_STATUS_UNAVAILABLE
+} GtkPrintBackendStatus;
+
 struct _GtkPrintBackend
 {
   GObject parent_instance;
@@ -97,11 +102,11 @@ struct _GtkPrintBackendClass
                                                              GtkPageSetup        *page_setup);
   GList  *              (*printer_list_papers)               (GtkPrinter          *printer);
   GtkPageSetup *        (*printer_get_default_page_size)     (GtkPrinter          *printer);
-  void                  (*printer_get_hard_margins)          (GtkPrinter          *printer,
-                                                             double              *top,
-                                                             double              *bottom,
-                                                             double              *left,
-                                                             double              *right);
+  gboolean              (*printer_get_hard_margins)          (GtkPrinter          *printer,
+                                                             gdouble             *top,
+                                                             gdouble             *bottom,
+                                                             gdouble             *left,
+                                                             gdouble             *right);
   GtkPrintCapabilities  (*printer_get_capabilities)          (GtkPrinter          *printer);
 
   /* Signals */
@@ -113,14 +118,23 @@ struct _GtkPrintBackendClass
                                                              GtkPrinter          *printer);
   void                  (*printer_status_changed)            (GtkPrintBackend     *backend,
                                                              GtkPrinter          *printer);
+  void                  (*request_password)                  (GtkPrintBackend     *backend,
+                                                              gpointer             auth_info_required,
+                                                              gpointer             auth_info_default,
+                                                              gpointer             auth_info_display,
+                                                              gpointer             auth_info_visible,
+                                                              const gchar         *prompt);
+
+  /* not a signal */
+  void                  (*set_password)                      (GtkPrintBackend     *backend,
+                                                              gchar              **auth_info_required,
+                                                              gchar              **auth_info);
 
   /* Padding for future expansion */
   void (*_gtk_reserved1) (void);
   void (*_gtk_reserved2) (void);
   void (*_gtk_reserved3) (void);
   void (*_gtk_reserved4) (void);
-  void (*_gtk_reserved5) (void);
-  void (*_gtk_reserved6) (void);
 };
 
 GType   gtk_print_backend_get_type       (void) G_GNUC_CONST;
@@ -137,6 +151,9 @@ void        gtk_print_backend_print_stream         (GtkPrintBackend         *pri
                                                    GDestroyNotify           dnotify);
 GList *     gtk_print_backend_load_modules         (void);
 void        gtk_print_backend_destroy              (GtkPrintBackend         *print_backend);
+void        gtk_print_backend_set_password         (GtkPrintBackend         *backend, 
+                                                    gchar                  **auth_info_required,
+                                                    gchar                  **auth_info);
 
 /* Backend-only functions for GtkPrintBackend */
 
@@ -148,11 +165,11 @@ void        gtk_print_backend_set_list_done        (GtkPrintBackend         *bac
 
 
 /* Backend-only functions for GtkPrinter */
-
-GtkPrinter *gtk_printer_new                   (const char      *name,
-                                              GtkPrintBackend *backend,
-                                              gboolean         is_virtual);
 gboolean    gtk_printer_is_new                (GtkPrinter      *printer);
+void        gtk_printer_set_accepts_pdf       (GtkPrinter      *printer,
+                                              gboolean         val);
+void        gtk_printer_set_accepts_ps        (GtkPrinter      *printer,
+                                              gboolean         val);
 void        gtk_printer_set_is_new            (GtkPrinter      *printer,
                                               gboolean         val);
 void        gtk_printer_set_is_active         (GtkPrinter      *printer,