summaryrefslogtreecommitdiff
path: root/src/editor.c
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2012-01-30 02:19:38 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2012-01-30 02:19:38 (GMT)
commiteacb69625d51707ac0a158815a53f71fb70968ce (patch)
tree8d14e34639f80a0955529604d9c0d3ccae4d7dde /src/editor.c
parent7bcec72d69c5350678ed6350636687c3c29bbc61 (diff)
Provided a new working Project menu.
git-svn-id: svn://svn.gna.org/svn/chrysalide/trunk@230 abbe820e-26c8-41b2-8c08-b7b2b41f8b0a
Diffstat (limited to 'src/editor.c')
-rw-r--r--src/editor.c197
1 files changed, 1 insertions, 196 deletions
diff --git a/src/editor.c b/src/editor.c
index 68b9c28..728e7ca 100644
--- a/src/editor.c
+++ b/src/editor.c
@@ -52,7 +52,7 @@
#include "gtkext/gtkviewpanel.h"
#include "debug/debugger.h"
-#include "dialogs/add_shellcode.h"
+//#include "dialogs/add_shellcode.h"
#include "dialogs/binparts.h"
#include "dialogs/export.h"
#include "dialogs/plugins.h"
@@ -90,21 +90,7 @@ void mcb_file_save_project_as(GtkMenuItem *, gpointer);
/* Charge un projet récent et met à jour la liste. */
void mcb_open_recent_project(GtkMenuItem *, GObject *);
-/* Affiche la boîte d'ajout d'un binaire au projet courant. */
-void mcb_project_add_binary(GtkMenuItem *, gpointer);
-/* Réagit au menu "Projet -> Ajouter un binaire -> Shellcode". */
-static void mcb_project_add_binary_shellcode(GtkMenuItem *, GObject *);
-
-/* Retire un binaire du projet courant. */
-void mcb_project_remove_binary(GtkMenuItem *, gpointer);
-
-
-
-
-
-/* Met à jour le contenu du menu 'Projet'. */
-void reload_menu_project(GObject *);
/* Réagit avec le menu "Binaire -> Sélectionner les parties...". */
@@ -332,38 +318,6 @@ GtkWidget *create_editor(void)
- /* Projet */
-
- menuitem = gtk_menu_item_new_with_mnemonic(_("_Project"));
- gtk_widget_show(menuitem);
- gtk_container_add(GTK_CONTAINER(menuboard), menuitem);
-
- menubar = gtk_menu_new();
- gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem), menubar);
-
- submenuitem = qck_create_menu_item(NULL, NULL, _("Add a binary..."), G_CALLBACK(mcb_project_add_binary), result);
- gtk_container_add(GTK_CONTAINER(menubar), submenuitem);
-
- submenuitem = qck_create_menu_item(NULL, NULL, _("Add a binary"), NULL, NULL);
- gtk_container_add(GTK_CONTAINER(menubar), submenuitem);
-
- submenubar = gtk_menu_new();
- gtk_menu_item_set_submenu(GTK_MENU_ITEM(submenuitem), submenubar);
-
- submenuitem = qck_create_menu_item(NULL, NULL, _("Shellcode"), G_CALLBACK(mcb_project_add_binary_shellcode), result);
- gtk_container_add(GTK_CONTAINER(submenubar), submenuitem);
-
- submenuitem = qck_create_menu_item(G_OBJECT(result), "menu_prj_remove_bin", _("Remove a binary"), NULL, NULL);
- gtk_container_add(GTK_CONTAINER(menubar), submenuitem);
-
- submenubar = gtk_menu_new();
- gtk_menu_item_set_submenu(GTK_MENU_ITEM(submenuitem), submenubar);
-
- submenuitem = qck_create_menu_separator();
- gtk_container_add(GTK_CONTAINER(menubar), submenuitem);
-
-
-
menuitem = gtk_menu_item_new_with_mnemonic(_("_Binary"));
gtk_widget_show(menuitem);
gtk_container_add(GTK_CONTAINER(menuboard), menuitem);
@@ -425,9 +379,6 @@ GtkWidget *create_editor(void)
- menuitem = gtk_menu_item_new_with_mnemonic(_("_Plugins"));
- gtk_widget_show(menuitem);
- gtk_container_add(GTK_CONTAINER(menuboard), menuitem);
@@ -574,8 +525,6 @@ GtkWidget *create_editor(void)
- reload_menu_project(G_OBJECT(result));
-
return result;
@@ -867,97 +816,12 @@ void mcb_open_recent_project(GtkMenuItem *menuitem, GObject *ref)
-/******************************************************************************
-* *
-* Paramètres : menuitem = élément de menu sélectionné. *
-* data = adresse de l'espace de référencement global. *
-* *
-* Description : Affiche la boîte d'ajout d'un binaire au projet courant. *
-* *
-* Retour : - *
-* *
-* Remarques : - *
-* *
-******************************************************************************/
-
-void mcb_project_add_binary(GtkMenuItem *menuitem, gpointer data)
-{
- GtkWidget *dialog; /* Boîte à afficher */
- gchar *filename; /* Nom du fichier à intégrer */
- GOpenidaBinary *binary; /* Représentation chargée */
-
- dialog = gtk_file_chooser_dialog_new(_("Open a binary file"), GTK_WINDOW(data),
- GTK_FILE_CHOOSER_ACTION_OPEN,
- GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
- GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT,
- NULL);
-
- if (gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_ACCEPT)
- {
- filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog));
-
- binary = g_openida_binary_new_from_file(filename);
-
- if (binary != NULL)
- {
- g_study_project_attach_binary(get_current_project(), binary);
- //reload_menu_project(G_OBJECT(data));
- }
-
- g_free(filename);
-
- }
-
- gtk_widget_destroy(dialog);
-
-}
-
-
-/******************************************************************************
-* *
-* Paramètres : menuitem = élément de menu sélectionné. *
-* ref = adresse de l'espace de référencement global. *
-* *
-* Description : Réagit au menu "Projet -> Ajouter un binaire -> Shellcode". *
-* *
-* Retour : - *
-* *
-* Remarques : - *
-* *
-******************************************************************************/
-
-static void mcb_project_add_binary_shellcode(GtkMenuItem *menuitem, GObject *ref)
-{
- run_add_shellcode_assistant(get_current_project(), GTK_WINDOW(ref));
-
-}
-
-/******************************************************************************
-* *
-* Paramètres : menuitem = élément de menu sélectionné. *
-* data = adresse de l'espace de référencement global. *
-* *
-* Description : Retire un binaire du projet courant. *
-* *
-* Retour : - *
-* *
-* Remarques : - *
-* *
-******************************************************************************/
-void mcb_project_remove_binary(GtkMenuItem *menuitem, gpointer data)
-{
- GOpenidaBinary *binary; /* Représentation chargée */
- binary = g_object_get_data(G_OBJECT(menuitem), "binary");
- g_study_project_detach_binary(get_current_project(), binary);
- //unload_binary_file(binary);
- //reload_menu_project(G_OBJECT(data));
-}
@@ -966,65 +830,6 @@ void mcb_project_remove_binary(GtkMenuItem *menuitem, gpointer data)
-
-
-/******************************************************************************
-* *
-* Paramètres : ref = espace de référencements global. *
-* *
-* Description : Met à jour le contenu du menu 'Projet'. *
-* *
-* Retour : - *
-* *
-* Remarques : - *
-* *
-******************************************************************************/
-
-void reload_menu_project(GObject *ref)
-{
-#if 0
- GtkWidget *menuitem; /* Menu principal à compléter */
- GtkWidget *menubar; /* Support pour éléments */
- GList *list; /* Liste des éléments en place */
- GList *iter; /* Boucle de parcours #1 */
- size_t count; /* Nombre de binaires attachés */
- const GOpenidaBinary **binaries; /* Liste de ces binaires */
- size_t i; /* Boucle de parcours #2 */
- const char *desc; /* Description à afficher */
- GtkWidget *submenuitem; /* Sous-menu à ajouter */
-
- menuitem = GTK_WIDGET(g_object_get_data(ref, "menu_prj_remove_bin"));
- menubar = gtk_menu_item_get_submenu(GTK_MENU_ITEM(menuitem));
-
- /* Remise à zéro */
-
- list = gtk_container_get_children(GTK_CONTAINER(menubar));
-
- for (iter = list; iter != NULL; iter = g_list_next(iter))
- gtk_container_remove(GTK_CONTAINER(menubar), GTK_WIDGET(iter->data));
-
- g_list_free(list);
-
- /* Ajout des entrées */
-
- binaries = get_openida_project_binaries(get_current_project(), &count);
-
- for (i = 0; i < count; i++)
- {
- desc = g_openida_binary_to_string(binaries[i]);
-
- submenuitem = qck_create_menu_item(NULL, NULL, desc, G_CALLBACK(mcb_project_remove_binary), ref);
- g_object_set_data(G_OBJECT(submenuitem), "binary", binaries[i]);
- gtk_container_add(GTK_CONTAINER(menubar), submenuitem);
-
- }
-
- gtk_widget_set_sensitive(menuitem, count > 0);
-#endif
-}
-
-
-
/******************************************************************************
* *
* Paramètres : menuitem = élément de menu sélectionné. *