diff options
Diffstat (limited to 'src/gui/menus/menubar.c')
-rw-r--r-- | src/gui/menus/menubar.c | 32 |
1 files changed, 20 insertions, 12 deletions
diff --git a/src/gui/menus/menubar.c b/src/gui/menus/menubar.c index d386362..97aa24f 100644 --- a/src/gui/menus/menubar.c +++ b/src/gui/menus/menubar.c @@ -35,6 +35,7 @@ #include "project.h" #include "view.h" #include "../editem-int.h" +#include "../core/global.h" @@ -209,13 +210,8 @@ GEditorItem *g_menu_bar_new(GObject *ref) result = g_object_new(G_TYPE_MENU_BAR, NULL); - /* Initialisation générique */ - item = G_EDITOR_ITEM(result); - g_object_ref(ref); - item->ref = ref; - /* Fichier */ result->file = build_menu_file(); @@ -282,9 +278,13 @@ GEditorItem *g_menu_bar_new(GObject *ref) static void change_menubar_current_content(GMenuBar *bar, GLoadedContent *old, GLoadedContent *new) { - rebuild_menu_view_for_content(bar->view, new); + GObject *ref; /* Espace de référencements */ + + ref = get_global_ref(); + + rebuild_menu_view_for_content(bar->view, ref, new); - update_access_for_content_in_menu_binary(new); + update_access_for_content_in_menu_binary(ref, new); } @@ -305,13 +305,17 @@ static void change_menubar_current_content(GMenuBar *bar, GLoadedContent *old, G static void change_menubar_current_view(GMenuBar *bar, GLoadedPanel *old, GLoadedPanel *new) { - update_access_for_view_in_menu_edition(new); + GObject *ref; /* Espace de référencements */ - rebuild_menu_view_for_view(bar->view, new); + ref = get_global_ref(); - update_access_for_view_in_menu_view(new); + update_access_for_view_in_menu_edition(ref, new); - update_access_for_view_in_menu_binary(new); + rebuild_menu_view_for_view(bar->view, ref, new); + + update_access_for_view_in_menu_view(ref, new); + + update_access_for_view_in_menu_binary(ref, new); } @@ -332,7 +336,11 @@ static void change_menubar_current_view(GMenuBar *bar, GLoadedPanel *old, GLoade static void track_caret_address_for_menu_bar(GMenuBar *bar, GLoadedPanel *panel, const GLineCursor *cursor) { - update_access_for_cursor_in_menu_edition(panel, cursor); + GObject *ref; /* Espace de référencements */ + + ref = get_global_ref(); + + update_access_for_cursor_in_menu_edition(ref, panel, cursor); } |