diff options
Diffstat (limited to 'includes/report.h')
-rw-r--r-- | includes/report.h | 32 |
1 files changed, 21 insertions, 11 deletions
diff --git a/includes/report.h b/includes/report.h index 782621cb..47b510c1 100644 --- a/includes/report.h +++ b/includes/report.h @@ -1,10 +1,10 @@ /* * HardInfo - Displays System Information - * Copyright (C) 2003-2007 Leandro A. F. Pereira <leandro@hardinfo.org> + * Copyright (C) 2003-2007 L. A. F. Pereira <l@tia.mat.br> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, version 2. + * the Free Software Foundation, version 2 or later. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -15,7 +15,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ - + #ifndef __REPORT_H__ #define __REPORT_H__ #include <gtk/gtk.h> @@ -24,6 +24,7 @@ typedef enum { REPORT_FORMAT_HTML, REPORT_FORMAT_TEXT, + REPORT_FORMAT_SHELL, N_REPORT_FORMAT } ReportFormat; @@ -41,22 +42,29 @@ typedef struct _ReportContext ReportContext; struct _ReportContext { ShellModuleEntry *entry; gchar *output; - + void (*header) (ReportContext *ctx); void (*footer) (ReportContext *ctx); void (*title) (ReportContext *ctx, gchar *text); void (*subtitle) (ReportContext *ctx, gchar *text); void (*subsubtitle) (ReportContext *ctx, gchar *text); - void (*keyvalue) (ReportContext *ctx, gchar *key, gchar *value); - + void (*keyvalue) (ReportContext *ctx, gchar *key, gchar *value, gsize longest_key); + + void (*details_start) (ReportContext *ctx, gchar *key, gchar *value, gsize longest_key); + void (*details_section) (ReportContext *ctx, gchar *name); + void (*details_keyvalue) (ReportContext *ctx, gchar *key, gchar *value, gsize longest_key); + void (*details_end) (ReportContext *ctx); + ReportFormat format; - - gboolean is_image_enabled; + gboolean first_table; + gboolean in_details; gboolean show_column_headers; - guint columns; + guint columns, parent_columns; GHashTable *column_titles; + GHashTable *icon_refs; + GHashTable *icon_data; }; struct _ReportDialog { @@ -67,7 +75,7 @@ struct _ReportDialog { GtkWidget *btn_sel_all; GtkWidget *btn_sel_none; GtkWidget *treeview; - + GtkTreeModel *model; }; @@ -75,14 +83,16 @@ void report_dialog_show(); ReportContext *report_context_html_new(); ReportContext *report_context_text_new(); +ReportContext *report_context_shell_new(); void report_header (ReportContext *ctx); void report_footer (ReportContext *ctx); void report_title (ReportContext *ctx, gchar *text); void report_subtitle (ReportContext *ctx, gchar *text); void report_subsubtitle (ReportContext *ctx, gchar *text); -void report_key_value (ReportContext *ctx, gchar *key, gchar *value); +void report_key_value (ReportContext *ctx, gchar *key, gchar *value, gsize longest_key); void report_table (ReportContext *ctx, gchar *text); +void report_details (ReportContext *ctx, gchar *key, gchar *value, gchar *details, gsize longest_key); void report_create_from_module_list(ReportContext *ctx, GSList *modules); gchar *report_create_from_module_list_format(GSList *modules, ReportFormat format); |