summaryrefslogtreecommitdiff
path: root/src/gui/menus/debug.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/menus/debug.c')
-rw-r--r--src/gui/menus/debug.c92
1 files changed, 20 insertions, 72 deletions
diff --git a/src/gui/menus/debug.c b/src/gui/menus/debug.c
index 74844e2..bfa9229 100644
--- a/src/gui/menus/debug.c
+++ b/src/gui/menus/debug.c
@@ -73,86 +73,34 @@ static void mcb_debug_options(GtkMenuItem *, GObject *);
/******************************************************************************
* *
-* Paramètres : ref = espace de référencement global. *
+* Paramètres : builder = constructeur avec l'ensemble des références. *
* *
-* Description : Construit le menu "Aide". *
+* Description : Complète la définition du menu "Débogage". *
* *
-* Retour : Panneau de menus mis en place. *
+* Retour : - *
* *
* Remarques : - *
* *
******************************************************************************/
-GtkWidget *build_menu_debug(GObject *ref)
+void setup_menu_debug_callbacks(GtkBuilder *builder)
{
- GtkWidget *result; /* Support à retourner */
- GtkWidget *menubar; /* Support pour éléments */
- GtkWidget *submenuitem; /* Sous-élément de menu */
-
- result = gtk_menu_item_new_with_mnemonic(_("_Debug"));
- gtk_widget_show(result);
-
- menubar = qck_create_menu(GTK_MENU_ITEM(result));
-
- submenuitem = qck_create_menu_item(ref, "mnu_debug_continue", _("Continue"),
- G_CALLBACK(mcb_debug_continue), ref);
- add_accelerator_to_widget(submenuitem, "F9");
- gtk_container_add(GTK_CONTAINER(menubar), submenuitem);
-
- submenuitem = qck_create_menu_item(ref, "mnu_debug_continue_to", _("Continue to selection"),
- G_CALLBACK(mcb_debug_continue_to), ref);
- add_accelerator_to_widget(submenuitem, "<Alt>F9");
- gtk_container_add(GTK_CONTAINER(menubar), submenuitem);
-
- submenuitem = qck_create_menu_item(ref, "mnu_debug_pause", _("Pause"),
- G_CALLBACK(mcb_debug_pause), ref);
- add_accelerator_to_widget(submenuitem, "F10");
- gtk_container_add(GTK_CONTAINER(menubar), submenuitem);
-
- submenuitem = qck_create_menu_item(ref, "mnu_debug_restart", _("Restart"),
- G_CALLBACK(mcb_debug_restart), ref);
- gtk_container_add(GTK_CONTAINER(menubar), submenuitem);
-
- submenuitem = qck_create_menu_item(ref, "mnu_debug_close", _("Close"),
- G_CALLBACK(mcb_debug_close), 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_debug_step_into", _("Step into"),
- G_CALLBACK(mcb_debug_step_into), ref);
- add_accelerator_to_widget(submenuitem, "F7");
- gtk_container_add(GTK_CONTAINER(menubar), submenuitem);
-
- submenuitem = qck_create_menu_item(ref, "mnu_debug_step_over", _("Step over"),
- G_CALLBACK(mcb_debug_step_over), ref);
- add_accelerator_to_widget(submenuitem, "<Alt>F7");
- gtk_container_add(GTK_CONTAINER(menubar), submenuitem);
-
- submenuitem = qck_create_menu_item(ref, "mnu_debug_basic", _("Visit basic blocks into"),
- G_CALLBACK(mcb_debug_visit_blocks_into), ref);
- add_accelerator_to_widget(submenuitem, "F8");
- gtk_container_add(GTK_CONTAINER(menubar), submenuitem);
-
- submenuitem = qck_create_menu_item(ref, "mnu_debug_basic", _("Visit basic blocks over"),
- G_CALLBACK(mcb_debug_visit_blocks_over), ref);
- add_accelerator_to_widget(submenuitem, "<Alt>F8");
- gtk_container_add(GTK_CONTAINER(menubar), submenuitem);
-
- submenuitem = qck_create_menu_item(ref, "mnu_debug_return", _("Continue until return"),
- G_CALLBACK(mcb_debug_return), ref);
- add_accelerator_to_widget(submenuitem, "F12");
- 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_debug_options", _("Debugging options..."),
- G_CALLBACK(mcb_debug_options), ref);
- gtk_container_add(GTK_CONTAINER(menubar), submenuitem);
-
- return result;
+
+#define DEFINE_CALLBACK(cb) #cb, G_CALLBACK(cb)
+
+ gtk_builder_add_callback_symbols(builder,
+ DEFINE_CALLBACK(mcb_debug_continue),
+ DEFINE_CALLBACK(mcb_debug_continue_to),
+ DEFINE_CALLBACK(mcb_debug_pause),
+ DEFINE_CALLBACK(mcb_debug_restart),
+ DEFINE_CALLBACK(mcb_debug_close),
+ DEFINE_CALLBACK(mcb_debug_step_into),
+ DEFINE_CALLBACK(mcb_debug_step_over),
+ DEFINE_CALLBACK(mcb_debug_visit_blocks_into),
+ DEFINE_CALLBACK(mcb_debug_visit_blocks_over),
+ DEFINE_CALLBACK(mcb_debug_return),
+ DEFINE_CALLBACK(mcb_debug_options),
+ NULL);
}