diff options
author | Cyrille Bagard <nocbos@gmail.com> | 2010-03-21 18:54:20 (GMT) |
---|---|---|
committer | Cyrille Bagard <nocbos@gmail.com> | 2010-03-21 18:54:20 (GMT) |
commit | 8123d9342f92a2cf6fd999b350252c001f403092 (patch) | |
tree | 5030aa5d40fa8551937649cdd3377062ec8991d0 /src/editor.c | |
parent | a6acb5629572e6da4d72f4419b01672c2ea5ddf2 (diff) |
Allowed a simple export of an assembly content.
git-svn-id: svn://svn.gna.org/svn/chrysalide/trunk@144 abbe820e-26c8-41b2-8c08-b7b2b41f8b0a
Diffstat (limited to 'src/editor.c')
-rw-r--r-- | src/editor.c | 49 |
1 files changed, 40 insertions, 9 deletions
diff --git a/src/editor.c b/src/editor.c index 8291a2e..8f6428d 100644 --- a/src/editor.c +++ b/src/editor.c @@ -50,6 +50,7 @@ #include "debug/debuggers.h" #include "dialogs/binparts.h" +#include "dialogs/export.h" #include "panels/panel.h" @@ -86,8 +87,6 @@ void mcb_file_save_project(GtkMenuItem *, gpointer); /* Réagit au menu "Fichier -> Enregistrer le projet sous...". */ 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 *); @@ -118,6 +117,9 @@ void reload_menu_project(GObject *); /* Réagit avec le menu "Binaire -> Sélectionner les parties...". */ static void mcb_binary_select_parts(GtkMenuItem *, GObject *); +/* Réagit au menu "Binaire -> Exporter...". */ +static void mcb_binary_export(GtkMenuItem *, GObject *); + /*Réagit avec le menu "Débogage -> Démarrer". */ void mcb_debug_start(GtkCheckMenuItem *, gpointer); @@ -326,6 +328,12 @@ GtkWidget *create_editor(void) submenuitem = qck_create_menu_item(NULL, NULL, _("Select parts..."), G_CALLBACK(mcb_binary_select_parts), ref); gtk_container_add(GTK_CONTAINER(menubar), submenuitem); + submenuitem = qck_create_menu_separator(); + gtk_container_add(GTK_CONTAINER(menubar), submenuitem); + + submenuitem = qck_create_menu_item(ref, "mnu_binary_export", _("Export..."), G_CALLBACK(mcb_binary_export), ref); + gtk_container_add(GTK_CONTAINER(menubar), submenuitem); + menuitem = gtk_menu_item_new_with_mnemonic(_("_Debug")); @@ -798,8 +806,6 @@ void mcb_file_save_project_as(GtkMenuItem *menuitem, gpointer data) } - - /****************************************************************************** * * * Paramètres : menuitem = élément de menu sélectionné. * @@ -960,11 +966,11 @@ void mcb_project_add_binary(GtkMenuItem *menuitem, gpointer data) 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); + 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) { @@ -1105,6 +1111,31 @@ static void mcb_binary_select_parts(GtkMenuItem *menuitem, GObject *ref) } +/****************************************************************************** +* * +* Paramètres : menuitem = élément de menu sélectionné. * +* ref = adresse de l'espace de référencement global. * +* * +* Description : Réagit au menu "Binaire -> Exporter...". * +* * +* Retour : - * +* * +* Remarques : - * +* * +******************************************************************************/ + +static void mcb_binary_export(GtkMenuItem *menuitem, GObject *ref) +{ + GOpenidaBinary *binary; /* Edition courante */ + + binary = (GOpenidaBinary *)g_object_get_data(ref, "current_binary"); + + run_export_assistant(binary, GTK_WINDOW(ref)); + +} + + + void debugger_stopped_cb(GBinaryDebugger *debugger, uint64_t last, uint64_t cur, gpointer data) { |