diff --git a/src/gtk/print.c b/src/gtk/print.c index 7dc3d5e..41bdeab 100644 --- a/src/gtk/print.c +++ b/src/gtk/print.c @@ -32,31 +32,70 @@ #include "globals.h" #include "v3270/v3270.h" +/*--[ Structs ]--------------------------------------------------------------------------------------*/ + + typedef struct _print_info + { + GdkColor color[V3270_COLOR_COUNT]; + + } PRINT_INFO; + /*--[ Implement ]------------------------------------------------------------------------------------*/ - static void begin_print(GtkPrintOperation *prt, GtkPrintContext *context, gpointer user_data) + static void begin_print(GtkPrintOperation *prt, GtkPrintContext *context, PRINT_INFO *info) { trace("%s",__FUNCTION__); gtk_print_operation_cancel(prt); } - static void draw_page(GtkPrintOperation *prt, GtkPrintContext *context, gint pg, gpointer user_data) + static void draw_page(GtkPrintOperation *prt, GtkPrintContext *context, gint pg, PRINT_INFO *info) { trace("%s",__FUNCTION__); } - static void done(GtkPrintOperation *prt, GtkPrintOperationResult result, gpointer user_data) + static void done(GtkPrintOperation *prt, GtkPrintOperationResult result, PRINT_INFO *info) { trace("%s",__FUNCTION__); + + g_free(info); } - static GObject * create_custom_widget(GtkPrintOperation *prt, gpointer user_data) +#if GTK_CHECK_VERSION(3,2,0) + static gboolean filter_monospaced(const PangoFontFamily *family,const PangoFontFace *face,gpointer data) { - GtkWidget * font_dialog = gtk_font_selection_new(); - trace("%s",__FUNCTION__); - return G_OBJECT(font_dialog); + return pango_font_family_is_monospace((PangoFontFamily *) family); + } +#endif // GTK(3,2,0) + + static GObject * create_custom_widget(GtkPrintOperation *prt, PRINT_INFO *info) + { + static const gchar * label[] = { "Font:", "Colors:" }; + GtkWidget * container = gtk_table_new(2,2,FALSE); + GtkWidget * widget; + int f; + + for(f=0;f