X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=xboard.c;h=b4efcd75e14b3ed799162e2e0a3ab0fb333c6537;hb=f2344ce98b5950c7a047c3ee29959ad9f26ae8ae;hp=81983763ef9a55e110c555b24df95776582bc7a1;hpb=f581a6491f93f82729339bc639b4ffa50993abed;p=xboard.git diff --git a/xboard.c b/xboard.c index 8198376..b4efcd7 100644 --- a/xboard.c +++ b/xboard.c @@ -473,6 +473,7 @@ void BoardOptionsProc P((Widget w, XEvent *event, String *prms, Cardinal *nprms) void LoadOptionsProc P((Widget w, XEvent *event, String *prms, Cardinal *nprms)); void SaveOptionsProc P((Widget w, XEvent *event, String *prms, Cardinal *nprms)); void EditBookProc P((Widget w, XEvent *event, String *prms, Cardinal *nprms)); +void SelectMove P((Widget w, XEvent * event, String * params, Cardinal * nParams)); void GameListOptionsPopDown P(()); void GenericPopDown P(()); void update_ics_width P(()); @@ -1036,11 +1037,11 @@ XtActionsRec boardActions[] = { { "GameListPopDown", (XtActionProc) GameListPopDown }, { "GameListOptionsPopDown", (XtActionProc) GameListOptionsPopDown }, { "PromotionPopDown", (XtActionProc) PromotionPopDown }, - { "HistoryPopDown", (XtActionProc) HistoryPopDown }, { "EngineOutputPopDown", (XtActionProc) EngineOutputPopDown }, { "EvalGraphPopDown", (XtActionProc) EvalGraphPopDown }, { "GenericPopDown", (XtActionProc) GenericPopDown }, { "CopyMemoProc", (XtActionProc) CopyMemoProc }, + { "SelectMove", (XtActionProc) SelectMove }, }; char globalTranslations[] = @@ -1588,8 +1589,8 @@ GetWindowCoords() { // wrapper to shield use of window handles from back-end (make addressible by number?) // In XBoard this will have to wait until awareness of window parameters is implemented GetActualPlacement(shellWidget, &wpMain); - if(EngineOutputIsUp()) GetActualPlacement(engineOutputShell, &wpEngineOutput); else - if(MoveHistoryIsUp()) GetActualPlacement(historyShell, &wpMoveHistory); + if(EngineOutputIsUp()) GetActualPlacement(engineOutputShell, &wpEngineOutput); + if(MoveHistoryIsUp()) GetActualPlacement(shells[7], &wpMoveHistory); if(EvalGraphIsUp()) GetActualPlacement(evalGraphShell, &wpEvalGraph); if(GameListIsUp()) GetActualPlacement(gameListShell, &wpGameList); if(shellUp[1]) GetActualPlacement(shells[1], &wpComment); @@ -2692,6 +2693,8 @@ XBoard square size (hint): %d\n\ return 0; } +static Boolean noEcho; + void ShutDownFrontEnd() { @@ -2701,6 +2704,7 @@ ShutDownFrontEnd() if (saveSettingsOnExit) SaveSettings(settingsFileName); unlink(gameCopyFilename); unlink(gamePasteFilename); + if(noEcho) EchoOn(); } RETSIGTYPE TermSizeSigHandler(int sig) @@ -5122,7 +5126,7 @@ void PromotionPopUp() (XtPointer) dialog); XawDialogAddButton(dialog, _("Captain"), PromotionCallback, (XtPointer) dialog); - } else { + } else { XawDialogAddButton(dialog, _("Queen"), PromotionCallback, (XtPointer) dialog); XawDialogAddButton(dialog, _("Rook"), PromotionCallback, @@ -5133,7 +5137,7 @@ void PromotionPopUp() (XtPointer) dialog); } if (!appData.testLegality || gameInfo.variant == VariantSuicide || - gameInfo.variant == VariantSpartan && !WhiteOnMove(currentMove) || + gameInfo.variant == VariantSpartan && !WhiteOnMove(currentMove) || gameInfo.variant == VariantGiveaway) { XawDialogAddButton(dialog, _("King"), PromotionCallback, (XtPointer) dialog); @@ -5945,7 +5949,7 @@ void MatchProc(w, event, prms, nprms) String *prms; Cardinal *nprms; { - MatchEvent(2); + MatchEvent(2); } void IcsClientProc(w, event, prms, nprms) @@ -7223,15 +7227,23 @@ PlayAlarmSound() } void +PlayTellSound() +{ + PlaySound(appData.soundTell); +} + +void EchoOn() { system("stty echo"); + noEcho = False; } void EchoOff() { system("stty -echo"); + noEcho = True; } void