From 67af746324d830914c78e8ab216eb4e37a4163a3 Mon Sep 17 00:00:00 2001 From: Chris Young Date: Tue, 7 May 2019 22:07:57 +0100 Subject: Get menu structure directly from gui_window --- frontends/amiga/clipboard.c | 6 +++--- frontends/amiga/gui.c | 7 +++++++ frontends/amiga/gui.h | 5 +++++ frontends/amiga/gui_menu.c | 44 ++++++++++++++++++++++---------------------- 4 files changed, 37 insertions(+), 25 deletions(-) (limited to 'frontends/amiga') diff --git a/frontends/amiga/clipboard.c b/frontends/amiga/clipboard.c index a9d1f6170..d0372c267 100644 --- a/frontends/amiga/clipboard.c +++ b/frontends/amiga/clipboard.c @@ -89,11 +89,11 @@ void gui_start_selection(struct gui_window *g) if(!ami_gui_get_window(g)) return; if(nsoption_bool(kiosk_mode) == true) return; - ami_gui_menu_set_disabled(ami_gui_get_window(g), ami_gui_get_gui_window_2(g)->imenu, M_COPY, false); - ami_gui_menu_set_disabled(ami_gui_get_window(g), ami_gui_get_gui_window_2(g)->imenu, M_CLEAR, false); + ami_gui_menu_set_disabled(ami_gui_get_window(g), ami_gui_get_menu(g), M_COPY, false); + ami_gui_menu_set_disabled(ami_gui_get_window(g), ami_gui_get_menu(g), M_CLEAR, false); if (browser_window_get_editor_flags(ami_gui_get_browser_window(g)) & BW_EDITOR_CAN_CUT) - ami_gui_menu_set_disabled(ami_gui_get_window(g), ami_gui_get_gui_window_2(g)->imenu, M_CUT, false); + ami_gui_menu_set_disabled(ami_gui_get_window(g), ami_gui_get_menu(g), M_CUT, false); } static char *ami_clipboard_cat_collection(struct CollectionItem *ci, LONG codeset, size_t *text_length) diff --git a/frontends/amiga/gui.c b/frontends/amiga/gui.c index 0c2944c0a..b34b5e9be 100644 --- a/frontends/amiga/gui.c +++ b/frontends/amiga/gui.c @@ -356,6 +356,13 @@ struct Window *ami_gui_get_window(struct gui_window *gw) return gw->shared->win; } +struct Menu *ami_gui_get_menu(struct gui_window *gw) +{ + assert(gw != NULL); + assert(gw->shared != NULL); + return gw->shared->imenu; +} + STRPTR ami_locale_langs(int *codeset) { struct Locale *locale; diff --git a/frontends/amiga/gui.h b/frontends/amiga/gui.h index e65c0fe11..0655db8d0 100644 --- a/frontends/amiga/gui.h +++ b/frontends/amiga/gui.h @@ -311,5 +311,10 @@ void ami_gui_set_throbbing(struct gui_window *gw, bool throbbing); */ struct Window *ami_gui_get_window(struct gui_window *gw); +/** + * Get imenu from gui_window + */ +struct Menu *ami_gui_get_menu(struct gui_window *gw); + #endif diff --git a/frontends/amiga/gui_menu.c b/frontends/amiga/gui_menu.c index 1bb0ee8f4..3cb0f3a04 100644 --- a/frontends/amiga/gui_menu.c +++ b/frontends/amiga/gui_menu.c @@ -717,10 +717,10 @@ void ami_gui_menu_update_disabled(struct gui_window *g, struct hlcache_handle *c if(content_get_type(c) <= CONTENT_CSS) { - ami_gui_menu_set_disabled(win, ami_gui_get_gui_window_2(g)->imenu, M_SAVETXT, false); - ami_gui_menu_set_disabled(win, ami_gui_get_gui_window_2(g)->imenu, M_SAVECOMP, false); + ami_gui_menu_set_disabled(win, ami_gui_get_menu(g), M_SAVETXT, false); + ami_gui_menu_set_disabled(win, ami_gui_get_menu(g), M_SAVECOMP, false); #ifdef WITH_PDF_EXPORT - ami_gui_menu_set_disabled(win, ami_gui_get_gui_window_2(g)->imenu, M_SAVEPDF, false); + ami_gui_menu_set_disabled(win, ami_gui_get_menu(g), M_SAVEPDF, false); #endif #if 0 if(browser_window_get_editor_flags(ami_gui_get_browser_window(g)) & BW_EDITOR_CAN_COPY) { @@ -741,29 +741,29 @@ void ami_gui_menu_update_disabled(struct gui_window *g, struct hlcache_handle *c else OffMenu(win,AMI_MENU_PASTE); #else - ami_gui_menu_set_disabled(win, ami_gui_get_gui_window_2(g)->imenu, M_CUT, false); - ami_gui_menu_set_disabled(win, ami_gui_get_gui_window_2(g)->imenu, M_COPY, false); - ami_gui_menu_set_disabled(win, ami_gui_get_gui_window_2(g)->imenu, M_PASTE, false); - ami_gui_menu_set_disabled(win, ami_gui_get_gui_window_2(g)->imenu, M_CLEAR, false); + ami_gui_menu_set_disabled(win, ami_gui_get_menu(g), M_CUT, false); + ami_gui_menu_set_disabled(win, ami_gui_get_menu(g), M_COPY, false); + ami_gui_menu_set_disabled(win, ami_gui_get_menu(g), M_PASTE, false); + ami_gui_menu_set_disabled(win, ami_gui_get_menu(g), M_CLEAR, false); #endif - ami_gui_menu_set_disabled(win, ami_gui_get_gui_window_2(g)->imenu, M_SELALL, false); - ami_gui_menu_set_disabled(win, ami_gui_get_gui_window_2(g)->imenu, M_FIND, false); - ami_gui_menu_set_disabled(win, ami_gui_get_gui_window_2(g)->imenu, M_SAVEIFF, true); + ami_gui_menu_set_disabled(win, ami_gui_get_menu(g), M_SELALL, false); + ami_gui_menu_set_disabled(win, ami_gui_get_menu(g), M_FIND, false); + ami_gui_menu_set_disabled(win, ami_gui_get_menu(g), M_SAVEIFF, true); } else { - ami_gui_menu_set_disabled(win, ami_gui_get_gui_window_2(g)->imenu, M_CUT, true); - ami_gui_menu_set_disabled(win, ami_gui_get_gui_window_2(g)->imenu, M_PASTE, true); - ami_gui_menu_set_disabled(win, ami_gui_get_gui_window_2(g)->imenu, M_CLEAR, true); + ami_gui_menu_set_disabled(win, ami_gui_get_menu(g), M_CUT, true); + ami_gui_menu_set_disabled(win, ami_gui_get_menu(g), M_PASTE, true); + ami_gui_menu_set_disabled(win, ami_gui_get_menu(g), M_CLEAR, true); - ami_gui_menu_set_disabled(win, ami_gui_get_gui_window_2(g)->imenu, M_SAVETXT, true); - ami_gui_menu_set_disabled(win, ami_gui_get_gui_window_2(g)->imenu, M_SAVECOMP, true); + ami_gui_menu_set_disabled(win, ami_gui_get_menu(g), M_SAVETXT, true); + ami_gui_menu_set_disabled(win, ami_gui_get_menu(g), M_SAVECOMP, true); #ifdef WITH_PDF_EXPORT - ami_gui_menu_set_disabled(win, ami_gui_get_gui_window_2(g)->imenu, M_SAVEPDF, true); + ami_gui_menu_set_disabled(win, ami_gui_get_menu(g), M_SAVEPDF, true); #endif - ami_gui_menu_set_disabled(win, ami_gui_get_gui_window_2(g)->imenu, M_SELALL, true); - ami_gui_menu_set_disabled(win, ami_gui_get_gui_window_2(g)->imenu, M_FIND, true); + ami_gui_menu_set_disabled(win, ami_gui_get_menu(g), M_SELALL, true); + ami_gui_menu_set_disabled(win, ami_gui_get_menu(g), M_FIND, true); #ifdef WITH_NS_SVG if(content_get_bitmap(c) || (ami_mime_compare(c, "svg") == true)) @@ -771,13 +771,13 @@ void ami_gui_menu_update_disabled(struct gui_window *g, struct hlcache_handle *c if(content_get_bitmap(c)) #endif { - ami_gui_menu_set_disabled(win, ami_gui_get_gui_window_2(g)->imenu, M_COPY, false); - ami_gui_menu_set_disabled(win, ami_gui_get_gui_window_2(g)->imenu, M_SAVEIFF, false); + ami_gui_menu_set_disabled(win, ami_gui_get_menu(g), M_COPY, false); + ami_gui_menu_set_disabled(win, ami_gui_get_menu(g), M_SAVEIFF, false); } else { - ami_gui_menu_set_disabled(win, ami_gui_get_gui_window_2(g)->imenu, M_COPY, true); - ami_gui_menu_set_disabled(win, ami_gui_get_gui_window_2(g)->imenu, M_SAVEIFF, true); + ami_gui_menu_set_disabled(win, ami_gui_get_menu(g), M_COPY, true); + ami_gui_menu_set_disabled(win, ami_gui_get_menu(g), M_SAVEIFF, true); } } } -- cgit v1.2.3