From d7da8a0fb5af011de227ece7ae374e2627999457 Mon Sep 17 00:00:00 2001 From: David Brown <dbrown@gitlab.riscosopen.org> Date: Fri, 3 Oct 1997 09:06:55 +0000 Subject: [PATCH] Fixed problems with selecting encodings in the parent encoding menu. --- c/Encoding | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/c/Encoding b/c/Encoding index 72cf8d8..d98b1ae 100644 --- a/c/Encoding +++ b/c/Encoding @@ -189,13 +189,13 @@ int encoding_select(int eventcode, ToolboxEvent * event, IdBlock * idb, void * h { ObjectId ancestor; - e = toolbox_get_ancestor(0, idb->ancestor_id, &ancestor, NULL); + e = toolbox_get_ancestor(0, menu_id, &ancestor, NULL); if (!e && ancestor == choices_windowid && new_choices) { new_choices->encoding = idb->self_component; choices_set_encoding_field(); - encoding_prepare_menu(idb->ancestor_id, priority_default, new_choices->encoding); + encoding_prepare_menu(menu_id, priority_default, new_choices->encoding); return 1; } else @@ -208,7 +208,7 @@ int encoding_select(int eventcode, ToolboxEvent * event, IdBlock * idb, void * h b->encoding = idb->self_component; b->encoding_priority = priority_user; - encoding_prepare_menu(idb->ancestor_id, b->encoding_priority, b->encoding); + encoding_prepare_menu(menu_id, b->encoding_priority, b->encoding); } return 1; @@ -240,7 +240,7 @@ int encoding_from_document_select(int eventcode, ToolboxEvent * event, IdBlock * b->encoding_priority = priority_user; } - encoding_prepare_menu(idb->self_id, b->encoding_priority, b->encoding); + encoding_prepare_menu(menu_id, b->encoding_priority, b->encoding); return 1; } @@ -269,8 +269,12 @@ int encoding_show_menu(int eventcode, ToolboxEvent * event, IdBlock * idb, void if (idb->ancestor_id == choices_windowid && new_choices) { /* Fade "From document" item as it is not relevant to choices */ - encoding_prepare_menu(idb->self_id, priority_default, new_choices->encoding); + menu_set_fade(0, idb->self_id, 0x11FFF, 1); + encoding_prepare_menu(menu_id, priority_default, new_choices->encoding); + + toolbox_set_client_handle(0, idb->self_id, NULL); + return 1; } else @@ -292,7 +296,7 @@ int encoding_show_menu(int eventcode, ToolboxEvent * event, IdBlock * idb, void toolbox_set_client_handle(0, idb->self_id, b); - encoding_prepare_menu(idb->self_id, b->encoding_priority, b->encoding); + encoding_prepare_menu(menu_id, b->encoding_priority, b->encoding); } return 1; -- GitLab