From 5f01c706267c595de92406a32e7f31ef5056c2d0 Mon Sep 17 00:00:00 2001 From: Lucas de Castro Borges Date: Mon, 22 Apr 2024 00:35:53 -0300 Subject: New upstream version 2.0.3pre --- includes/report.h | 32 +++++++++++++++++++++----------- 1 file changed, 21 insertions(+), 11 deletions(-) (limited to 'includes/report.h') 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 + * Copyright (C) 2003-2007 L. A. F. Pereira * * 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 @@ -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); -- cgit v1.2.3