summaryrefslogtreecommitdiff
path: root/hardinfo.h
diff options
context:
space:
mode:
Diffstat (limited to 'hardinfo.h')
-rw-r--r--hardinfo.h94
1 files changed, 86 insertions, 8 deletions
diff --git a/hardinfo.h b/hardinfo.h
index 287119a5..97d3aeea 100644
--- a/hardinfo.h
+++ b/hardinfo.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
@@ -20,18 +20,96 @@
#define __HARDINFO_H__
#include <gtk/gtk.h>
+#include <shell.h>
-typedef struct _ModuleEntry ModuleEntry;
+typedef struct _ModuleEntry ModuleEntry;
+typedef struct _ModuleAbout ModuleAbout;
+typedef struct _FileTypes FileTypes;
+typedef struct _ProgramParameters ProgramParameters;
+
+struct _ProgramParameters {
+ gboolean create_report;
+ gboolean show_version;
+ gboolean gui_running;
+ gboolean list_modules;
+ gboolean autoload_deps;
+
+ gint report_format;
+
+ gchar **use_modules;
+ gchar *path_lib;
+ gchar *path_data;
+};
+
+struct _FileTypes {
+ gchar *name;
+ gchar *mime_type;
+ gchar *extension;
+ gpointer data;
+};
struct _ModuleEntry {
- gchar *name;
- gchar *icon;
+ gchar *name;
+ gchar *icon;
+ gpointer callback;
+ gpointer scan_callback;
};
-inline void remove_quotes(gchar *str);
-inline void strend(gchar *str, gchar chr);
-inline void remove_linefeed(gchar *str);
- void widget_set_cursor(GtkWidget *widget, GdkCursorType cursor_type);
+struct _ModuleAbout {
+ const gchar *description;
+ const gchar *author;
+ const gchar *version;
+ const gchar *license;
+};
+
+/* String utility functions */
+inline void remove_quotes(gchar *str);
+inline void strend(gchar *str, gchar chr);
+inline void remove_linefeed(gchar *str);
+gchar *strreplace(gchar *string, gchar *replace, gchar new_char);
+
+/* Widget utility functions */
+void widget_set_cursor(GtkWidget *widget, GdkCursorType cursor_type);
+gint tree_view_get_visible_height(GtkTreeView *tv);
+void tree_view_save_image(gchar *filename);
+
+/* File Chooser utility functions */
+void file_chooser_open_expander(GtkWidget *chooser);
+void file_chooser_add_filters(GtkWidget *chooser, FileTypes *filters);
+gchar *file_chooser_get_extension(GtkWidget *chooser, FileTypes *filters);
+gchar *file_chooser_build_filename(GtkWidget *chooser, gchar *extension);
+gpointer file_types_get_data_by_name(FileTypes *file_types, gchar *name);
+
+/* Misc utility functions */
+gpointer idle_free(gpointer ptr);
inline gchar *size_human_readable(gfloat size);
+void nonblock_sleep(guint msec);
+void open_url(gchar *url);
+GSList *modules_load_selected(void);
+GSList *modules_load_all(void);
+ModuleAbout *module_get_about(ShellModule *module);
+gchar *seconds_to_string(unsigned int seconds);
+
+void module_entry_scan_all_except(ModuleEntry *entries, gint except_entry);
+void module_entry_scan_all(ModuleEntry *entries);
+void module_entry_reload(ShellModuleEntry *module_entry);
+void module_entry_scan(ShellModuleEntry *module_entry);
+gchar *module_entry_function(ShellModuleEntry *module_entry);
+const gchar *module_entry_get_note(ShellModuleEntry *module_entry);
+
+/* BinReloc stuff */
+gboolean binreloc_init(gboolean try_hardcoded);
+
+/* GTK UI stuff */
+gboolean ui_init(int *argc, char ***argv);
+void parameters_init(int *argc, char ***argv, ProgramParameters *params);
+extern ProgramParameters params;
+
+/* Module stuff */
+gchar *module_call_method(gchar *method);
+
+
+#define SCAN_START() static gboolean scanned = FALSE; if (reload) scanned = FALSE; if (scanned) return;
+#define SCAN_END() scanned = TRUE;
#endif /* __HARDINFO_H__ */