summaryrefslogtreecommitdiff
path: root/src/gui
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2018-06-04 21:29:51 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2018-06-04 21:29:51 (GMT)
commit2141476200ac16213c9d567708c081857bf7eb8c (patch)
tree5ddaa8958a9d1b5a1deb86f70bf80e71581cf337 /src/gui
parent9593501b2e1a25e0e0201276733dc0cbd602ac93 (diff)
Measured the number of binary portions to load.
Diffstat (limited to 'src/gui')
-rw-r--r--src/gui/panels/bintree.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/gui/panels/bintree.c b/src/gui/panels/bintree.c
index 642a71c..ecb18fe 100644
--- a/src/gui/panels/bintree.c
+++ b/src/gui/panels/bintree.c
@@ -166,6 +166,8 @@ struct _bintree_update_data
const GBintreePanel *panel; /* Transfert de panneau */
GtkTreeIter *top; /* Transfert de racine */
+ GtkStatusStack *status; /* Transfert de statut */
+ activity_id_t id; /* Transfert d'activité */
};
@@ -623,6 +625,7 @@ static bool populate_tree_with_portion(GBinPortion *portion, GBinPortion *parent
update_bintree_node(data, store, &iter, portion);
+ gtk_status_stack_update_activity_value(data->status, data->id, 1);
}
@@ -674,6 +677,7 @@ static void reload_portions_for_new_tree_view(const GBintreePanel *panel, GtkSta
GtkTreeStore *store; /* Modèle de gestion */
GExeFormat *format; /* Format du binaire */
GBinPortion *portions; /* Couche première de portions */
+ size_t count; /* Compteur de portions */
GtkTreeIter top; /* Racine de l'arborescence */
gint max_depth; /* Profondeur maximale */
GtkSpinButton *depth_spin; /* Bouton de variation */
@@ -689,6 +693,10 @@ static void reload_portions_for_new_tree_view(const GBintreePanel *panel, GtkSta
portions = g_exe_format_get_portions(format);
+ count = g_binary_portion_count(portions);
+
+ gtk_status_stack_extend_activity(status, id, count);
+
gtk_tree_store_append(store, &top, NULL);
gtk_tree_store_set(store, &top,
@@ -698,6 +706,8 @@ static void reload_portions_for_new_tree_view(const GBintreePanel *panel, GtkSta
data->panel = panel;
data->top = &top;
+ data->status = status;
+ data->id = id;
g_binary_portion_visit(portions, (visit_portion_fc)populate_tree_with_portion, data);
@@ -1060,7 +1070,7 @@ static const char *g_bintree_panel_setup(const GBintreePanel *panel, unsigned in
{
case PUI_0:
- *count = 1;
+ *count = 0;
(*data)->count = 0;
result = _("Loading portions contained in the binary format...");