diff options
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/pychrysalide/analysis/loaded.c | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/plugins/pychrysalide/analysis/loaded.c b/plugins/pychrysalide/analysis/loaded.c index a5486a6..4a762ef 100644 --- a/plugins/pychrysalide/analysis/loaded.c +++ b/plugins/pychrysalide/analysis/loaded.c @@ -54,6 +54,9 @@ static PyObject *py_loaded_content_detect_obfuscators(PyObject *, PyObject *); /* Détermine le nombre de vues disponibles pour un contenu. */ static PyObject *py_loaded_content_count_views(PyObject *, PyObject *); +/* Met en place la vue initiale pour un contenu chargé. */ +static PyObject *py_loaded_content_build_default_view(PyObject *, PyObject *); + /* Fournit le contenu représenté de l'élément chargé. */ static PyObject *py_loaded_content_get_content(PyObject *, void *); @@ -264,6 +267,49 @@ static PyObject *py_loaded_content_count_views(PyObject *self, PyObject *args) /****************************************************************************** * * +* Paramètres : self = contenu chargé à manipuler. * +* args = non utilisé ici. * +* * +* Description : Met en place la vue initiale pour un contenu chargé. * +* * +* Retour : Composant graphique nouveau. * +* * +* Remarques : - * +* * +******************************************************************************/ + +static PyObject *py_loaded_content_build_default_view(PyObject *self, PyObject *args) +{ + PyObject *result; /* Instance à retourner */ + GLoadedContent *content; /* Version GLib de l'élément */ + GtkWidget *view; /* Composant GTK à transposer */ + +#define LOADED_CONTENT_BUILD_DEFAULT_VIEW_METHOD PYTHON_METHOD_DEF \ +( \ + build_default_view, "$self", \ + METH_NOARGS, py_loaded_content, \ + "Build a new widget for the default graphical view of the loaded content." \ + "\n" \ + "This method is aimed to only be called from the GUI internals." \ + " It provides the first view displayed in the main Chrysalide window" \ + " after a binary loading." \ +) + + content = G_LOADED_CONTENT(pygobject_get(self)); + + view = g_loaded_content_build_default_view(content); + + result = new_pygobject_widget(view); + + g_object_unref(G_OBJECT(view)); + + return result; + +} + + +/****************************************************************************** +* * * Paramètres : self = objet Python concerné par l'appel. * * closure = non utilisé ici. * * * @@ -327,6 +373,7 @@ PyTypeObject *get_python_loaded_content_type(void) METH_NOARGS, "count_views($self, /)\n--\n\nCompute the quantity of available views." }, + LOADED_CONTENT_BUILD_DEFAULT_VIEW_METHOD, { NULL } }; |