X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=xboard.c;h=6aea957ab543077bdb21839c7aed80e6ba349600;hb=c0d0ea91773838e5d11c3cd3b407fea251058c34;hp=538d55edb60d75d851637af0ac157e6c3b392361;hpb=86932d68dc115d304fddb290947fd04323d62cbd;p=xboard.git diff --git a/xboard.c b/xboard.c index 538d55e..6aea957 100644 --- a/xboard.c +++ b/xboard.c @@ -293,7 +293,6 @@ GC lightSquareGC, darkSquareGC, lineGC, wdPieceGC, wlPieceGC, Pixmap iconPixmap, wIconPixmap, bIconPixmap, xMarkPixmap; Widget shellWidget, formWidget, boardWidget, titleWidget, dropMenu, menuBarWidget; Option *optList; // contains all widgets of main window -XSegment secondSegments[BOARD_RANKS + BOARD_FILES + 2]; XSegment gridSegments[BOARD_RANKS + BOARD_FILES + 2]; #if ENABLE_NLS XFontSet fontSet, clockFontSet; @@ -889,6 +888,16 @@ MainWindowUp () return xBoardWindow != 0; } +void SwitchWindow() +{ + extern Option dualOptions[]; + static Window dual; + Window tmp = xBoardWindow; + if(!dual) dual = XtWindow(dualOptions[3].handle); // must be first call + xBoardWindow = dual; // swap them + dual = tmp; +} + void PopUpStartupDialog () { // start menu not implemented in XBoard @@ -927,7 +936,7 @@ InitDrawingSizes (BoardSize boardSize, int flags) int i; static Dimension oldWidth, oldHeight; static VariantClass oldVariant; - static int oldDual = -1, oldMono = -1; + static int oldMono = -1; if(!formWidget) return; @@ -935,21 +944,15 @@ InitDrawingSizes (BoardSize boardSize, int flags) boardWidth = lineGap + BOARD_WIDTH * (squareSize + lineGap); boardHeight = lineGap + BOARD_HEIGHT * (squareSize + lineGap); - if(boardWidth != oldWidth || boardHeight != oldHeight || oldDual != twoBoards) { // do resizing stuff only if size actually changed + if(boardWidth != oldWidth || boardHeight != oldHeight) { // do resizing stuff only if size actually changed - oldWidth = boardWidth; oldHeight = boardHeight; oldDual = twoBoards; + oldWidth = boardWidth; oldHeight = boardHeight; CreateGrid(); - hOffset = boardWidth + 10; - for(i=0; inumber > 1) { - GameListPopUp(f, title); - return TRUE; - } - GameListDestroy(); - gameNumber = 1; - } - return LoadGame(f, gameNumber, title, FALSE); -} /* this variable is shared between CopyPositionProc and SendPositionSelection */ char *selected_fen_position=NULL; @@ -3171,41 +3159,6 @@ ManInner (Widget w, XEvent *event, String *prms, Cardinal *nprms) } void -DisplayMessage (char *message, char *extMessage) -{ - /* display a message in the message widget */ - - char buf[MSG_SIZ]; - Arg arg; - - if (extMessage) - { - if (*message) - { - snprintf(buf, sizeof(buf), "%s %s", message, extMessage); - message = buf; - } - else - { - message = extMessage; - }; - }; - - safeStrCpy(lastMsg, message, MSG_SIZ); // [HGM] make available - - /* need to test if messageWidget already exists, since this function - can also be called during the startup, if for example a Xresource - is not set up correctly */ - if(optList && optList[14].handle) - { - XtSetArg(arg, XtNlabel, message); - XtSetValues(optList[14].handle, &arg, 1); - }; - - return; -} - -void SetWindowTitle (char *text, char *title, char *icon) { Arg args[16]; @@ -3394,11 +3347,11 @@ StartClockTimer (long millisec) } void -DisplayTimerLabel (int optNr, char *color, long timer, int highlight) +DisplayTimerLabel (Option *opt, char *color, long timer, int highlight) { char buf[MSG_SIZ]; Arg args[16]; - Widget w = optList[optNr].handle; + Widget w = (Widget) opt->handle; /* check for low time warning */ Pixel foregroundOrWarningColor = timerForegroundPixel;