]> Pileus Git - ~andy/gtk/blobdiff - modules/printbackends/cups/gtkprintercups.h
printing: List Avahi printers
[~andy/gtk] / modules / printbackends / cups / gtkprintercups.h
index cd2b318e641e0671ff868b3f8ee0e1ff3164de7a..7b14af61854110b8ce66f0212053a31575c7f156 100644 (file)
@@ -12,9 +12,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_PRINTER_CUPS_H__
 #include <glib-object.h>
 #include <cups/cups.h>
 #include <cups/ppd.h>
+#include "gtkcupsutils.h"
 
 #include <gtk/gtkunixprint.h>
+#include <gtk/gtkprinter-private.h>
+
+#ifdef HAVE_COLORD
+#include <colord.h>
+#endif
 
 G_BEGIN_DECLS
 
@@ -47,6 +51,7 @@ struct _GtkPrinterCups
   gchar *printer_uri;
   gchar *hostname;
   gint port;
+  gchar **auth_info_required;
 
   ipp_pstate_t state;
   gboolean reading_ppd;
@@ -55,6 +60,32 @@ struct _GtkPrinterCups
 
   gchar  *default_cover_before;
   gchar  *default_cover_after;
+
+  gint    default_number_up;
+
+  gboolean remote;
+  guint get_remote_ppd_poll;
+  gint  get_remote_ppd_attempts;
+  GtkCupsConnectionTest *remote_cups_connection_test;
+#ifdef HAVE_COLORD
+  CdClient     *colord_client;
+  CdDevice     *colord_device;
+  CdProfile    *colord_profile;
+  GCancellable *colord_cancellable;
+  gchar        *colord_title;
+  gchar        *colord_qualifier;
+#endif
+#ifdef HAVE_AVAHI_BROWSING
+  gboolean  avahi_browsed;
+  gchar    *avahi_name;
+  gchar    *avahi_type;
+  gchar    *avahi_domain;
+#endif
+  guchar ipp_version_major;
+  guchar ipp_version_minor;
+  gboolean supports_copies;
+  gboolean supports_collate;
+  gboolean supports_number_up;
 };
 
 struct _GtkPrinterCupsClass
@@ -65,11 +96,19 @@ struct _GtkPrinterCupsClass
 
 GType                    gtk_printer_cups_get_type      (void) G_GNUC_CONST;
 void                     gtk_printer_cups_register_type (GTypeModule     *module);
+
 GtkPrinterCups          *gtk_printer_cups_new           (const char      *name,
-                                                        GtkPrintBackend *backend);
+                                                         GtkPrintBackend *backend,
+                                                         gpointer         colord_client);
 ppd_file_t             *gtk_printer_cups_get_ppd       (GtkPrinterCups  *printer);
 const gchar            *gtk_printer_cups_get_ppd_name  (GtkPrinterCups  *printer);
 
+#ifdef HAVE_COLORD
+void                     gtk_printer_cups_update_settings (GtkPrinterCups *printer,
+                                                         GtkPrintSettings *settings,
+                                                         GtkPrinterOptionSet *set);
+#endif
+
 G_END_DECLS
 
 #endif /* __GTK_PRINTER_CUPS_H__ */