summaryrefslogtreecommitdiff
path: root/src/analysis/binary.c
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2018-07-20 16:43:23 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2018-07-20 16:43:23 (GMT)
commita809d3517eb928d5d7a03d96a85f8af96daa1047 (patch)
tree451decffd5fc20d1a5237b2aa814a62aaba99316 /src/analysis/binary.c
parent5093663eb4e4aa17edd97cbd864ccb4a3d48a803 (diff)
Included dynamic items in the view menu.
Diffstat (limited to 'src/analysis/binary.c')
-rw-r--r--src/analysis/binary.c46
1 files changed, 42 insertions, 4 deletions
diff --git a/src/analysis/binary.c b/src/analysis/binary.c
index 89370b2..44dfe6c 100644
--- a/src/analysis/binary.c
+++ b/src/analysis/binary.c
@@ -165,6 +165,9 @@ static const char *g_loaded_binary_describe(const GLoadedBinary *, bool);
/* Détermine le nombre de vues disponibles pour un contenu. */
static unsigned int g_loaded_binary_count_views(const GLoadedBinary *);
+/* Fournit le nom d'une vue donnée d'un contenu chargé. */
+static const char *g_loaded_binary_get_view_name(const GLoadedBinary *, unsigned int);
+
/* Met en place la vue demandée pour un contenu binaire. */
static GtkWidget *g_loaded_binary_build_view(GLoadedBinary *, unsigned int);
@@ -278,6 +281,7 @@ static void g_loaded_binary_interface_init(GLoadedContentInterface *iface)
iface->describe = (describe_loaded_fc)g_loaded_binary_describe;
iface->count_views = (count_loaded_views_fc)g_loaded_binary_count_views;
+ iface->get_view_name = (get_loaded_view_name_fc)g_loaded_binary_get_view_name;
iface->build_view = (build_loaded_view_fc)g_loaded_binary_build_view;
iface->get_view_index = (get_loaded_view_index_fc)g_loaded_binary_get_view_index;
@@ -1641,6 +1645,44 @@ static unsigned int g_loaded_binary_count_views(const GLoadedBinary *binary)
* Paramètres : binary = contenu chargé à consulter. *
* index = indice de la vue ciblée. *
* *
+* Description : Fournit le nom d'une vue donnée d'un contenu chargé. *
+* *
+* Retour : Désignation humainement lisible. *
+* *
+* Remarques : - *
+* *
+******************************************************************************/
+
+static const char *g_loaded_binary_get_view_name(const GLoadedBinary *binary, unsigned int index)
+{
+ const char *result; /* Désignation à retourner */
+
+ switch (index)
+ {
+ case BVW_BLOCK:
+ result = _("Text view");
+ break;
+
+ case BVW_GRAPH:
+ result = _("Graph view");
+ break;
+
+ default:
+ assert(false);
+ result = NULL;
+ break;
+ }
+
+ return result;
+
+}
+
+
+/******************************************************************************
+* *
+* Paramètres : binary = contenu chargé à consulter. *
+* index = indice de la vue ciblée. *
+* *
* Description : Met en place la vue demandée pour un contenu binaire. *
* *
* Retour : Composant graphique nouveau. *
@@ -1654,8 +1696,6 @@ static GtkWidget *g_loaded_binary_build_view(GLoadedBinary *binary, unsigned int
GtkWidget *result; /* Support à retourner */
GtkWidget *display; /* Composant d'affichage */
- assert(index < g_loaded_binary_count_views(binary));
-
switch (index)
{
case BVW_BLOCK:
@@ -1735,8 +1775,6 @@ static GDisplayOptions *g_loaded_binary_get_display_options(const GLoadedBinary
{
GDisplayOptions *result; /* Instance à renvoyer */
- assert(index < BVW_COUNT);
-
if (index < BVW_COUNT)
result = binary->options[index];
else