Fix Seirawan gating at Rook square in PGN castling moves
[xboard.git] / menus.c
diff --git a/menus.c b/menus.c
index af8e33d..2854021 100644 (file)
--- a/menus.c
+++ b/menus.c
@@ -387,7 +387,27 @@ DebugProc ()
 void
 EditEngineProc ()
 {
-    EditEnginePopUp(firstChessProgramNames, &firstChessProgramNames);
+    if(*engineListFile) ParseSettingsFile(engineListFile, &engineListFile);
+    EditAnyPopUp(firstChessProgramNames, &firstChessProgramNames, _("Registered Engines"));
+}
+
+void
+EditThemesProc ()
+{
+    EditAnyPopUp(appData.themeNames, &appData.themeNames, _("Predefined Themes"));
+}
+
+void
+EditMenuProc ()
+{
+    EditAnyPopUp(icsTextMenuString, &icsTextMenuString, _("ICS Text-Menu Definition"));
+}
+
+void
+MuteProc ()
+{
+    mute = !mute;
+    MarkMenuItem("Options.Mute", mute);
 }
 
 void
@@ -643,13 +663,15 @@ MenuItem viewMenu[] = {
   {N_("Move History"),      "<Alt><Shift>h", "MoveHistory",     HistoryShowProc,        CHECK}, // [HGM] hist: activate 4.2.7 code
   {N_("Evaluation Graph"),  "<Alt><Shift>e", "EvaluationGraph", EvalGraphProc,          CHECK},
   {N_("Game List"),         "<Alt><Shift>g", "GameList",        ShowGameListProc,       CHECK},
-  {N_("ICS text menu"),      NULL,           "ICStextmenu",     IcsTextProc,            CHECK},
   {"----",                   NULL,            NULL,             NothingProc},
   {N_("Tags"),               NULL,           "Tags",            EditTagsProc,           CHECK},
   {N_("Comments"),           NULL,           "Comments",        EditCommentProc,        CHECK},
   {N_("ICS Input Box"),      NULL,           "ICSInputBox",     IcsInputBoxProc,        CHECK},
   {N_("ICS/Chat Console"),   NULL,           "OpenChatWindow",  ChatProc,               CHECK},
+  {N_("ICS text menu"),      NULL,           "ICStextmenu",     IcsTextProc,            CHECK},
+  {N_("Edit ICS menu..."),   NULL,           "EditTextMenu",    EditMenuProc},
   {"----",                   NULL,            NULL,             NothingProc},
+  {N_("Edit Theme List..."), NULL,           "EditThemeList",   EditThemesProc},
   {N_("Board..."),           NULL,           "Board",           BoardOptionsProc},
   {N_("Fonts..."),           NULL,           "Fonts",           FontsProc},
   {N_("Game List Tags..."),  NULL,           "GameListTags",    GameListOptionsProc},
@@ -712,6 +734,8 @@ MenuItem engineMenu[100] = {
 };
 
 MenuItem optionsMenu[] = {
+  {N_("Mute all Sounds"),         NULL,             "Mute",                MuteProc,         CHECK},
+  {"----",                        NULL,              NULL,                 NothingProc},
 #ifdef OPTIONSDIALOG
   {N_("General..."),              NULL,             "General",             OptionsProc},
 #endif