X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=xboard.c;h=495e35bf4e6aaa77e4d2f99fc1e3088e58a59169;hb=7c2013f04ebad72d894faf7b4768071925412f0b;hp=c9defc59f6c1a97eb0a656c6e434438ad632b559;hpb=ed47244d151ccf276b9e233b4415e00aa5d3d29d;p=xboard.git diff --git a/xboard.c b/xboard.c index c9defc5..495e35b 100644 --- a/xboard.c +++ b/xboard.c @@ -225,11 +225,13 @@ void EvalGraphProc P((Widget w, XEvent *event, typedef struct { String string; + String ref; XtActionProc proc; } MenuItem; typedef struct { String name; + String ref; MenuItem *mi; } Menu; @@ -590,183 +592,183 @@ static Pixmap xpmMask[BlackKing + 1]; SizeDefaults sizeDefaults[] = SIZE_DEFAULTS; MenuItem fileMenu[] = { - {N_("New Game"), ResetProc}, - {N_("New Shuffle Game ..."), ShuffleMenuProc}, - {N_("New Variant ..."), NewVariantProc}, // [HGM] variant: not functional yet - {"----", NothingProc}, - {N_("Load Game"), LoadGameProc}, - {N_("Load Position"), LoadPositionProc}, -// {N_("Load Next Game"), LoadNextGameProc}, -// {N_("Load Previous Game"), LoadPrevGameProc}, -// {N_("Reload Same Game"), ReloadGameProc}, - {"----", NothingProc}, -// {N_("Load Next Position"), LoadNextPositionProc}, -// {N_("Load Previous Position"), LoadPrevPositionProc}, -// {N_("Reload Same Position"), ReloadPositionProc}, - {N_("Save Game"), SaveGameProc}, - {N_("Save Position"), SavePositionProc}, - {"----", NothingProc}, - {N_("Mail Move"), MailMoveProc}, - {N_("Reload CMail Message"), ReloadCmailMsgProc}, - {"----", NothingProc}, - {N_("Exit"), QuitProc}, - {NULL, NULL} + {"New Game", "New Game", ResetProc}, + {"New Shuffle Game ...", "New Shuffle Game", ShuffleMenuProc}, + {"New Variant ...", "New Variant", NewVariantProc}, // [HGM] variant: not functional yet + {"----", NULL, NothingProc}, + {"Load Game", "Load Game", LoadGameProc}, + {"Load Position", "Load Position", LoadPositionProc}, +// {"Load Next Game", "Load Next Game", LoadNextGameProc}, +// {"Load Previous Game", "Load Previous Game", LoadPrevGameProc}, +// {"Reload Same Game", "Reload Same Game", ReloadGameProc}, + {"----", NULL, NothingProc}, +// {"Load Next Position", "Load Next Position", LoadNextPositionProc}, +// {"Load Previous Position", "Load Previous Position", LoadPrevPositionProc}, +// {"Reload Same Position", "Reload Same Position", ReloadPositionProc}, + {"Save Game", "Save Game", SaveGameProc}, + {"Save Position", "Save Position", SavePositionProc}, + {"----", NULL, NothingProc}, + {"Mail Move", "Mail Move", MailMoveProc}, + {"Reload CMail Message", "Reload CMail Message", ReloadCmailMsgProc}, + {"----", NULL, NothingProc}, + {"Exit", "Exit", QuitProc}, + {NULL, NULL, NULL} }; MenuItem editMenu[] = { - {N_("Copy Game"), CopyGameProc}, - {N_("Copy Position"), CopyPositionProc}, - {"----", NothingProc}, - {N_("Paste Game"), PasteGameProc}, - {N_("Paste Position"), PastePositionProc}, - {"----", NothingProc}, - {N_("Edit Game"), EditGameProc}, - {N_("Edit Position"), EditPositionProc}, - {"----", NothingProc}, - {N_("Edit Tags"), EditTagsProc}, - {N_("Edit Comment"), EditCommentProc}, - {"----", NothingProc}, - {N_("Revert"), RevertProc}, - {N_("Annotate"), AnnotateProc}, - {N_("Truncate Game"), TruncateGameProc}, - {"----", NothingProc}, - {N_("Backward"), BackwardProc}, - {N_("Forward"), ForwardProc}, - {N_("Back to Start"), ToStartProc}, - {N_("Forward to End"), ToEndProc}, - {NULL, NULL} + {"Copy Game", "Copy Game", CopyGameProc}, + {"Copy Position", "Copy Position", CopyPositionProc}, + {"----", NULL, NothingProc}, + {"Paste Game", "Paste Game", PasteGameProc}, + {"Paste Position", "Paste Position", PastePositionProc}, + {"----", NULL, NothingProc}, + {"Edit Game", "Edit Game", EditGameProc}, + {"Edit Position", "Edit Position", EditPositionProc}, + {"----", NULL, NothingProc}, + {"Edit Tags", "Edit Tags", EditTagsProc}, + {"Edit Comment", "Edit Comment", EditCommentProc}, + {"----", NULL, NothingProc}, + {"Revert", "Revert", RevertProc}, + {"Annotate", "Annotate", AnnotateProc}, + {"Truncate Game", "Truncate Game", TruncateGameProc}, + {"----", NULL, NothingProc}, + {"Backward", "Backward", BackwardProc}, + {"Forward", "Forward", ForwardProc}, + {"Back to Start", "Back to Start", ToStartProc}, + {"Forward to End", "Forward to End", ToEndProc}, + {NULL, NULL, NULL} }; MenuItem viewMenu[] = { - {N_("Flip View"), FlipViewProc}, - {"----", NothingProc}, - {N_("Show Engine Output"), EngineOutputProc}, - {N_("Show Evaluation Graph"), EvalGraphProc}, - {N_("Show Game List"), ShowGameListProc}, - {N_("Show Move History"), HistoryShowProc}, // [HGM] hist: activate 4.2.7 code - {"----", NothingProc}, - {N_("Show Tags"), EditTagsProc}, - {N_("Show Comments"), EditCommentProc}, - {N_("ICS Input Box"), IcsInputBoxProc}, - {NULL, NULL} + {"Flip View", "Flip View", FlipViewProc}, + {"----", NULL, NothingProc}, + {"Show Engine Output", "Show Engine Output", EngineOutputProc}, + {"Show Evaluation Graph", "Show Evaluation Graph", EvalGraphProc}, + {"Show Game List", "Show Game List", ShowGameListProc}, + {"Show Move History", "Show Move History", HistoryShowProc}, // [HGM] hist: activate 4.2.7 code + {"----", NULL, NothingProc}, + {"Show Tags", "Show Tags", EditTagsProc}, + {"Show Comments", "Show Comments", EditCommentProc}, + {"ICS Input Box", "ICS Input Box", IcsInputBoxProc}, + {NULL, NULL, NULL} }; MenuItem modeMenu[] = { - {N_("Machine White"), MachineWhiteProc}, - {N_("Machine Black"), MachineBlackProc}, - {N_("Two Machines"), TwoMachinesProc}, - {N_("Analysis Mode"), AnalyzeModeProc}, - {N_("Analyze File"), AnalyzeFileProc }, - {N_("Edit Game"), EditGameProc}, - {N_("Edit Position"), EditPositionProc}, - {N_("Training"), TrainingProc}, - {N_("ICS Client"), IcsClientProc}, - {"----", NothingProc}, - {N_("Pause"), PauseProc}, - {NULL, NULL} + {"Machine White", "Machine White", MachineWhiteProc}, + {"Machine Black", "Machine Black", MachineBlackProc}, + {"Two Machines", "Two Machines", TwoMachinesProc}, + {"Analysis Mode", "Analysis Mode", AnalyzeModeProc}, + {"Analyze File", "Analyze File", AnalyzeFileProc }, + {"Edit Game", "Edit Game", EditGameProc}, + {"Edit Position", "Edit Position", EditPositionProc}, + {"Training", "Training", TrainingProc}, + {"ICS Client", "ICS Client", IcsClientProc}, + {"----", NULL, NothingProc}, + {"Pause", "Pause", PauseProc}, + {NULL, NULL, NULL} }; MenuItem actionMenu[] = { - {N_("Accept"), AcceptProc}, - {N_("Decline"), DeclineProc}, - {N_("Rematch"), RematchProc}, - {"----", NothingProc}, - {N_("Call Flag"), CallFlagProc}, - {N_("Draw"), DrawProc}, - {N_("Adjourn"), AdjournProc}, - {N_("Abort"), AbortProc}, - {N_("Resign"), ResignProc}, - {"----", NothingProc}, - {N_("Stop Observing"), StopObservingProc}, - {N_("Stop Examining"), StopExaminingProc}, - {N_("Upload to Examine"), UploadProc}, - {"----", NothingProc}, - {N_("Adjudicate to White"), AdjuWhiteProc}, - {N_("Adjudicate to Black"), AdjuBlackProc}, - {N_("Adjudicate Draw"), AdjuDrawProc}, - {NULL, NULL} + {"Accept", "Accept", AcceptProc}, + {"Decline", "Decline", DeclineProc}, + {"Rematch", "Rematch", RematchProc}, + {"----", NULL, NothingProc}, + {"Call Flag", "Call Flag", CallFlagProc}, + {"Draw", "Draw", DrawProc}, + {"Adjourn", "Adjourn", AdjournProc}, + {"Abort", "Abort", AbortProc}, + {"Resign", "Resign", ResignProc}, + {"----", NULL, NothingProc}, + {"Stop Observing", "Stop Observing", StopObservingProc}, + {"Stop Examining", "Stop Examining", StopExaminingProc}, + {"Upload to Examine", "Upload to Examine", UploadProc}, + {"----", NULL, NothingProc}, + {"Adjudicate to White", "Adjudicate to White", AdjuWhiteProc}, + {"Adjudicate to Black", "Adjudicate to Black", AdjuBlackProc}, + {"Adjudicate Draw", "Adjudicate Draw", AdjuDrawProc}, + {NULL, NULL, NULL} }; MenuItem engineMenu[] = { - {N_("Engine #1 Settings"), FirstSettingsProc}, - {N_("Engine #2 Settings"), SecondSettingsProc}, - {"----", NothingProc}, - {N_("Move Now"), MoveNowProc}, - {N_("Retract Move"), RetractMoveProc}, - {NULL, NULL} + {"Engine #1 Settings", "Engine #1 Settings", FirstSettingsProc}, + {"Engine #2 Settings", "Engine #2 Settings", SecondSettingsProc}, + {"----", NULL, NothingProc}, + {"Move Now", "Move Now", MoveNowProc}, + {"Retract Move", "Retract Move", RetractMoveProc}, + {NULL, NULL, NULL} }; MenuItem optionsMenu[] = { - {N_("Time Control ..."), TimeControlProc}, - {N_("Common Engine ..."), UciMenuProc}, - {N_("Adjudications ..."), EngineMenuProc}, - {N_("Game List ..."), GameListOptionsPopUp}, - {"----", NothingProc}, - {N_("Always Queen"), AlwaysQueenProc}, - {N_("Animate Dragging"), AnimateDraggingProc}, - {N_("Animate Moving"), AnimateMovingProc}, - {N_("Auto Comment"), AutocommProc}, - {N_("Auto Flag"), AutoflagProc}, - {N_("Auto Flip View"), AutoflipProc}, - {N_("Auto Observe"), AutobsProc}, - {N_("Auto Raise Board"), AutoraiseProc}, - {N_("Auto Save"), AutosaveProc}, - {N_("Blindfold"), BlindfoldProc}, - {N_("Flash Moves"), FlashMovesProc}, - {N_("Get Move List"), GetMoveListProc}, + {"Time Control ...", "Time Control ...", TimeControlProc}, + {"Common Engine ...", "Common Engine ...", UciMenuProc}, + {"Adjudications ...", "Adjudications ...", EngineMenuProc}, + {"Game List ...", "Game List ...", GameListOptionsPopUp}, + {"----", NULL, NothingProc}, + {"Always Queen", "Always Queen", AlwaysQueenProc}, + {"Animate Dragging", "Animate Dragging", AnimateDraggingProc}, + {"Animate Moving", "Animate Moving", AnimateMovingProc}, + {"Auto Comment", "Auto Comment", AutocommProc}, + {"Auto Flag", "Auto Flag", AutoflagProc}, + {"Auto Flip View", "Auto Flip View", AutoflipProc}, + {"Auto Observe", "Auto Observe", AutobsProc}, + {"Auto Raise Board", "Auto Raise Board", AutoraiseProc}, + {"Auto Save", "Auto Save", AutosaveProc}, + {"Blindfold", "Blindfold", BlindfoldProc}, + {"Flash Moves", "Flash Moves", FlashMovesProc}, + {"Get Move List", "Get Move List", GetMoveListProc}, #if HIGHDRAG - {N_("Highlight Dragging"), HighlightDraggingProc}, + {"Highlight Dragging", "Highlight Dragging", HighlightDraggingProc}, #endif - {N_("Highlight Last Move"), HighlightLastMoveProc}, - {N_("Move Sound"), MoveSoundProc}, - {N_("ICS Alarm"), IcsAlarmProc}, - {N_("Old Save Style"), OldSaveStyleProc}, - {N_("Periodic Updates"), PeriodicUpdatesProc}, - {N_("Ponder Next Move"), PonderNextMoveProc}, - {N_("Popup Exit Message"), PopupExitMessageProc}, - {N_("Popup Move Errors"), PopupMoveErrorsProc}, - {N_("Premove"), PremoveProc}, - {N_("Quiet Play"), QuietPlayProc}, - {N_("Show Coords"), ShowCoordsProc}, - {N_("Hide Thinking"), HideThinkingProc}, - {N_("Test Legality"), TestLegalityProc}, - {"----", NothingProc}, - {N_("Save Settings Now"), SaveSettingsProc}, - {N_("Save Settings on Exit"), SaveOnExitProc}, - {NULL, NULL} + {"Highlight Last Move", "Highlight Last Move", HighlightLastMoveProc}, + {"Move Sound", "Move Sound", MoveSoundProc}, + {"ICS Alarm", "ICS Alarm", IcsAlarmProc}, + {"Old Save Style", "Old Save Style", OldSaveStyleProc}, + {"Periodic Updates", "Periodic Updates", PeriodicUpdatesProc}, + {"Ponder Next Move", "Ponder Next Move", PonderNextMoveProc}, + {"Popup Exit Message", "Popup Exit Message", PopupExitMessageProc}, + {"Popup Move Errors", "Popup Move Errors", PopupMoveErrorsProc}, + {"Premove", "Premove", PremoveProc}, + {"Quiet Play", "Quiet Play", QuietPlayProc}, + {"Show Coords", "Show Coords", ShowCoordsProc}, + {"Hide Thinking", "Hide Thinking", HideThinkingProc}, + {"Test Legality", "Test Legality", TestLegalityProc}, + {"----", NULL, NothingProc}, + {"Save Settings Now", "Save Settings Now", SaveSettingsProc}, + {"Save Settings on Exit", "Save Settings on Exit", SaveOnExitProc}, + {NULL, NULL, NULL} }; MenuItem helpMenu[] = { - {N_("Info XBoard"), InfoProc}, - {N_("Man XBoard"), ManProc}, - {"----", NothingProc}, - {N_("Hint"), HintProc}, - {N_("Book"), BookProc}, - {"----", NothingProc}, - {N_("About XBoard"), AboutProc}, - {NULL, NULL} + {"Info XBoard", "Info XBoard", InfoProc}, + {"Man XBoard", "Man XBoard", ManProc}, + {"----", NULL, NothingProc}, + {"Hint", "Hint", HintProc}, + {"Book", "Book", BookProc}, + {"----", NULL, NothingProc}, + {"About XBoard", "About XBoard", AboutProc}, + {NULL, NULL, NULL} }; Menu menuBar[] = { - {N_("File"), fileMenu}, - {N_("Edit"), editMenu}, - {N_("View"), viewMenu}, - {N_("Mode"), modeMenu}, - {N_("Action"), actionMenu}, - {N_("Engine"), engineMenu}, - {N_("Options"), optionsMenu}, - {N_("Help"), helpMenu}, - {NULL, NULL} + {"File", "File", fileMenu}, + {"Edit", "Edit", editMenu}, + {"View", "View", viewMenu}, + {"Mode", "Mode", modeMenu}, + {"Action", "Action", actionMenu}, + {"Engine", "Engine", engineMenu}, + {"Options", "Options", optionsMenu}, + {"Help", "Help", helpMenu}, + {NULL, NULL, NULL} }; -#define PAUSE_BUTTON N_("P") +#define PAUSE_BUTTON "P" MenuItem buttonBar[] = { - {"<<", ToStartProc}, - {"<", BackwardProc}, - {PAUSE_BUTTON, PauseProc}, - {">", ForwardProc}, - {">>", ToEndProc}, - {NULL, NULL} + {"<<", "<<", ToStartProc}, + {"<", "<", BackwardProc}, + {PAUSE_BUTTON, PAUSE_BUTTON, PauseProc}, + {">", ">", ForwardProc}, + {">>", ">>", ToEndProc}, + {NULL, NULL, NULL} }; #define PIECE_MENU_SIZE 18 @@ -3718,7 +3720,7 @@ void CreateMenuBarPopup(parent, name, mb) menu, args, j); } else { XtSetArg(args[j], XtNlabel, XtNewString(_(mi->string))); - entry = XtCreateManagedWidget(mi->string, smeBSBObjectClass, + entry = XtCreateManagedWidget(mi->ref, smeBSBObjectClass, menu, args, j+1); XtAddCallback(entry, XtNcallback, (XtCallbackProc) MenuBarSelect, @@ -3745,7 +3747,7 @@ Widget CreateMenuBar(mb) while (mb->name != NULL) { safeStrCpy(menuName, "menu", sizeof(menuName)/sizeof(menuName[0]) ); - strncat(menuName, mb->name, MSG_SIZ - strlen(menuName) - 1); + strncat(menuName, mb->ref, MSG_SIZ - strlen(menuName) - 1); j = 0; XtSetArg(args[j], XtNmenuName, XtNewString(menuName)); j++; if (tinyLayout) {