summaryrefslogtreecommitdiff
path: root/report.h
diff options
context:
space:
mode:
Diffstat (limited to 'report.h')
-rw-r--r--report.h40
1 files changed, 36 insertions, 4 deletions
diff --git a/report.h b/report.h
index e2bfc912..bf93d9b0 100644
--- a/report.h
+++ b/report.h
@@ -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__ */