1 /* GtkPrintUnixDialog 2 * Copyright (C) 2006 John (J5) Palmieri <johnp@redhat.com> 3 * 4 * This library is free software; you can redistribute it and/or 5 * modify it under the terms of the GNU Lesser General Public 6 * License as published by the Free Software Foundation; either 7 * version 2 of the License, or (at your option) any later version. 8 * 9 * This library is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 * Lesser General Public License for more details. 13 * 14 * You should have received a copy of the GNU Lesser General Public 15 * License along with this library. If not, see <http://www.gnu.org/licenses/>. 16 */ 17 18 #ifndef __GTK_PRINT_UNIX_DIALOG_H__ 19 #define __GTK_PRINT_UNIX_DIALOG_H__ 20 21 #if !defined (__GTK_UNIX_PRINT_H_INSIDE__) && !defined (GTK_COMPILATION) 22 #error "Only <gtk/gtkunixprint.h> can be included directly." 23 #endif 24 25 #include <gtk/gtk.h> 26 #include <gtk/gtkprinter.h> 27 #include <gtk/gtkprintjob.h> 28 29 G_BEGIN_DECLS 30 31 #define GTK_TYPE_PRINT_UNIX_DIALOG (gtk_print_unix_dialog_get_type ()) 32 #define GTK_PRINT_UNIX_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_PRINT_UNIX_DIALOG, GtkPrintUnixDialog)) 33 #define GTK_PRINT_UNIX_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_PRINT_UNIX_DIALOG, GtkPrintUnixDialogClass)) 34 #define GTK_IS_PRINT_UNIX_DIALOG(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_PRINT_UNIX_DIALOG)) 35 #define GTK_IS_PRINT_UNIX_DIALOG_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_PRINT_UNIX_DIALOG)) 36 #define GTK_PRINT_UNIX_DIALOG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_PRINT_UNIX_DIALOG, GtkPrintUnixDialogClass)) 37 38 39 typedef struct _GtkPrintUnixDialog GtkPrintUnixDialog; 40 typedef struct _GtkPrintUnixDialogClass GtkPrintUnixDialogClass; 41 typedef struct GtkPrintUnixDialogPrivate GtkPrintUnixDialogPrivate; 42 43 struct _GtkPrintUnixDialog 44 { 45 GtkDialog parent_instance; 46 47 /*< private >*/ 48 GtkPrintUnixDialogPrivate *priv; 49 }; 50 51 struct _GtkPrintUnixDialogClass 52 { 53 GtkDialogClass parent_class; 54 55 /* Padding for future expansion */ 56 void (*_gtk_reserved1) (void); 57 void (*_gtk_reserved2) (void); 58 void (*_gtk_reserved3) (void); 59 void (*_gtk_reserved4) (void); 60 }; 61 62 GDK_AVAILABLE_IN_ALL 63 GType gtk_print_unix_dialog_get_type (void) G_GNUC_CONST; 64 GDK_AVAILABLE_IN_ALL 65 GtkWidget * gtk_print_unix_dialog_new (const gchar *title, 66 GtkWindow *parent); 67 68 GDK_AVAILABLE_IN_ALL 69 void gtk_print_unix_dialog_set_page_setup (GtkPrintUnixDialog *dialog, 70 GtkPageSetup *page_setup); 71 GDK_AVAILABLE_IN_ALL 72 GtkPageSetup * gtk_print_unix_dialog_get_page_setup (GtkPrintUnixDialog *dialog); 73 GDK_AVAILABLE_IN_ALL 74 void gtk_print_unix_dialog_set_current_page (GtkPrintUnixDialog *dialog, 75 gint current_page); 76 GDK_AVAILABLE_IN_ALL 77 gint gtk_print_unix_dialog_get_current_page (GtkPrintUnixDialog *dialog); 78 GDK_AVAILABLE_IN_ALL 79 void gtk_print_unix_dialog_set_settings (GtkPrintUnixDialog *dialog, 80 GtkPrintSettings *settings); 81 GDK_AVAILABLE_IN_ALL 82 GtkPrintSettings * gtk_print_unix_dialog_get_settings (GtkPrintUnixDialog *dialog); 83 GDK_AVAILABLE_IN_ALL 84 GtkPrinter * gtk_print_unix_dialog_get_selected_printer (GtkPrintUnixDialog *dialog); 85 GDK_AVAILABLE_IN_ALL 86 void gtk_print_unix_dialog_add_custom_tab (GtkPrintUnixDialog *dialog, 87 GtkWidget *child, 88 GtkWidget *tab_label); 89 GDK_AVAILABLE_IN_ALL 90 void gtk_print_unix_dialog_set_manual_capabilities (GtkPrintUnixDialog *dialog, 91 GtkPrintCapabilities capabilities); 92 GDK_AVAILABLE_IN_ALL 93 GtkPrintCapabilities gtk_print_unix_dialog_get_manual_capabilities (GtkPrintUnixDialog *dialog); 94 GDK_AVAILABLE_IN_ALL 95 void gtk_print_unix_dialog_set_support_selection (GtkPrintUnixDialog *dialog, 96 gboolean support_selection); 97 GDK_AVAILABLE_IN_ALL 98 gboolean gtk_print_unix_dialog_get_support_selection (GtkPrintUnixDialog *dialog); 99 GDK_AVAILABLE_IN_ALL 100 void gtk_print_unix_dialog_set_has_selection (GtkPrintUnixDialog *dialog, 101 gboolean has_selection); 102 GDK_AVAILABLE_IN_ALL 103 gboolean gtk_print_unix_dialog_get_has_selection (GtkPrintUnixDialog *dialog); 104 GDK_AVAILABLE_IN_ALL 105 void gtk_print_unix_dialog_set_embed_page_setup (GtkPrintUnixDialog *dialog, 106 gboolean embed); 107 GDK_AVAILABLE_IN_ALL 108 gboolean gtk_print_unix_dialog_get_embed_page_setup (GtkPrintUnixDialog *dialog); 109 GDK_AVAILABLE_IN_ALL 110 gboolean gtk_print_unix_dialog_get_page_setup_set (GtkPrintUnixDialog *dialog); 111 112 G_END_DECLS 113 114 #endif /* __GTK_PRINT_UNIX_DIALOG_H__ */ 115