diff options
Diffstat (limited to 'report.h')
-rw-r--r-- | report.h | 40 |
1 files changed, 36 insertions, 4 deletions
@@ -1,6 +1,6 @@ /* * HardInfo - Displays System Information - * Copyright (C) 2003-2006 Leandro A. F. Pereira <leandro@linuxmag.com.br> + * Copyright (C) 2003-2007 Leandro A. F. Pereira <leandro@linuxmag.com.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 @@ -21,14 +21,29 @@ #include <gtk/gtk.h> #include <shell.h> +typedef enum { + REPORT_FORMAT_HTML, + REPORT_FORMAT_TEXT, + N_REPORT_FORMAT +} ReportFormat; + typedef struct _ReportDialog ReportDialog; typedef struct _ReportContext ReportContext; struct _ReportContext { - ReportDialog *rd; 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); - FILE *stream; + ReportFormat format; + + gboolean is_image_enabled; }; struct _ReportDialog { @@ -43,6 +58,23 @@ struct _ReportDialog { GtkTreeModel *model; }; -void report_dialog_show(); +void report_dialog_show(); + +ReportContext *report_context_html_new(); +ReportContext *report_context_text_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_table (ReportContext *ctx, gchar *text); + +void report_create_from_module_list(ReportContext *ctx, GSList *modules); +gchar *report_create_from_module_list_format(GSList *modules, ReportFormat format); + +void report_context_free(ReportContext *ctx); +void report_module_list_free(GSList *modules); #endif /* __REPORT_H__ */ |