summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBurt P <pburt0@gmail.com>2017-07-12 02:03:39 -0500
committerLeandro Pereira <leandro@hardinfo.org>2017-07-12 19:38:41 -0700
commit568a3775872df58afbbf2c6acaffe3ef2cdec961 (patch)
tree66a9a9bcef33801c86fa80345c4435e439058434
parent88d8efe0000894c9a771453692aeda56dc72a024 (diff)
Changes related to gettext and shell interface quirks
* Fixes for "..." special fields. * Computer->Summary and Computer->OS are more translatable, and and if the label is translated, the special code for updating the ... will still work. * Devices->Memory labels are currently not translated, some limitations exist. The labels were being double-translated on update. The earlier fix for Summary->RAM breaks if they are translated. * A bunch of trailing whitespace in the edited files was removed by the editor, and that created some noise in the diff. A rather frustrating experience. Signed-off-by: Burt P <pburt0@gmail.com>
-rw-r--r--modules/computer.c235
-rw-r--r--modules/devices/devmemory.c9
-rw-r--r--shell/shell.c146
3 files changed, 229 insertions, 161 deletions
diff --git a/modules/computer.c b/modules/computer.c
index eda405e8..8f1e8c87 100644
--- a/modules/computer.c
+++ b/modules/computer.c
@@ -189,7 +189,7 @@ static gchar *dev_list = NULL;
void scan_dev(gboolean reload)
{
SCAN_START();
-
+
int i;
struct {
gchar *compiler_name;
@@ -222,11 +222,11 @@ void scan_dev(gboolean reload)
{ N_("QMake"), "qmake --version", "\\d+\\.\\S+", TRUE},
{ N_("CMake"), "cmake --version", "\\d+\\.\\d+\\.?\\d*", TRUE},
};
-
+
g_free(dev_list);
-
+
dev_list = g_strdup("");
-
+
for (i = 0; i < G_N_ELEMENTS(detect_lang); i++) {
gchar *version = NULL;
gchar *output;
@@ -234,18 +234,18 @@ void scan_dev(gboolean reload)
GRegex *regex;
GMatchInfo *match_info;
gboolean found;
-
+
if (!detect_lang[i].regex) {
dev_list = h_strdup_cprintf("[%s]\n", dev_list, detect_lang[i].compiler_name);
continue;
}
-
+
if (detect_lang[i].stdout) {
found = g_spawn_command_line_sync(detect_lang[i].version_command, &output, NULL, NULL, NULL);
} else {
found = g_spawn_command_line_sync(detect_lang[i].version_command, NULL, &output, NULL, NULL);
}
-
+
if (found) {
regex = g_regex_new(detect_lang[i].regex, 0, 0, NULL);
@@ -253,25 +253,25 @@ void scan_dev(gboolean reload)
if (g_match_info_matches(match_info)) {
version = g_match_info_fetch(match_info, 0);
}
-
+
g_match_info_free(match_info);
g_regex_unref(regex);
g_free(output);
}
-
+
if (version) {
dev_list = h_strdup_cprintf("%s=%s\n", dev_list, detect_lang[i].compiler_name, version);
g_free(version);
} else {
dev_list = h_strdup_cprintf(_("%s=Not found\n"), dev_list, detect_lang[i].compiler_name);
}
-
+
temp = g_strdup_printf(_("Detecting version: %s"),
detect_lang[i].compiler_name);
shell_status_update(temp);
g_free(temp);
}
-
+
SCAN_END();
}
@@ -324,18 +324,18 @@ gchar *computer_get_virtualization()
{ " hypervisor", "Virtual (hypervisor present)"} ,
{ NULL }
};
-
+
DEBUG("Detecting virtual machine");
if (g_file_test("/proc/xen", G_FILE_TEST_EXISTS)) {
DEBUG("/proc/xen found; assuming Xen");
return g_strdup("Xen");
}
-
+
for (i = 0; files[i+1]; i++) {
gchar buffer[512];
FILE *file;
-
+
if ((file = fopen(files[i], "r"))) {
while (!found && fgets(buffer, 512, file)) {
for (j = 0; vm_types[j+1].str; j++) {
@@ -345,20 +345,20 @@ gchar *computer_get_virtualization()
}
}
}
-
+
fclose(file);
-
+
if (found) {
DEBUG("%s found (by reading file %s)",
vm_types[j].vmtype, files[i]);
return g_strdup(vm_types[j].vmtype);
}
}
-
+
}
-
+
DEBUG("no virtual machine detected; assuming physical machine");
-
+
return g_strdup(_("Physical machine"));
}
@@ -368,7 +368,7 @@ gchar *callback_summary()
gchar *input_devices, *printers;
gchar *storage_devices, *summary;
gchar *virt;
-
+
processor_name = module_call_method("devices::getProcessorName");
alsa_cards = computer_get_alsacards(computer);
input_devices = module_call_method("devices::getInputDevices");
@@ -376,35 +376,66 @@ gchar *callback_summary()
storage_devices = module_call_method("devices::getStorageDevices");
virt = computer_get_virtualization();
- summary = g_strdup_printf(_("[$ShellParam$]\n"
- "UpdateInterval$Memory=1000\n"
- "UpdateInterval$Date/Time=1000\n"
- "#ReloadInterval=5000\n"
- "[Computer]\n"
- "Processor=%s\n"
- "Memory=...\n"
- "Machine Type=%s\n"
- "Operating System=%s\n"
- "User Name=%s\n"
- "Date/Time=...\n"
- "[Display]\n"
- "Resolution=%dx%d pixels\n"
- "OpenGL Renderer=%s\n"
- "X11 Vendor=%s\n"
- "\n%s\n"
- "[Input Devices]\n%s\n"
- "\n%s\n"
- "\n%s\n"),
- processor_name,
- virt,
- computer->os->distro,
- computer->os->username,
- computer->display->width,
- computer->display->height,
- computer->display->ogl_renderer,
- computer->display->vendor,
- alsa_cards,
- input_devices, printers, storage_devices);
+ /* keep translations in the .po until the old labels can be salvaged */
+ gchar *save_me = N_("[$ShellParam$]\n"
+ "UpdateInterval$Memory=1000\n"
+ "UpdateInterval$Date/Time=1000\n"
+ "#ReloadInterval=5000\n"
+ "[Computer]\n"
+ "Processor=%s\n"
+ "Memory=...\n"
+ "Machine Type=%s\n"
+ "Operating System=%s\n"
+ "User Name=%s\n"
+ "Date/Time=...\n"
+ "[Display]\n"
+ "Resolution=%dx%d pixels\n"
+ "OpenGL Renderer=%s\n"
+ "X11 Vendor=%s\n"
+ "\n%s\n"
+ "[Input Devices]\n%s\n"
+ "\n%s\n"
+ "\n%s\n");
+
+ summary = g_strdup_printf("[$ShellParam$]\n"
+ "UpdateInterval$%s=1000\n"
+ "UpdateInterval$%s=1000\n"
+ "#ReloadInterval=5000\n"
+ "[%s]\n"
+/*Processor*/ "%s=%s\n"
+/*Memory*/ "%s=...\n"
+/*Machine Type*/ "%s=%s\n"
+/*Operating Sys*/ "%s=%s\n"
+/*User Name*/ "%s=%s\n"
+/*Date/Time*/ "%s=...\n"
+ "[%s]\n"
+/*Resolution*/ "%s=%dx%d pixels\n"
+/*OpenGL Rend*/ "%s=%s\n"
+/*X11 Vendor*/ "%s=%s\n"
+ "\n%s\n"
+/*Input Devices*/ "[%s]\n%s\n"
+ "\n%s\n"
+ "\n%s\n",
+
+ /* Update Intervals */
+ _("Memory"),
+ _("Date/Time"),
+
+ _("Computer"),
+ _("Processor"), processor_name,
+ _("Memory"),
+ _("Machine Type"), virt,
+ _("Operating System"), computer->os->distro,
+ _("User Name"), computer->os->username,
+ _("Date/Time"),
+ _("Display"),
+ _("Resolution"),
+ computer->display->width, computer->display->height,
+ _("OpenGL Renderer"), computer->display->ogl_renderer,
+ _("X11 Vendor"), computer->display->vendor,
+ alsa_cards,
+ _("Input Devices"),
+ input_devices, printers, storage_devices);
g_free(processor_name);
g_free(alsa_cards);
@@ -418,34 +449,68 @@ gchar *callback_summary()
gchar *callback_os()
{
- return g_strdup_printf(_("[$ShellParam$]\n"
- "UpdateInterval$Uptime=10000\n"
- "UpdateInterval$Load Average=1000\n"
- "UpdateInterval$Available entropy in /dev/random=1000\n"
- "[Version]\n"
- "Kernel=%s\n"
- "Version=%s\n"
- "C Library=%s\n"
- "Distribution=%s\n"
- "[Current Session]\n"
- "Computer Name=%s\n"
- "User Name=%s\n"
- "#Language=%s\n"
- "Home Directory=%s\n"
- "Desktop Environment=%s\n"
- "[Misc]\n"
- "Uptime=...\n"
- "Load Average=...\n"
- "Available entropy in /dev/random=..."),
- computer->os->kernel,
- computer->os->kernel_version,
- computer->os->libc,
- computer->os->distro,
- computer->os->hostname,
- computer->os->username,
- computer->os->language,
- computer->os->homedir,
- computer->os->desktop);
+ /* keep translations in the .po until the old labels can be salvaged */
+ gchar* save_me = N_("[$ShellParam$]\n"
+ "UpdateInterval$Uptime=10000\n"
+ "UpdateInterval$Load Average=1000\n"
+ "UpdateInterval$Available entropy in /dev/random=1000\n"
+ "[Version]\n"
+ "Kernel=%s\n"
+ "Version=%s\n"
+ "C Library=%s\n"
+ "Distribution=%s\n"
+ "[Current Session]\n"
+ "Computer Name=%s\n"
+ "User Name=%s\n"
+ "#Language=%s\n"
+ "Home Directory=%s\n"
+ "Desktop Environment=%s\n"
+ "[Misc]\n"
+ "Uptime=...\n"
+ "Load Average=...\n"
+ "Available entropy in /dev/random=...\n");
+
+ return g_strdup_printf("[$ShellParam$]\n"
+ "UpdateInterval$%s=10000\n"
+ "UpdateInterval$%s=1000\n"
+ "UpdateInterval$%s=1000\n"
+
+ "[%s]\n"
+/*Kernel*/ "%s=%s\n"
+/*Version*/ "%s=%s\n"
+/*C Library*/ "%s=%s\n"
+/*Distribution*/ "%s=%s\n"
+ "[%s]\n"
+/*Computer Name*/ "%s=%s\n"
+/*User Name*/ "%s=%s\n"
+/*#Language*/ "%s=%s\n"
+/*Home Dir*/ "%s=%s\n"
+/*Desktop Env*/ "%s=%s\n"
+ "[%s]\n"
+/*Uptime*/ "%s=...\n"
+/*Load Average*/ "%s=...\n"
+/*Entropy*/ "%s=...\n",
+
+ /* Update Intervals */
+ _("Uptime"),
+ _("Available entropy in /dev/random"),
+ _("Load Average"),
+
+ _("Version"),
+ _("Kernel"), computer->os->kernel,
+ _("Version"), computer->os->kernel_version,
+ _("C Library"), computer->os->libc,
+ _("Distribution"), computer->os->distro,
+ _("Current Session"),
+ _("Computer Name"), computer->os->hostname,
+ _("User Name"), computer->os->username,
+ _("#Language"), computer->os->language,
+ _("Home Directory"), computer->os->homedir,
+ _("Desktop Environment"), computer->os->desktop,
+ _("Misc"),
+ _("Uptime"),
+ _("Load Average"),
+ _("Available entropy in /dev/random") );
}
gchar *callback_modules()
@@ -569,16 +634,16 @@ gchar *get_display_summary(void)
gchar *get_kernel_module_description(gchar *module)
{
gchar *description;
-
+
if (!_module_hash_table) {
scan_modules(FALSE);
}
-
+
description = g_hash_table_lookup(_module_hash_table, module);
if (!description) {
return NULL;
}
-
+
return g_strdup(description);
}
@@ -587,7 +652,7 @@ gchar *get_audio_cards(void)
if (!computer->alsa) {
computer->alsa = computer_get_alsainfo();
}
-
+
return computer_get_alsacards(computer);
}
@@ -672,7 +737,7 @@ void hi_module_deinit(void)
g_free(computer->os->boots);
g_free(computer->os);
}
-
+
if (computer->display) {
g_free(computer->display->ogl_vendor);
g_free(computer->display->ogl_renderer);
@@ -684,15 +749,15 @@ void hi_module_deinit(void)
g_free(computer->display->monitors);
g_free(computer->display);
}
-
+
if (computer->alsa) {
g_slist_free(computer->alsa->cards);
g_free(computer->alsa);
}
-
+
g_free(computer->date_time);
g_free(computer);
-
+
moreinfo_del_with_prefix("COMP");
}
diff --git a/modules/devices/devmemory.c b/modules/devices/devmemory.c
index 8fef9d6b..a3211895 100644
--- a/modules/devices/devmemory.c
+++ b/modules/devices/devmemory.c
@@ -61,13 +61,16 @@ void scan_memory_do(void)
g_strstrip(newkeys[1]);
/* try to find a localizable label */
- tmp_label = g_hash_table_lookup(memlabels, newkeys[0]);
- if (tmp_label == NULL)
+ tmp = g_hash_table_lookup(memlabels, newkeys[0]);
+ if (tmp)
+ tmp_label = _(tmp);
+ else
tmp_label = newkeys[0];
+ /* although it doesn't matter... */
moreinfo_add_with_prefix("DEV", newkeys[0], g_strdup(newkeys[1]));
- tmp = g_strconcat(meminfo, _(tmp_label), "=", newkeys[1], "\n", NULL);
+ tmp = g_strconcat(meminfo, newkeys[0], "=", newkeys[1], "\n", NULL);
g_free(meminfo);
meminfo = tmp;
diff --git a/shell/shell.c b/shell/shell.c
index eb72f431..20bdcdbe 100644
--- a/shell/shell.c
+++ b/shell/shell.c
@@ -358,12 +358,12 @@ static ShellNote *note_new(void)
note->label = gtk_label_new("");
note->event_box = gtk_event_box_new();
button = gtk_button_new();
-
+
border_box = gtk_event_box_new();
gtk_container_set_border_width(GTK_CONTAINER(border_box), 1);
gtk_container_add(GTK_CONTAINER(note->event_box), border_box);
gtk_widget_show(border_box);
-
+
gtk_widget_modify_bg(border_box, GTK_STATE_NORMAL, &info_default_fill_color);
gtk_widget_modify_bg(note->event_box, GTK_STATE_NORMAL, &info_default_border_color);
@@ -395,7 +395,7 @@ void shell_set_title(Shell *shell, gchar *subtitle)
tmp = g_strdup_printf(_("%s - System Information"), subtitle);
gtk_window_set_title(GTK_WINDOW(shell->window), tmp);
-
+
g_free(tmp);
} else {
gtk_window_set_title(GTK_WINDOW(shell->window), _("System Information"));
@@ -479,7 +479,7 @@ static void menu_item_set_icon_always_visible(Shell *shell,
{
GtkWidget *menuitem;
gchar *path;
-
+
path = g_strdup_printf("%s/%s", parent_path, item_id);
menuitem = gtk_ui_manager_get_widget(shell->ui_manager, path);
#if GTK_CHECK_VERSION(2, 18, 0)
@@ -533,7 +533,7 @@ static void add_module_to_menu(gchar * name, GdkPixbuf * pixbuf)
"/menubar/ViewMenu/LastSep",
name, name, GTK_UI_MANAGER_MENU, TRUE);
shell->merge_ids = g_slist_prepend(shell->merge_ids, GINT_TO_POINTER(merge_id));
-
+
merge_id = gtk_ui_manager_new_merge_id(shell->ui_manager);
gtk_ui_manager_add_ui(shell->ui_manager,
merge_id,
@@ -579,7 +579,7 @@ add_module_entry_to_view_menu(gchar * module, gchar * name,
shell->merge_ids = g_slist_prepend(shell->merge_ids, GINT_TO_POINTER(merge_id));
menu_item_set_icon_always_visible(shell, path, name);
-
+
g_free(path);
}
@@ -589,7 +589,7 @@ void shell_add_modules_to_gui(gpointer _shell_module, gpointer _shell_tree)
ShellTree *shelltree = (ShellTree *) _shell_tree;
GtkTreeStore *store = GTK_TREE_STORE(shelltree->model);
GtkTreeIter parent;
-
+
if (!module) {
return;
}
@@ -645,7 +645,7 @@ static void __tree_iter_destroy(gpointer data)
ShellSummary *summary_new(void)
{
ShellSummary *summary;
-
+
summary = g_new0(ShellSummary, 1);
summary->scroll = gtk_scrolled_window_new(NULL, NULL);
summary->view = gtk_vbox_new(FALSE, 5);
@@ -657,7 +657,7 @@ ShellSummary *summary_new(void)
GTK_POLICY_AUTOMATIC);
gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(summary->scroll),
summary->view);
- gtk_widget_show_all(summary->scroll);
+ gtk_widget_show_all(summary->scroll);
return summary;
}
@@ -684,7 +684,7 @@ void shell_init(GSList * modules)
shell->moreinfo = info_tree_new(TRUE);
shell->loadgraph = load_graph_new(75);
shell->summary = summary_new();
-
+
update_tbl = g_hash_table_new_full(g_str_hash, g_str_equal,
g_free, __tree_iter_destroy);
@@ -700,7 +700,7 @@ void shell_init(GSList * modules)
NULL);
gtk_notebook_append_page(GTK_NOTEBOOK(shell->notebook),
shell->summary->scroll, NULL);
-
+
gtk_notebook_set_show_tabs(GTK_NOTEBOOK(shell->notebook), FALSE);
gtk_notebook_set_show_border(GTK_NOTEBOOK(shell->notebook), FALSE);
@@ -726,7 +726,7 @@ void shell_init(GSList * modules)
shell_action_set_enabled("SaveGraphAction", FALSE);
shell_action_set_active("SidePaneAction", TRUE);
shell_action_set_active("ToolbarAction", TRUE);
-
+
#ifndef HAS_LIBSOUP
shell_action_set_enabled("SyncManagerAction", FALSE);
#else
@@ -738,21 +738,21 @@ static gboolean update_field(gpointer data)
{
ShellFieldUpdate *fu;
GtkTreeIter *iter;
-
+
fu = (ShellFieldUpdate *) data;
g_return_val_if_fail(fu != NULL, FALSE);
-
+
DEBUG("update_field [%s]", fu->field_name);
-
+
iter = g_hash_table_lookup(update_tbl, fu->field_name);
if (!iter) {
return FALSE;
}
-
+
/* if the entry is still selected, update it */
if (iter && fu->entry->selected && fu->entry->fieldfunc) {
GtkTreeStore *store = GTK_TREE_STORE(shell->info->model);
- gchar *value = fu->entry->fieldfunc(_(fu->field_name));
+ gchar *value = fu->entry->fieldfunc(fu->field_name);
/*
* this function is also used to feed the load graph when ViewType
@@ -808,14 +808,14 @@ static gboolean reload_section(gpointer data)
GtkTreePath *path = NULL;
GtkTreeIter iter;
double pos_info_scroll, pos_more_scroll;
-
+
/* save current position */
pos_info_scroll = RANGE_GET_VALUE(info, vscrollbar);
pos_more_scroll = RANGE_GET_VALUE(moreinfo, vscrollbar);
-
+
/* avoid drawing the window while we reload */
gdk_window_freeze_updates(shell->window->window);
-
+
/* gets the current selected path */
if (gtk_tree_selection_get_selected
(shell->info->selection, &shell->info->model, &iter)) {
@@ -838,7 +838,7 @@ static gboolean reload_section(gpointer data)
RANGE_SET_VALUE(info, vscrollbar, pos_info_scroll);
RANGE_SET_VALUE(moreinfo, vscrollbar, pos_more_scroll);
}
-
+
/* make the window drawable again */
gdk_window_thaw_updates(shell->window->window);
}
@@ -909,7 +909,7 @@ static void set_view_type(ShellViewType viewtype, gboolean reload)
gtk_tree_view_column_set_visible(shell->info->col_progress, FALSE);
gtk_tree_view_column_set_visible(shell->info->col_value, TRUE);
}
-
+
/* turn off the rules hint */
gtk_tree_view_set_rules_hint(GTK_TREE_VIEW(shell->info->view), FALSE);
@@ -923,7 +923,7 @@ static void set_view_type(ShellViewType viewtype, gboolean reload)
case SHELL_VIEW_NORMAL:
gtk_widget_show(shell->info->scroll);
gtk_widget_hide(shell->notebook);
-
+
if (!reload) {
gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(shell->info->view), FALSE);
}
@@ -956,12 +956,12 @@ static void set_view_type(ShellViewType viewtype, gboolean reload)
case SHELL_VIEW_PROGRESS:
gtk_widget_show(shell->info->scroll);
shell_action_set_enabled("SaveGraphAction", TRUE);
-
+
if (!reload) {
gtk_tree_view_column_set_visible(shell->info->col_progress, TRUE);
gtk_tree_view_column_set_visible(shell->info->col_value, FALSE);
}
-
+
if (viewtype == SHELL_VIEW_PROGRESS)
gtk_widget_hide(shell->notebook);
break;
@@ -1104,11 +1104,11 @@ group_handle_normal(GKeyFile * key_file, ShellModuleEntry * entry,
gchar *value;
GtkTreeIter child;
- value = g_key_file_get_value(key_file, group, key, NULL);
- if (entry->fieldfunc && value && g_str_equal(value, "...")) {
- g_free(value);
- value = entry->fieldfunc(_(key));
- }
+ value = g_key_file_get_value(key_file, group, key, NULL);
+ if (entry->fieldfunc && value && g_str_equal(value, "...")) {
+ g_free(value);
+ value = entry->fieldfunc(key);
+ }
if ((key && value) && g_utf8_validate(key, -1, NULL) && g_utf8_validate(value, -1, NULL)) {
if (ngroups == 1) {
@@ -1116,7 +1116,7 @@ group_handle_normal(GKeyFile * key_file, ShellModuleEntry * entry,
} else {
gtk_tree_store_append(store, &child, &parent);
}
-
+
/* FIXME: use g_key_file_get_string_list? */
if (g_utf8_strchr(value, -1, '|')) {
gchar **columns = g_strsplit(value, "|", 0);
@@ -1284,7 +1284,7 @@ void shell_clear_field_updates(void)
{
if (update_sfusrc) {
GSList *sfusrc;
-
+
for (sfusrc = update_sfusrc; sfusrc; sfusrc = sfusrc->next) {
ShellFieldUpdateSource *src =
(ShellFieldUpdateSource *) sfusrc->data;
@@ -1336,7 +1336,7 @@ module_selected_show_info(ShellModuleEntry * entry, gboolean reload)
/* recreate the iter hash table */
h_hash_table_remove_all(update_tbl);
}
-
+
shell_clear_field_updates();
store = GTK_TREE_STORE(shell->info->model);
@@ -1364,12 +1364,12 @@ module_selected_show_info(ShellModuleEntry * entry, gboolean reload)
g_strfreev(keys);
}
-
+
/* */
if (!has_shell_param) {
gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(shell->info->view), FALSE);
}
-
+
/* */
g_object_unref(shell->info->model);
gtk_tree_view_set_model(GTK_TREE_VIEW(shell->info->view), shell->info->model);
@@ -1446,7 +1446,7 @@ static gchar *shell_summary_clear_value(gchar *value)
{
GKeyFile *keyfile;
gchar *return_value;
-
+
keyfile = g_key_file_new();
if (!value) return_value = g_strdup("");
else
@@ -1454,18 +1454,18 @@ static gchar *shell_summary_clear_value(gchar *value)
strlen(value), 0, NULL)) {
gchar **groups;
gint group;
-
+
return_value = g_strdup("");
-
+
groups = g_key_file_get_groups(keyfile, NULL);
for (group = 0; groups[group]; group++) {
gchar **keys;
gint key;
-
+
keys = g_key_file_get_keys(keyfile, groups[group], NULL, NULL);
for (key = 0; keys[key]; key++) {
gchar *temp = keys[key];
-
+
if (*temp == '$') {
temp++;
while (*temp && *temp != '$')
@@ -1478,17 +1478,17 @@ static gchar *shell_summary_clear_value(gchar *value)
keys[key], NULL);
}
}
-
+
g_strfreev(keys);
}
-
+
g_strfreev(groups);
} else {
return_value = g_strdup(value);
}
-
+
g_key_file_free(keyfile);
-
+
return g_strstrip(return_value);
}
@@ -1504,9 +1504,9 @@ static void shell_summary_add_item(ShellSummary *summary,
GtkWidget *content;
GtkWidget *alignment;
gchar *temp;
-
+
temp = shell_summary_clear_value(value);
-
+
/* creates the frame */
frame = gtk_frame_new(NULL);
gtk_frame_set_shadow_type(GTK_FRAME(frame),
@@ -1530,29 +1530,29 @@ static void shell_summary_add_item(ShellSummary *summary,
gtk_widget_show_all(frame);
gtk_widget_show_all(frame_label_box);
-
+
gtk_frame_set_label_widget(GTK_FRAME(frame), frame_label_box);
-
+
/* pack the item on the summary screen */
gtk_box_pack_start(GTK_BOX(shell->summary->view), frame, FALSE, FALSE, 4);
/* add the item to the list of summary items */
summary->items = g_slist_prepend(summary->items, frame);
-
+
g_free(temp);
}
static void shell_summary_clear(ShellSummary *summary)
{
GSList *item;
-
+
for (item = summary->items; item; item = item->next) {
gtk_widget_destroy(GTK_WIDGET(item->data));
}
-
+
g_slist_free(summary->items);
summary->items = NULL;
-
+
if (summary->header) gtk_widget_destroy(summary->header);
summary->header = NULL;
}
@@ -1561,20 +1561,20 @@ static void shell_summary_create_header(ShellSummary *summary,
{
GtkWidget *header, *label;
gchar *temp;
-
+
temp = g_strdup_printf(_("<b>%s \342\206\222 Summary</b>"), title);
-
+
header = gtk_menu_item_new_with_label(temp);
gtk_menu_item_select(GTK_MENU_ITEM(header));
gtk_widget_show(header);
-
+
label = gtk_bin_get_child(GTK_BIN(header));
gtk_label_set_use_markup(GTK_LABEL(label), TRUE);
-
+
gtk_box_pack_start(GTK_BOX(shell->summary->view), header, FALSE, FALSE, 4);
-
+
summary->header = header;
-
+
g_free(temp);
}
@@ -1586,20 +1586,20 @@ static void shell_show_summary(void)
set_view_type(SHELL_VIEW_SUMMARY, FALSE);
shell_summary_clear(shell->summary);
shell_summary_create_header(shell->summary, shell->selected_module->name);
-
+
keyfile = g_key_file_new();
summary = shell->selected_module->summaryfunc();
-
+
if (g_key_file_load_from_data(keyfile, summary,
strlen(summary), 0, NULL)) {
gchar **groups;
gint group;
-
+
groups = g_key_file_get_groups(keyfile, NULL);
-
+
for (group = 0; groups[group]; group++) {
gchar *icon, *method, *method_result;
-
+
shell_status_pulse();
icon = g_key_file_get_string(keyfile, groups[group], "Icon", NULL);
@@ -1609,25 +1609,25 @@ static void shell_show_summary(void)
} else {
method_result = g_strdup("N/A");
}
-
+
shell_summary_add_item(shell->summary,
icon, groups[group], method_result);
shell_status_pulse();
-
+
g_free(icon);
g_free(method);
g_free(method_result);
}
-
+
g_strfreev(groups);
} else {
DEBUG("error while parsing summary");
set_view_type(SHELL_VIEW_NORMAL, FALSE);
- }
-
+ }
+
g_free(summary);
g_key_file_free(keyfile);
-
+
shell_view_set_enabled(TRUE);
}
@@ -1646,7 +1646,7 @@ static void module_selected(gpointer data)
return;
}
- /* Mark the currently selected module as "unselected"; this is used to kill the
+ /* Mark the currently selected module as "unselected"; this is used to kill the
update timeout. */
if (current) {
current->selected = FALSE;
@@ -1661,7 +1661,7 @@ static void module_selected(gpointer data)
if (!gtk_tree_model_iter_parent(model, &parent, &iter)) {
memcpy(&parent, &iter, sizeof(iter));
}
-
+
gtk_tree_model_get(model, &parent, TREE_COL_MODULE, &shell->selected_module, -1);
/* Get the current selection and shows its related info */
@@ -1675,7 +1675,7 @@ static void module_selected(gpointer data)
entry->selected = TRUE;
shell->selected = entry;
module_selected_show_info(entry, FALSE);
-
+
info_selected_show_extra(NULL); /* clears the more info store */
gtk_tree_view_columns_autosize(GTK_TREE_VIEW(shell->info->view));
@@ -1720,7 +1720,7 @@ static void info_selected(GtkTreeSelection * ts, gpointer data)
if (!gtk_tree_selection_get_selected(ts, &model, &parent))
return;
-
+
if (shell->view_type == SHELL_VIEW_NORMAL ||
shell->view_type == SHELL_VIEW_PROGRESS) {
gtk_tree_selection_unselect_all(ts);