From: H.G. Muller Date: Tue, 27 Oct 2009 22:32:07 +0000 (-0700) Subject: fix for bug #27826: fixed autoDisplayComment X-Git-Tag: v4.4.1~8 X-Git-Url: http://winboard.nl/cgi-bin?a=commitdiff_plain;h=d7ba1f9301bde533d4eaf67586922a7b7ab30ce8;p=xboard.git fix for bug #27826: fixed autoDisplayComment apparently the -autoDisplayComment option was not working, not even in WinBoard. This patch should fix it,both for WB and XB. (Unfortunately xboard.c and winboard.c were using a different name for the same front-end variable I needed, so I had to change one of them.) --- diff --git a/backend.c b/backend.c index 9f6af34..6f4fa71 100755 --- a/backend.c +++ b/backend.c @@ -13024,26 +13024,23 @@ DisplayComment(moveNumber, text) char title[MSG_SIZ]; char buf[8000]; // comment can be long! int score, depth; - - if( appData.autoDisplayComment ) { - if (moveNumber < 0 || parseList[moveNumber][0] == NULLCHAR) { - strcpy(title, "Comment"); - } else { - sprintf(title, "Comment on %d.%s%s", moveNumber / 2 + 1, - WhiteOnMove(moveNumber) ? " " : ".. ", - parseList[moveNumber]); - } - // [HGM] PV info: display PV info together with (or as) comment - if(moveNumber >= 0 && (depth = pvInfoList[moveNumber].depth) > 0) { - if(text == NULL) text = ""; - score = pvInfoList[moveNumber].score; - sprintf(buf, "%s%.2f/%d %d\n%s", score>0 ? "+" : "", score/100., - depth, (pvInfoList[moveNumber].time+50)/100, text); - text = buf; - } - } else title[0] = 0; - - if (text != NULL) + + if (moveNumber < 0 || parseList[moveNumber][0] == NULLCHAR) { + strcpy(title, "Comment"); + } else { + sprintf(title, "Comment on %d.%s%s", moveNumber / 2 + 1, + WhiteOnMove(moveNumber) ? " " : ".. ", + parseList[moveNumber]); + } + // [HGM] PV info: display PV info together with (or as) comment + if(moveNumber >= 0 && (depth = pvInfoList[moveNumber].depth) > 0) { + if(text == NULL) text = ""; + score = pvInfoList[moveNumber].score; + sprintf(buf, "%s%.2f/%d %d\n%s", score>0 ? "+" : "", score/100., + depth, (pvInfoList[moveNumber].time+50)/100, text); + text = buf; + } + if (text != NULL && (appData.autoDisplayComment || commentUp)) CommentPopUp(title, text); } diff --git a/frontend.h b/frontend.h index 0e782e1..ed92687 100644 --- a/frontend.h +++ b/frontend.h @@ -183,6 +183,7 @@ void HistorySet P((char movelist[][2*MOVE_LEN], int first, int last, int current void FreezeUI P((void)); void ThawUI P((void)); extern char *programName; +extern int commentUp; typedef struct FrontEndProgramStats_TAG { int which; diff --git a/winboard/winboard.c b/winboard/winboard.c index 9782495..5a8df2b 100644 --- a/winboard/winboard.c +++ b/winboard/winboard.c @@ -347,7 +347,7 @@ static char *commentText; static int commentIndex; static Boolean editComment = FALSE; HWND commentDialog = NULL; -BOOLEAN commentDialogUp = FALSE; +int commentUp = FALSE; static int commentX, commentY, commentH, commentW; static char *analysisTitle; @@ -5780,7 +5780,7 @@ WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) break; case IDM_EditComment: - if (commentDialogUp && editComment) { + if (commentUp && editComment) { CommentPopDown(); } else { EditCommentEvent(); @@ -7136,14 +7136,14 @@ EitherCommentPopUp(int index, char *title, char *str, BOOLEAN edit) if (commentDialog) { SendMessage(commentDialog, WM_INITDIALOG, 0, 0); - if (!commentDialogUp) ShowWindow(commentDialog, SW_SHOW); + if (!commentUp) ShowWindow(commentDialog, SW_SHOW); } else { lpProc = MakeProcInstance((FARPROC)CommentDialog, hInst); CreateDialog(hInst, MAKEINTRESOURCE(DLG_EditComment), hwndMain, (DLGPROC)lpProc); FreeProcInstance(lpProc); } - commentDialogUp = TRUE; + commentUp = TRUE; } @@ -9436,7 +9436,7 @@ CommentPopDown(void) if (commentDialog) { ShowWindow(commentDialog, SW_HIDE); } - commentDialogUp = FALSE; + commentUp = FALSE; } VOID