summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2020-02-15 13:27:35 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2020-02-15 13:27:35 (GMT)
commitef90ffc686eb0dc1aa1567c6ceaff3843970a597 (patch)
treec26f7a17fd89f1558bc1775183d6b905d21bccd0 /src
parent04b1ee00d25383f977f59703e4c0bc66ad1faa81 (diff)
Chosen the default view displayed after a binary loading.
Diffstat (limited to 'src')
-rw-r--r--src/analysis/binary.c28
-rw-r--r--src/analysis/loaded-int.h4
-rw-r--r--src/analysis/loaded.c26
-rw-r--r--src/analysis/loaded.h3
-rw-r--r--src/gui/editor.c2
5 files changed, 62 insertions, 1 deletions
diff --git a/src/analysis/binary.c b/src/analysis/binary.c
index b3d6bba..e875679 100644
--- a/src/analysis/binary.c
+++ b/src/analysis/binary.c
@@ -183,6 +183,9 @@ 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 initiale pour un contenu binaire. */
+static GtkWidget *g_loaded_binary_build_default_view(GLoadedBinary *);
+
/* Met en place la vue demandée pour un contenu binaire. */
static GtkWidget *g_loaded_binary_build_view(GLoadedBinary *, unsigned int);
@@ -303,6 +306,7 @@ static void g_loaded_binary_interface_init(GLoadedContentInterface *iface)
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_def_view = (build_loaded_def_view_fc)g_loaded_binary_build_default_view;
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;
@@ -1918,6 +1922,30 @@ static const char *g_loaded_binary_get_view_name(const GLoadedBinary *binary, un
* Paramètres : binary = contenu chargé à consulter. *
* index = indice de la vue ciblée. *
* *
+* Description : Met en place la vue initiale pour un contenu binaire. *
+* *
+* Retour : Composant graphique nouveau. *
+* *
+* Remarques : - *
+* *
+******************************************************************************/
+
+static GtkWidget *g_loaded_binary_build_default_view(GLoadedBinary *binary)
+{
+ GtkWidget *result; /* Support à retourner */
+
+ result = g_loaded_binary_build_view(binary, BVW_BLOCK);
+
+ 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. *
diff --git a/src/analysis/loaded-int.h b/src/analysis/loaded-int.h
index 6584822..0aacc3f 100644
--- a/src/analysis/loaded-int.h
+++ b/src/analysis/loaded-int.h
@@ -54,6 +54,9 @@ typedef unsigned int (* count_loaded_views_fc) (const GLoadedContent *);
/* Fournit le nom d'une vue donnée d'un contenu chargé. */
typedef const char * (* get_loaded_view_name_fc) (const GLoadedContent *, unsigned int);
+/* Met en place la vue initiale pour un contenu chargé. */
+typedef GtkWidget * (* build_loaded_def_view_fc) (GLoadedContent *);
+
/* Met en place la vue demandée pour un contenu chargé. */
typedef GtkWidget * (* build_loaded_view_fc) (GLoadedContent *, unsigned int);
@@ -83,6 +86,7 @@ struct _GLoadedContentIface
count_loaded_views_fc count_views; /* Compteur de vues */
get_loaded_view_name_fc get_view_name; /* Désignation d'une vue donnée*/
+ build_loaded_def_view_fc build_def_view;/* Mise en place initiale */
build_loaded_view_fc build_view; /* Mise en place de vues */
get_loaded_view_index_fc get_view_index;/* Récupération d'indice de vue*/
diff --git a/src/analysis/loaded.c b/src/analysis/loaded.c
index 2f8f3fb..79a311f 100644
--- a/src/analysis/loaded.c
+++ b/src/analysis/loaded.c
@@ -465,6 +465,32 @@ const char *g_loaded_content_get_view_name(const GLoadedContent *content, unsign
/******************************************************************************
* *
* Paramètres : content = contenu chargé à consulter. *
+* *
+* Description : Met en place la vue initiale pour un contenu chargé. *
+* *
+* Retour : Composant graphique nouveau. *
+* *
+* Remarques : - *
+* *
+******************************************************************************/
+
+GtkWidget *g_loaded_content_build_default_view(GLoadedContent *content)
+{
+ GtkWidget *result; /* Support à retourner */
+ GLoadedContentIface *iface; /* Interface utilisée */
+
+ iface = G_LOADED_CONTENT_GET_IFACE(content);
+
+ result = iface->build_def_view(content);
+
+ return result;
+
+}
+
+
+/******************************************************************************
+* *
+* Paramètres : content = contenu chargé à consulter. *
* index = indice de la vue ciblée. *
* *
* Description : Met en place la vue demandée pour un contenu chargé. *
diff --git a/src/analysis/loaded.h b/src/analysis/loaded.h
index c6c22b4..9df647b 100644
--- a/src/analysis/loaded.h
+++ b/src/analysis/loaded.h
@@ -93,6 +93,9 @@ unsigned int g_loaded_content_count_views(const GLoadedContent *);
/* Fournit le nom d'une vue donnée d'un contenu chargé. */
const char *g_loaded_content_get_view_name(const GLoadedContent *, unsigned int);
+/* Met en place la vue initiale pour un contenu chargé. */
+GtkWidget *g_loaded_content_build_default_view(GLoadedContent *);
+
/* Met en place la vue demandée pour un contenu chargé. */
GtkWidget *g_loaded_content_build_view(GLoadedContent *, unsigned int);
diff --git a/src/gui/editor.c b/src/gui/editor.c
index 69eb2a6..f45acbd 100644
--- a/src/gui/editor.c
+++ b/src/gui/editor.c
@@ -927,7 +927,7 @@ static void on_editor_loaded_content_added(GStudyProject *project, GLoadedConten
const char *lname; /* Description du binaire */
GPanelItem *panel; /* Nouveau panneau à integrer */
- selected = g_loaded_content_build_view(content, 0);
+ selected = g_loaded_content_build_default_view(content);
name = g_loaded_content_describe(content, false);
lname = g_loaded_content_describe(content, true);