X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=ChangeLog;h=6bc900259549be9f208a62a383a9bbe036be4fb6;hb=d2174be3bdd0752499ae0d448f6f9d5c649e2b63;hp=7ac79164dd9d438ffef29348d5b9286bc16388b8;hpb=bf01374578572bde98774c7366d3ab1ce6e0ff70;p=xboard.git diff --git a/ChangeLog b/ChangeLog index 7ac7916..6bc9002 100644 --- a/ChangeLog +++ b/ChangeLog @@ -3,6 +3,3881 @@ ChangeLog for XBoard/WinBoard (latest entries created by git log --no-merges --pretty="%ai %an <%ae>:%n%s%n%n%b" vlast.. ) +2012-02-26 18:55:10 -0800 Arun Persaud : +add information about our webpage and were to report bugs into the help menu + + +2012-02-26 18:40:27 -0800 Arun Persaud : +fixed "make install-pdf": missing target for recursive make in po directory + + +2012-02-26 23:06:33 +0100 H.G. Muller : +Suppress recent-engines menu items in ICS mode + + +2012-02-26 22:45:12 +0100 H.G. Muller : +Fix 50-move counter in ICS mode + +Marking irreversible moves in the EP_STATUS did not work in ICS mode, +as ApplyMove,which did that is never executed there. Only the boards +sent by ICS are displayed,especially in observing mode. Now the status is +derived from the ICS mov strings (x in the SAN move, or P in the long move. + +2012-02-26 17:18:39 +0100 H.G. Muller : +Fix two 64-bit warnings + +Passing the engine number in a pointer variable to the callback needed +a two-step cast. + +2012-02-26 16:53:24 +0100 H.G. Muller : +Fix piece symbols on switch back to variant normal + +Variant switches were not properly detected, meaning the variable pieces +could keep a form belonging to a previous variant. (E.g. Queen remained +a Lance image after switching from shogi to normal.) + +2012-02-26 14:07:50 +0100 H.G. Muller : +Keep XBoard windows attached on resize + +Windows attached to bottom or right are displaced with the size increase. +Their perpendicular dimension is also scaled, to keep their edges at the same +fraction of the main window, unless they stick out. In the latter case the +fraction is clipped to 1, so that edge moves with the full size increase. + +2012-02-25 22:40:56 +0100 H.G. Muller : +Implement -stickyWindows in XBoard + +This makes the auxiliary windows move with the main window when they were +touching, as in WinBoard. A control is added in the General Options dialog. + +2012-02-25 21:14:03 +0100 H.G. Muller : +Use more reliable X-call for getting window position + +XtGetValues on XtNx, XtNy is unreliable. XGetWindowAttributes seems +to give more reliable results, and automatically accounts for the width +of window dressing. The -frameX/Y options are no longer needed bcause +of this, and were removed. + +2012-02-25 11:55:19 +0100 H.G. Muller : +Make frame width configurable in XB + +New persistent options -frameX, -frameY now can be used to specify +the amount by which Xt lies about the window coordinates. + +2012-02-23 20:01:55 +0100 H.G. Muller : +Use combobox line for recent engines when available + +The entry made in the -recentEngineList for the startup engine was +derived from the -fcp value, but this would ignore a possible nickname. +In WinBoard we now use the full combobox line to derive the entry. + +2012-02-23 09:29:17 +0100 H.G. Muller : +Fix translation of EngineOutputTitle WB + + +2012-02-23 01:34:12 +0100 Byrial Jensen : +Updated Danish translation + + +2012-02-23 00:59:36 +0100 Byrial Jensen : +One missed translation of cps->which + + +2012-02-22 19:58:41 +0100 H.G. Muller : +Undo translation of cps->which = first/second + +The string in cps->which should not be translated, because it goes into +the debug file to label engine I/O, and many tools for processing +debug files (broadcasters, PGN extractors) rely on this being "first" or +"second". In all contexts where "first" and "second" need to be translated, +cps->which itself is already enclosed in _(). + +2012-02-22 18:27:40 +0100 H.G. Muller : +Implement -serverFile option + +This writs an extra debug file with only engine communiation on it, +for the benifit of programs like TLCS. + +2012-02-22 17:46:16 +0100 H.G. Muller : +Implement -autoCopyPV + +This option causes automatic copying of the last position of a PV walk +to the clipboard. + +2012-02-16 14:58:45 +0100 H.G. Muller : +Delete some load-game debug printing + +The debug printing in Disambiguate was no longer needed. The printing +of the started process in XBoard that went to stderr is now diverted +to debugFP, so it ends up in the debug file. + +2012-02-16 14:41:43 +0100 H.G. Muller : +Move change of debug file to before game load + +Loading a game from -lgf is done before TwoMachinesEvent is called, +but logically belongs to the game. So the code to switch to the new +debug file for the game is moved to NextMatchGame now. + +2012-02-16 14:09:54 +0100 H.G. Muller : +Fix button grab for sweep selection + +The piece-menu initialization limited the grab of button events to those +occurring inside the board window (presumably intended to limit them to +the piece menu, but that does not pop up in sweep-selection mode). +This is now suppressed when -pieceMenu is off, so that selection continues +outside the the board. (Which is very convenient for pieces pu close to the +edge.) + +2012-02-16 13:16:13 +0100 H.G. Muller : +Don't leave piece selected after piece menu + +PieceMenuEvent left the just introduced piece selected, which is almost +never what one wants, as it makes it jump to the next square when selects. +Which is especially annoying if it captures the piece you wanted to grab... + +2012-02-16 12:57:47 +0100 H.G. Muller : +Fix use of middle button for position setup + +With sweep selection the actual drop is made on releasing the button, +and this event was not caught for button 2. Button-2 motion events were +also not caught by the sweep-selection handler. + +2012-02-16 23:53:08 +0100 Byrial Jensen : +Fix one more typo in the translator comments explaning "first" and "second" + + +2012-02-16 23:39:32 +0100 Byrial Jensen : +Fix typo in translator comments explaning "first" and "second" + + +2012-02-16 23:23:20 +0100 Byrial Jensen : +Add args.h to POTFILES.in and change the interface to ExitArgError() so msg is c format string + +Having msg as a format string will ease translations because then +badArg doesn't have to come last. + +2012-02-16 22:51:44 +0100 Byrial Jensen : +Mark the strings "first" and "sencond" for translation. + +... and assign the translated strings to cps->which in function InitEngine() + +2012-02-16 18:42:10 +0100 Byrial Jensen : +Use ngettext() instead of gettext() for a string to allow better translation. + + +2012-02-16 00:19:59 -0800 Arun Persaud : +translation: updated uk.po + + +2012-02-15 20:59:09 -0800 Arun Persaud : +modified configure and makefile for handling mimedb update + +the default configure will install them using the xdg commands (if they exist on the system) + +2012-02-13 22:29:48 -0800 Arun Persaud : +add configure test for xdg-programs to install mime types; can be disabled for building of e.g. rpms + +in case the target system doesn't have the xdg-programs available, we test for them. +Distributions often have their own macros to install these, so we add an enable option to configure + +2012-02-13 22:05:26 +0100 H.G. Muller : +Remove a debug printf + +The parsePV debug printf becomes extremely verbose with -fSAN, -sSAN, +so it was deleted. + +2012-02-12 22:18:24 -0800 Arun Persaud : +new developer release + + +2012-02-12 22:19:37 -0800 Arun Persaud : +updated po/pot files + + +2012-02-12 22:17:03 -0800 Arun Persaud : +updated Changelog, NEWS, etc. + + +2012-02-12 07:52:54 -0800 Arun Persaud : +translation: updated uk.po + + +2012-02-12 11:38:30 +0100 H.G. Muller : +Leave height of row that only contains buttons free + +All elements of the GenericPopUp are still scaled to the text height, +including buttons appended behind them (browse or color buttons). +But we now make an exception for a row that only contains buttons, +as there is no harm in it being a little higher (and the buttons look +prettier that way). + +2012-02-12 00:01:24 +0100 H.G. Muller : +Fix OK button of error popup + +The error dialog popped up as a child of the board window, even when +DisplayError was called from a dialog. Now it checks if a transient +dialog is up, and if so, it pops up as a child of that, grabs focus, +and suppresses the system popdown of the transient dialog through a flag +dialogError until it is popped down itself. + +2012-02-11 20:07:39 +0100 H.G. Muller : +Update texi file + + +2012-02-11 10:18:02 -0800 Arun Persaud : +added some comments for translators + + +2012-02-11 10:08:46 -0800 Arun Persaud : +fixed comments for translators: comments starting with TRANSLATORS: are now copied to the po file + + +2012-02-11 19:01:49 +0100 H.G. Muller : +Also configure sweep selection + +To make sure this feature is tested, we set -pieceMenu false in the +master settings file. + +2012-02-11 18:26:34 +0100 H.G. Muller : +Fix date in copyright notice about-box + + +2012-02-11 17:15:11 +0100 H.G. Muller : +Fix switching animation masks on variant switch + +The masks for variant-dependent piees (E,H in Seirawan, promoted Golds +in Shogi, the Gothic Chancellor) were no longer updated in InitDrawingSizes +because of the patch to reduce X-server calls. + +2012-02-11 16:46:58 +0100 H.G. Muller : +Configure wider game list + +The game list was by default too small, so that there was no room for the +filter field. Now a width of 500 is specified, whcih works at -size 49 +as well as 72. + +2012-02-11 16:29:06 +0100 H.G. Muller : +Fix button chaining and combo/textbox label height + +Previous patches forgot to specify the height for the text labels on +-combo and -text options, so they were still too high. Buttons that go +on the same line as the previous element should be chained right, not rubber. + +2012-02-11 15:52:52 +0100 H.G. Muller : +Make -pgnNumberTag option setable from menu + +The Save Options dialog now containes a checkbox for this. + +2012-02-11 15:48:52 +0100 H.G. Muller : +Configure some new features switched on + +The master settings file switches -showTargetSquares, -sweepPromotions +and -seekGraph on, so that they will get more testing. + +2012-02-11 14:43:53 +0100 H.G. Muller : +Fix heigth of multi-line labels + +The previous height patch overlooked that some labels are multi-line, +and need more height. + +2012-02-11 14:10:21 +0100 H.G. Muller : +Fix popdown seekgraph on forward-event XB + +Only the grid was drawn when the > or >> button were operated, because +a full redraw was not forced by ForwardInner. The recent patch to take +the seek graph down on such events did not account for that. (BackwardInner +always seems to do full redraw, however?) + +2012-02-11 12:59:04 +0100 H.G. Muller : +Put front-end support for -recentEngines in XBoard + +The engines are added to the menu. Problem is still that in XBoard +startup engines are given by command, rather than selected by combobox, +so the command rather than the nickname ends up in the menu. If this is +then selected, it cannot be found in the list. To limit the damage, +Fairy-Max is now pre-installed without nickname. -recentEngines is now +configured to 4. + +2012-02-11 11:53:39 +0100 H.G. Muller : +Better solution to button-height problem + +In stead of adapting the height of text widgets to that of buttons, +(as represented by the message widget), we now do the opposite, and +adapt the button & label heights. This is made safe by obtaining textHeight +from the fontSet's max_logical_extent, though an XExtendsFontSet() call. +Turns out the default height of text widgets is not exactly that, but +4 pixels larger for borders and margin. + The parameter XtNvertDistance is now used to align the checkboxes with +the following text widget, and their size is derived from textHeight as +well. + The XtNvertDistance is set to -1 for the lower spin button, so that it +its border coincides with that of the upper spin button. Their height is +set to textHeight/2. This makes their combined height just 1 pixel more +than that of the preceeding text widget. (Uh? 2 x tw/2 -1 > tw?), so for +other buttons we use that too (i.e. textHeight = font_extent + 5). + +2012-02-10 22:39:08 +0100 H.G. Muller : +Fix warning + +Deleting debug printing had made a variable unused. + +2012-02-10 22:26:39 +0100 H.G. Muller : +Fix sleeping bug + +The text-edit-height patch introduced a bug that did not have any consquences +(yet), as the extra arg erroneously included leftover from a previous +SetValues call happened to be the same as one of the intended args. + +2012-02-10 20:51:41 +0100 H.G. Muller : +Fix unloading of first engine on tourney start + +Because NextTourneyGame was loading a new engine before ReserveGame was +called to unload it with dummy game nr = -1), the first engine proc kept +hanging. + +2012-02-10 18:39:09 +0100 H.G. Muller : +Remove some of the most verbose debug output + + +2012-02-10 17:46:35 +0100 H.G. Muller : +Delete some unused WinBoard bitmaps + +There waere up-side-down knight icons that apparently hid by mistake +in the bitmaps directory: they were not part of WinBoard + +2012-02-10 17:39:48 +0100 H.G. Muller : +Cosmetic: change 4.5 to 4.6 in xboard.conf comment + + +2012-02-10 17:35:22 +0100 H.G. Muller : +Fix crash on empty combobox menu XB + +XBoard crashed when a combobox without items was opened, as could easily +happen in the Load Engine dialogs when -firstChessProgramNames contained +no items, as it would without configuring. Now the creation of the popup +menu is suppressed in that case. + +2012-02-10 17:13:36 +0100 H.G. Muller : +Fix position of checkbox XB + +With the large height the widget get in internationalization, the +checkboxes are position way too high above the text. To shift them down +a dummy borderless label widget is drawn above them (when needed). + +2012-02-10 15:07:35 +0100 H.G. Muller : +Fix heights in Engine Output window XB + +The icons did not fit in the space above the memos anymore, so the height +of this area is now left free. + +2012-02-10 14:55:48 +0100 H.G. Muller : +Derive height of text-edits in dialogs from message widget + +With internationalization the default height of buttons has inexpliquably +inreased compared to that of text-edits, messing up the layout of the +GenericPopUp. The message widget is now used as a emasure of how high +the widgets should be. + +2012-02-10 14:21:37 +0100 H.G. Muller : +Configure XBoard engines and textures + +The new -useBoardTexture option is needed in xboard.conf, as we want to +distribute with the texture on, while the compiled-in default is off. +A list of 4 engines has been configured (fairymax, fruit, crafty, gnuchess), +as the Load Engine and Match Options checkboxes crash XBoard when the list +is empty. The -recentEngines option is set to 0 to make sure the code +associated with it is never executed: the code is still experimental, +and the required front-end support is only present in WinBoard anyway. + +2012-02-10 13:30:58 +0100 H.G. Muller : +Update Dutch WinBoard translation + + +2012-02-10 13:18:48 +0100 H.G. Muller : +Create room in some WB dialogs for translations + + +2012-02-10 13:17:30 +0100 H.G. Muller : +Add 5 missing strings to WinBoard translation template + + +2012-02-09 23:03:58 -0800 Arun Persaud : +new developer release + + +2012-02-09 23:04:46 -0800 Arun Persaud : +updated po-filies + + +2012-02-09 22:59:05 -0800 Arun Persaud : +updated Changelog, NEWS, etc. + +2012-02-09 22:44:39 +0100 H.G. Muller : +Fix non-bug in WinBoard + +The IDM_RecentEngines was not used in symbolic form everywhere. + +2012-02-09 18:46:08 +0100 H.G. Muller : +Fix MAXENGINES in WinBoard + +The front-end arrays for expanding the engine list measured 1000 entries, +in stead of MAXENGINES, leading them to overflow. + +2012-02-09 13:05:42 +0100 H.G. Muller : +Implement kludge to set options through Move Type-in + +A leading "!!! " will cause the rest of the line to be parsed as +command line. Very dangerous, as an unknown option (e.g. because of a typo) +will cause a fatal error, which makes XBoard exit. + +2012-02-09 13:04:44 +0100 H.G. Muller : +Put move number in Eval Graph title + + +2012-02-09 13:00:09 +0100 H.G. Muller : +Implement -pgnNumberTag option + +A new (persistent) boolean option controls if the sequence number is to +be written in saved tourney games as a Number tag, to make it easier +to correlate games with debug files. + +2012-02-09 12:55:52 +0100 H.G. Muller : +Create separate debug fil for each tourney game + +Users can now apecify a -debugfile with %d in its name, and this will +be replaced by the sequence number of the game. TwoMachinesEvent then +starts by opening a new file when the name has changed, so that each +game will go to a different file, with recognizable name. + +2012-02-09 12:51:25 +0100 H.G. Muller : +Fix bug in WB combobox readout + +The previous patch exposed a latent bug in the readout of the generic popup. + +2012-02-08 23:25:31 +0100 H.G. Muller : +Allow grouping of engines in engine list + +Lines "# GROUPNAME" and "# end" enclose a group in -firstChessProgramNames. + +2012-02-08 17:47:46 +0100 H.G. Muller : +Fix TidyProgramName + +A trailing .exe was not removed if the engine name was quoted. + +2012-02-08 17:45:42 +0100 H.G. Muller : +Put recently used engines in WB menu + +A new option -recentEngines specifies how many engines should be listed. +The list of nicknames is stored in the ettings file as -recentEngineList. +The engines are appended to the Engine menu. + +2012-02-04 19:37:51 +0100 H.G. Muller : +Fix registering of EditTagsProg + +This was registered with X as EditCommentProc! + +2012-02-07 23:04:49 +0100 H.G. Muller : +Increase max nr of engines to 2000 + +Move the #define for MAXENGINES also to common.h, so that both the +Load and Tourney dialog use the same maximum. + +2012-01-19 23:01:20 +0100 H.G. Muller : +Fix fix of switch to mono-mode + +The previous fix had == in stead of != for testing if mono-mode had changed. + +2012-01-19 22:21:38 +0100 H.G. Muller : +Make New Variant dialog visible in mono-mode + +All colored buttons did get a black background, and also black text... +Use timer background color in stead, which is white. + +2012-01-19 20:48:37 +0100 H.G. Muller : +Incease size of WB array of translated items + +For the BoardOptions dialog 42 items are now needed + +2012-01-19 17:18:25 +0100 H.G. Muller : +Implement Clone Tourney button XBoard + +This makes use of the new GenericUpdate(). + +2012-01-19 16:34:13 +0100 H.G. Muller : +Implement GenericUpdate function + +This does the opposite from GenericReadout: it copies the current +parameter values into the dialog. + +2012-01-19 12:19:27 +0100 H.G. Muller : +Fix arrow damage with highlightDragging XB + +With highlight dragging the highlights of the previous moves are cleared +when lifting the piece. Logically, this should also clear the arrow, but +to do that requires a board redraw, which is not done at this stage. (And +even then this would only be effective after marking the arrow damage, +which is not done yet either). As a temporary fix, we repair the arrow +by redrawing it. + This patch has moved marking of the arrow damage from DrawArrowHighlight +to a separate routine, so a future better fix can also call that when the +arrow should be erased. + +2012-01-18 16:01:50 +0100 H.G. Muller : +Prevent unnecessary loading of engines + +For engines that can be reused, the unloading at the end of a pairing +is in some cases wasteful, as the same engine will be used in the next +pairing as well. In simple gauntlets the gauntlet engine will always +stay first engine, while in multi-gauntlets the oppent engine will stay +the same for an entire round. In these cases unloading is now suppressed. + +2012-01-17 22:22:32 +0100 H.G. Muller : +Reset protocol version before loading new engine + +The protocol version was not reset, so if the previous engine was v1, +the newly loaded engine would not be sent a protover command, so +that its features would remain unknown! + +2012-01-17 19:33:32 +0100 H.G. Muller : +Give focus to board window after ICS login + +toprevent that the focus remains on any popped up chat boxes, it is +explicitlly set otherwise. The board window is preferred over the +ICS interaction window, because you can type from there to the ICS anyway, +and it makes all accelerator keys available. + +2012-01-16 14:37:05 +0100 H.G. Muller : +Fix seek-graph popup and popdown + +Clicking outside the board area in WB (e.g.on the clocks) would also +trigger seek-graph 'popup'. This is now suppressed by testing for +y-coord > 0. In addition, the seek graph is automaticaly taken down +when we step to another position in the current game (using buttons, +arrow keys or whatever). + +2012-01-15 21:29:11 +0100 H.G. Muller : +Suppress empty lines when observing on VICS + +Capture of the engine kibitzes when observing an engine game with +-autoKibitz on was still leaking a linefeed on the Variant ICS +(but not FICS or ICC!?). + +2012-01-15 21:24:12 +0100 H.G. Muller : +Fix printing non-numeric kibitz with -autoKibitz + +Messages that were not considered kibitzed engine PV info for lack of +numeric content, were kibitzed as coming from "your opponent", which +is nonsense if you were iobserving, and masked the source. Fortunately +star_match[0] is still holding the original name, at that point. + +2012-01-11 17:33:29 +0100 H.G. Muller : +Fix 4 warnings + + +2012-01-11 17:00:38 +0100 H.G. Muller : +Use same translation of "vs." everywhere + + +2012-01-11 17:08:18 +0100 H.G. Muller : +Add new translations to WB language file + + +2012-01-11 16:20:17 +0100 H.G. Muller : +Fix re-allocation of PGN-cache memory + +It allocated 8 times too much! + +2012-01-11 12:47:38 +0100 H.G. Muller : +Fix height board dialog + + +2012-01-11 12:34:39 +0100 H.G. Muller : +Enable WB time-control dialog even when no clock mode + +The dialog could be called from the tournament dialog to set a TCfor +the tourney even when currently in game-viewer mode, so it'd better work. + +2012-01-11 12:28:43 +0100 H.G. Muller : +Exempt variant seirawan from -disguisePromoted inheritance + +This is not a variant where promoted Pawns have to be distingushed +from primordial pieces, as captured pieces do not go into the holdings. + +2012-01-09 21:23:52 +0100 H.G. Muller : +Add control for overrideLineGap in WB Board dialog + +Make it a checkbox to choose between 0 and -1. + +2012-01-09 20:56:40 +0100 H.G. Muller : +Add Ctrl-D as alternative to Ctrl+Alt+F12 in WinBoard + +The acellerator key Ctrl+Alt+F12 seems reserved on Windows 7. + +2012-01-09 20:52:05 +0100 H.G. Muller : +Fix seek graph for VICS + +The sought command on the open-source ICS code is ICC-like (no terminating +line), although the server is FICS like. So also accept prompt as seek-graph +trigger on FICS. + +2012-01-09 20:27:01 +0100 H.G. Muller : +Open WB startup chat boxes only after logged on + +The init code for opening the chat boxes ismoved to DisplayIcsTitle(). + +2012-01-07 20:31:34 +0100 H.G. Muller : +Install mime types directly + + +2012-01-07 20:29:10 +0100 H.G. Muller : +Install desktop files directly + + +2012-01-07 20:19:09 +0100 H.G. Muller : +Install icons directly + +Rather than letting make-install copy the pixmaps to the XBoard data +directory they are installed directly from the source files. The name +of the TRN icon was also corrected and changed. + +2012-01-05 18:41:13 +0100 H.G. Muller : +Update texi file and remove duplicate control + +Some missing option descriptions were added. The highlight-dragging +control was removed from the General Options dialog, as it did the same +as Show Target Squares. -highlightDragging wa changed to a volatile option +with default value true, making it effectively disappear as an XBoard +option. (In WinBoard it is still persistent.) + +2012-01-05 15:55:54 +0100 H.G. Muller : +Remove the direct commands to the engines + + +2012-01-05 21:15:11 -0800 Arun Persaud : +forgot to list new desktop files in EXTRA_DIST section in Makefile.am + + +2012-01-05 20:08:23 -0800 Arun Persaud : +added some autogenerated po files to .gitignore + + +2012-01-05 20:05:44 -0800 Arun Persaud : +added desktop and mime-type association to autoconf install process + +This should install and uninstall the mime assocciation and also the icons. +Also renamed the desktop files to avoid possible name collisions. + +2012-01-03 21:30:59 -0800 Arun Persaud : +code cleanup: make function definition confirm to GNU coding style + +change everything in the main directory to + +void +funcname (int a, int b) + +format + +2012-01-03 18:43:18 -0800 Arun Persaud : +Updated copyright notice to 2012 + + +2012-01-03 21:32:04 +0100 H.G. Muller : +Implement -viewerOptions + +A mechanism is added to allow the user to configure persistently if the +game viewer that starts on clicking PGN files will use -ncp mode, or +load an egine for analysis (or, in fact, do anything). This by introducing +a persistent string option -viewerOptions, which will be parsed as a +command line after the real command line when the option -viewer was present. + +2012-01-03 11:29:00 +0100 H.G. Muller : +Fix crash in auto-comment + +Trailing linefeeds in AppendComment were not properly stripped off, +leading to a mismatch between the allocted and used memory, and thus +possible buffer overruns. + +2012-01-02 23:46:18 +0100 H.G. Muller : +Fix crash at match end + +The -afterTourney option had broken old-style matches, because the ranking +string that was tested for "busy" is not set there at all, and remains a +NULL pointer, which strcmp doesn't like. + +2012-01-01 19:56:58 +0100 H.G. Muller : +Add desktop files for PGN viewer and tournament player + +The desktop files define startup commands for handling PGN, FEN and +tourney files, calling xboard with the proper command-line options. + +2012-01-01 19:53:02 +0100 H.G. Muller : +Add xml file for defining mime types + +The file xboard.xml defines application/x-chess-pgn, aplication/x-chess-fen +and application/x-xboard-trn as mime types for *.pgn, *.fen and *.trn files, +so these files can be associated with XBoard in various modes. + +2012-01-01 19:41:39 +0100 H.G. Muller : +Add icons for PGN and tourney files + +Icons are provided in two sizes: 32x32 and 48x48. + +2011-12-29 19:55:33 +0100 H.G. Muller : +Clear square markers on new game + +Now that the markers can stay on after a first click, they need to be +explicitly cleared when moving to another board, including a new game. + +2011-12-29 15:51:18 +0100 H.G. Muller : +Abandon single-letter menus in tinyLayout + +Now that the items on the main menu bar are clipped, it iso longer +necessary to abbreviate them. + +2011-12-29 15:38:46 +0100 H.G. Muller : +Implement peeking previous position in WinBoard + +The backspace key is used to temporarily display the previous position. + +2011-12-29 15:32:20 +0100 H.G. Muller : +Fix parsing of faulty PGN tags + +A closing bracket could be missed in a malformed tag + +2011-12-29 15:29:00 +0100 H.G. Muller : +Fix parser for variant seirawan + +The new parser didnot understand gating suffixes with /, and did not +allow any suffix at all on SAN castling moves. + +2011-12-28 22:32:38 +0100 H.G. Muller : +Try to not confuse ICS rating adustments as shouts + +An explicit pattern match for the rating adjustment is added before +matching the shouts. + +2011-12-28 22:21:54 +0100 H.G. Muller : +Describe -overrideLineGap option in texi file + + +2011-12-28 22:03:30 +0100 H.G. Muller : +Use in stead of Ctrl+. for peeking last move + +I commented out the explicit detection of the Ctrl key, as this +is not needed when there are no 'unnatural' Ctrl keystrokes used +for binding. + +2011-12-28 19:37:49 +0100 H.G. Muller : +Next try for menu-bar sizing + +This time request the width needed to just fit everything, and then start +shaving off pixels from the currently largest until the entire thing fits. + +2011-12-28 15:17:49 +0100 H.G. Muller : +Clip texts on menu bar + +The width of the items on the main menu bar is restricted so the bar +will never exceed board width. + +2011-12-28 14:01:53 +0100 H.G. Muller : +Fix format in temporary timing printf + + +2011-12-28 13:38:59 +0100 H.G. Muller : +Don't test drops as mate evasions in variant seirawan + + +2011-12-28 13:36:23 +0100 H.G. Muller : +Fix ICS castling rights + +Copying the castling rights together with CopyBoard seems to have +broken handling of ICS rights, where ParseBoard12 prepares a board +in a local variable, an copies it before parsing the rights. + +2011-12-28 13:35:10 +0100 H.G. Muller : +Fix initial holdings ICS seirawan games + + +2011-12-27 18:31:05 +0100 H.G. Muller : +Fix sending of S-Chess gating moves to ICS + +Normal moves did not get the gating suffix sent. + +2011-12-27 17:56:07 +0100 H.G. Muller : +Fix menu grayout after illegal move + +TheThinkingEnables were not reset to user state after the engine rejected +the entered move as illegal. + +2011-12-27 13:26:36 +0100 H.G. Muller : +Allow setting of holdings with edit command + +For the benefit of Fairy-Max' Seirawan Chess implementation, the edit command +no also sends holdings contents (if the engine sent feature xedit=1), encoded +as pieceType + '@' + holdingsCount (if the count is non-zero). + +2011-12-24 17:54:16 +0100 H.G. Muller : +Fix out-of-bounds access in check test + +Thepath to make the check test work with drops had broken the test +after null move (both have rf<0), which led to corruption of the high +word of the black clock. + +2011-12-24 17:51:22 +0100 H.G. Muller : +Fix legality of Spartan promotion to king + +In the check test promotion to King is only allowed if there are not +yet 2 kings. + +2011-12-21 22:17:01 +0100 H.G. Muller : +Fix switching back from mono-mode XB + +Suppressing unnecesary X-server calls in InitDrawingSizes had broken +switching back from monoMode, because the animVars have to be recreated +for that, and this was only done when the variant changed. + +2011-12-21 22:09:02 +0100 H.G. Muller : +Fix showTargetSquares in mono-mode XB + +Make the marker dots black (captures) and white, and draw a circle +in the opposite color around them in monoMode. + +2011-12-21 22:00:26 +0100 H.G. Muller : +Fix arrow highlighting in mono-mode XB + +Draw a line around it in darkSquare color in monoMode. + +2011-12-21 17:48:33 +0100 H.G. Muller : +Fix alignment of generic browse button XBoard + +The width ofthe browse button is now read back after creating it, +and subtracted from the preceding text edit. + +2011-12-21 14:41:31 +0100 H.G. Muller : +Add -afterTourney option + +Only the instance pinting the tourney result will execute this. + +2011-12-22 21:01:43 +0100 Byrial Jensen : +Fix buffer possible overflow when writings tags + +PGNTagsStatic() could overflow its buffer and is removed. PGNTags() do the work instead of calling it. +It starts by calculation the required buffer size and then allocate the buffer. +PrintPGNTags() now prints directly to the file without having a buffer. + +2011-12-22 15:01:31 +0100 Byrial Jensen : +One more string marked for translation + +And it is moved inside the if statement that uses it. + +2011-12-22 14:30:08 +0100 Byrial Jensen : +Fix checking of return value from snprintf() + +snprintf() returns the needed space excluding the trailing 0 byte, so +it has truncated if the returned valued is greater than or EQUAL TO the buffersize + +2011-12-19 16:49:31 +0100 Byrial Jensen : +Fix unportable memory initialisation + +Memory sat to zero by calloc() cannot safely be assumed to have the pointer value NULL + +2011-12-19 13:16:58 +0100 Byrial Jensen : +Add 2 strings for translation + + +2011-12-19 11:25:11 +0100 Byrial Jensen : +Remove the last 2 compile warnings in gamelist.h + + +2011-12-19 11:17:48 +0100 Byrial Jensen : +Add #include "moves.h" to gamelist.c for def. of CopyBoard() + + +2011-12-19 11:11:34 +0100 Byrial Jensen : +Definition of TimeMark moved from 3 c files to backend.h + + +2011-12-19 01:21:46 +0100 Byrial Jensen : +Transfer a pointer to the promoChar from PromotionPopUp() to PromotionCallback(). Fixes #34980 + + +2011-12-18 17:24:07 +0100 Byrial Jensen : +Duh! Initialise the argument to sscanf() inside the loop, so it always gets a known value when sscanf() fails. + + +2011-12-18 17:18:12 +0100 Byrial Jensen : +Give numeric options the value 0 if a non-numeric text is entered (one more place). Before the value ended up undefined. + + +2011-12-18 17:08:46 +0100 Byrial Jensen : +Give numeric options the value 0 if a non-numeric text is entered. Before the value ended up undefined. + + +2011-12-18 15:41:46 +0100 Byrial Jensen : +Fix possible crash on 64-bit systems when copying game or position + +The two convertproc's for X selections caused reads out of bounds on 64-bit systems. +I hope that this is the right solution. I am not experienced with X stuff, but it +follows that I have seen in other programs, testing shows that copying still works, +and the reading out of bounds have disappearinged with this patch. + +2011-12-18 13:26:20 +0100 Byrial Jensen : +Fix a possible crash in the file browser + +If the OK button was selected in the file browser when no file was selected +there was a read out of bounds which could crash xboard + +2011-12-17 22:54:34 +0100 Byrial Jensen : +Fix a memory leak in Sound Options + + +2011-12-16 02:57:20 +0100 Byrial Jensen : +Fix crash when selecting user soundfile due to free() of not malloc()'ed memory + + +2011-12-16 02:32:37 +0100 Byrial Jensen : +Make GenericPopUp() more readable by using more named flags instead of numerals + +Defines the flags SAME_ROW (value 1) and NO_OK (value 2) for use with buttons and endmarks. +There should no functional change. +Also add a code comment where a condition depends on an uninitialised value. There is no direct harm, as both +branches do the same (that is nothing) when the value is uninitialised. + +2011-12-15 02:51:36 +0100 Byrial Jensen : +Add NO_GETTEXT flag for combobox. Fix bug #34991 + +Define NO_GETTEXT flag to avoid calling gettext() for comboboxes, and define COMBO_CALLBACK +flag to call comboCallback() when an item is selected in a combobox (no new code for this, +just a symbolic value instead of a number). The flags are used for the min field of struct Option. +NO_GETTEXT is used for the Select engine combobixes in the Match Options and Load engine windows. + +2011-12-13 19:48:37 -0800 Arun Persaud : +only translate entries in CreateComboPopup if strlen>0; fixes #34991 + + +2011-12-12 19:06:26 -0800 Byrial Jensen : +fix for repeating key issue, with this allissues this bug should be closed; fixes #35000 + + +2011-12-12 18:45:05 -0800 Arun Persaud : +also don't translate selection in ComboSelect; fixes #34991 + + +2011-12-12 18:40:23 -0800 Arun Persaud : +make entries in CreateComboPopup not translateable; fixes #34991 + + +2011-12-10 16:06:47 -0800 Arun Persaud : +fix translation for engine list; fixes #34991 + +* click on browse button should be recognized in translated versions +* width of button should auto-scale + +2011-12-10 11:04:17 -0800 Arun Persaud : +change keybindings that don't use ctrl, make MoveTypeInProc ctrl aware; fixes #35000 + +two keybindings were using keys without modifiers, adjusted these to use the ctrl key. +Furthermore when typing in moves we need to check if ctrl was pressed and ignore those inputs. + +Also added documentation for these keybindings. + +2011-12-10 10:51:18 -0800 Arun Persaud : +replaced unicode character for "'" in xboard.texi + + +2011-12-10 10:08:48 -0800 Arun Persaud : +removed Iconify function. Should be handled by the window manager. + + +2011-12-08 20:53:13 -0800 Arun Persaud : +marked an error messages for translation + + +2011-12-08 20:33:29 -0800 Arun Persaud : +translation: updated uk.po + + +2011-12-03 17:52:23 -0800 Arun Persaud : +fixed size of XBoard icon to 48x48 + +the icon gets installed in the 48x48 directory, but was >200 pixel wide. This gave a warning during rpm creation. + +2011-12-03 08:07:32 -0800 Arun Persaud : +updated pot file + +marked a lot of new strings for translation + +2011-12-03 08:06:42 -0800 Arun Persaud : +added new files to po/POTFILES.in + + +2011-12-02 22:13:36 -0800 Arun Persaud : +marked more strings for translation + + +2011-12-02 20:08:01 -0800 Arun Persaud : +translation: added danish translation + + +2011-12-01 18:45:55 +0100 H.G. Muller : +Change encoding of seirawan ICS gating-castlings + +In stead of using upper/lower-case promoChar, the ICS now uses +RxK notation, like WinBoard writes in SAN, for better consistency. + +2011-11-30 15:38:21 +0100 H.G. Muller : +Put promo-suffix on ICS move in variant seirawan castlings + +The distinction upper-case / lowercase determines gating at R / K + +2011-11-28 11:56:18 +0100 H.G. Muller : +Refrain from making unnecessary resize X request + +The window resizing code in InitDrawingSizes is suppressed when no +change is needed. Similarly, changing piece bitmaps is suppressed when +we stay in the same variant (and InitDrawingSizes is called e.g. because +of chaging lineGap through the Board dialog). + +2011-11-27 22:27:00 +0100 H.G. Muller : +Fix parsing of O-O castling in variant janus + +The new parser did not realize it meant e1i1 rather than wild e1h1. + +2011-11-26 22:28:23 +0100 H.G. Muller : +Show 50-move counter also when observing ICS games + +To not cheat 50-move display was suppressed in ICS mode, +but for observing a game this made no sense. + +2011-11-26 22:22:07 +0100 H.G. Muller : +Ignore ICS game starts when already in game + +The advance switching of the variant on game-start messages was +disruptive for users with gin=1, which also sends such messages +for other games than your own. For now fixed by only reacting on +them when idle (detected by invalid game number). + +2011-11-11 18:16:19 +0100 H.G. Muller : +Fix WinBoard clock-click bug + +Clicking on the clock in WinBoard also called the LeftClick routine +for handling clicks on the board. This led to the from-square being set +to some inalid value, so that the next genuine board click was interpreted +as a to-click, with undesired effects, especially with legality testing off +or in EditPosition mode, where weird things are accepted. + +2011-11-06 17:20:01 +0100 H.G. Muller : +Add feature-override options + +A few (dangerous) options are added to allow a user to override +engine features, or change their defaults, by supplying a string +with feature commands (e.g. "sigint=0") which tricks XBoard into +thinking the engine sent that. There is a -featureDefaults which is +processed before the engine features, and -first/secondFeatures +which is parsed just before engine initialization. + This goes horribly wrong when the user wouldtry silly things like +including 'option' or 'done' features! + +2011-11-05 12:32:39 -0700 Arun Persaud : +translation: updated uk.po + + +2011-11-04 21:58:39 +0100 H.G. Muller : +Fix handling of -secondOptions option + +The -firstOptions and -secondOptions settigs were not swapped when +-singleEngieList was true, so the second engine's options would never +be set in that case, but used for the first engine. + +2011-11-04 21:55:21 +0100 H.G. Muller : +Accept setup command in variant fairy even with legality testing on + +Variant fairy does not really have a defined opening position, but lots +of pieces defined, so we might want to play with legality checking on, +but still rely on the engine for the opening position + +2011-11-04 21:52:20 +0100 H.G. Muller : +Set pieceToCharTable by setup command even when ignoring FEN + +When the user starts from a set-up position, the egines default +openingposition has to be ignored, but the pieceToCharTable would +still be relevant. + +2011-11-04 21:48:24 +0100 H.G. Muller : +Change default sweep-promotion choicein queenless variants + +The initial scanning of the sweep piece until a defined piece is found +is now in the increasing direction (still starting at Queen), so that +the fairy pieces are suggested before R, B and N. + +2011-11-03 16:38:57 +0100 H.G. Muller : +Clear board markers when moving to other position + +Now the markers from -showTargetSquares would stay on after a first click +for the benefit of a click-click move, they would also stay on when not +finishing the move, but operating the < > buttons in stead to call up +other positions. ForwardInner and BackwardInner now clear the markers, +like they also cleared highlights. + +2011-11-01 18:30:22 -0700 Arun Persaud : +updated Changelog, NEWS, etc. + +2011-10-25 15:32:27 +0200 H.G. Muller : +Fix two warnings + +2011-10-24 20:00:28 +0200 H.G. Muller : +Don't adjust clock on right-click in EditGame mode WB + +This was a change that was already done for the left-clicks, but somehow +never made it togit for the right-clicks + +2011-10-24 19:50:25 +0200 H.G. Muller : +Change chase message in .lng files + +2011-10-24 19:31:08 +0200 H.G. Muller : +Let perpetual-chase message mention square + +In stead of a boolean, PerpetualChase now returns the square the chased +piece ends on (encoded as an int), and on adjudication it will be printed. + +2011-10-24 19:26:02 +0200 H.G. Muller : +Add mechanism to translate variable messages in WinBoard + +A message prefixed with % in the lng file will be considered a match +if it matches the start of the text to be printed, and the remaining +part of the latter will remain untranslated. This was needed to allow +translation of the perpetual change message, now it indicates the square +of the chased piece. + +2011-10-24 19:20:13 +0200 H.G. Muller : +Use other interpretation of Asia rules for chase detection + +The detection of perpetual chases now ignores pre-existing checks. + +2011-10-12 17:28:48 +0200 H.G. Muller : +Fix crash on loading garbage game file + +The code to cache games was not resistant to moves before a valid +game start, or a game filewithout any games at all. + +2011-10-08 20:43:52 +0200 H.G. Muller : +Incorporate variant type in book hash key + +This prevents booksforone variant being used for another, and allows +multi-variant books. + +2011-10-07 15:41:44 +0200 H.G. Muller : +Update language.txt file + + +2011-10-07 15:34:01 +0200 H.G. Muller : +Update Dutch lng file + + +2011-10-07 15:21:53 +0200 H.G. Muller : +Fix Load Options dialog WB + +Defined fastkeys; reordered elements so that fastkeys focus edit they +are intended for. Changed some of the more obscure texts. Corrected +list of transatble dialog items, adding a few missing ones. + +2011-09-13 20:01:42 +0200 H.G. Muller : +Fix some warnings + +Prototypes were added, ormoved from backend.c to backend.h. + +2011-08-26 12:44:08 +0200 H.G. Muller : +Put 'Load Next' button back in WB Game List + +The '>' button for loading the next (filtered) game is re-instated in the +WinBoard GameList. The main window has now accelerator keys Ctrl+Up and +Ctrl+Down for loading the previous and next filtered game. + +2011-08-26 12:31:59 +0200 H.G. Muller : +Speed up position search and consider side to move + +The position search is made to pay attention to the side to move, +which produces a speedup, because we only have to compare half the +game positions when looking for an exact position match. An addition +we now keep track of the total number of pieces, and abandon a game when +it drops below the number of pieces in the position we seek. + +2011-08-21 23:16:15 +0200 H.G. Muller : +Dynamically allocate move cache + +A small statically declared cache good for 250k moves (~3200 games) +will be expanded in steps of a factor 8 when it overflows. + +2011-08-18 18:40:38 +0200 H.G. Muller : +Translate search strings + + +2011-08-17 22:55:21 +0200 H.G. Muller : +Implement flipped search + + +2011-08-16 15:29:03 +0200 H.G. Muller : +Debug position search cache + + +2011-08-15 18:44:37 +0200 H.G. Muller : +profile + + +2011-08-18 18:01:54 +0200 H.G. Muller : +Translate search-mode strings + + +2011-08-15 16:59:39 +0200 H.G. Muller : +Quickscan + + +2011-10-23 16:04:00 +0200 H.G. Muller : +Fix duplicate loading of second engine in tourneys + +To decide if new engines should be loaded, it was tested if first.pr +equalled NoProc, assuming that ReserveGame would have left the engine +loaded if the next game would need the same engines. But a reuse=0 engine +could have caused termination of the first engine process anyway, while +the second would still be alive. So unconditionally starting of the second +engine would cause redundant engine processes to abound. + Now we only start new engine processes if both engine processes are dead. + +2011-10-23 15:53:32 +0200 H.G. Muller : +Fix PV walking with -fSAN + +The SAN options had broken the PV walking, because the shelving of the +walked PV to create space for the conversion to SAN of an incoming PV +would not be properly undone, but would add the walked PV to the game. + +2011-10-20 12:39:10 +0200 H.G. Muller : +Refine clock adjusting + +Adjusting the clocks by shift-clicking them is now only allowed with +autoCallFlag off, and an error-popup results when you do it otherwise. +Also, swtching to Edit Game mode won't reset the clocks to the stored +value anymore when you have just adjusted it. + +2011-10-12 17:43:33 +0200 H.G. Muller : +Fix crash on adding items near book end + +When Edit Book would add so many entries near the end of an opening +book that the end of the added info would surpass the old end of the +file, the copying of the tail got stuck in an infinite loop, extending +the file without limit with repeating info. + +2011-10-12 17:41:18 +0200 H.G. Muller : +Print message on wrong use of Clone Tourney + +The user is urged to first provide the name of an existing tourney file +when he presses the button without one. The button is also renamed. + +2011-10-12 17:38:33 +0200 H.G. Muller : +Fix invalid combobox entry WB + +A combobox label that was not in the list (because the user typed +it, rather than selecting one) would cause a crash. + +2011-10-12 17:23:57 +0200 H.G. Muller : +Fix crash on loading garbage game file + +XBoard crashed when a game file contained a PGN game result before +any valid game start, because data would be written in a game-list +node that did not exist yet. This would occur frequently when garage +was read; basically any asterisk in the data would do it. + +2011-10-11 23:31:01 +0200 H.G. Muller : +Add control to set -discourageOwnBooks WB + + +2011-10-11 20:53:52 -0700 Arun Persaud : +only require 0.17 of gettext + +This seems to solve many build issues with older distrubtions and doesn't seem to be a problem with newer ones. + +2011-10-11 23:31:01 +0200 H.G. Muller : +Add option -discourageOwnBooks + +This boolean option determines the default setting of the hasOwnBook +option before a tourney game starts. By setting it, the hasOwnBook +option is cleared, which would enable use of the GUI book, like the +engine was installedwith the /firstXBook option. An explicit option +on the engine install line can still overrule this, though. + A control to set this option has been added in the XBoard Match dialog, +and it is saved in the tourney file to force consistency. + +2011-10-11 22:58:01 +0200 H.G. Muller : +Reset initString and computerString on engine load + +These options are typically engine specific, and must thus be +reset to their default value before loading a new engine. + +2011-10-11 22:43:00 +0200 H.G. Muller : +Add Romanian lng file + + +2011-10-07 16:55:45 +0200 H.G. Muller : +Reactivate Falcon Chess + +Now the patent for this has expired, Fairy-Max plays it again. +So the XBoard support for it is now switched on, and an item for it is +added to the XBoard New Variant menu dialog. (WinBoard still had that.) +In the array the Lance was changed for the Falcon as a wild-card piece. + +2011-10-03 09:59:40 +0200 H.G. Muller : +Update texi file for new features + + +2011-10-03 10:30:30 +0200 H.G. Muller : +Update texi file for position search + +The new items in the Load Game Options dialog are described, as well +as the command-line options used to store them in the settings file. + +2011-10-03 09:28:50 +0200 H.G. Muller : +Remove paragraph about .Xresources from texi file + +Command-line options can no longer be set through .Xresources already +since version 4.5.0. + +2011-10-03 09:13:05 +0200 H.G. Muller : +Add Dutch WinBoard translation + + +2011-09-28 20:46:21 +0200 H.G. Muller : +Prevent Edit Book window from stealing focus (WB) + +In WinBoard updating the book window would give it focus. Now the +focus is given back to the main window, except when the Edit Book +window is first created. + +2011-09-28 20:42:00 +0200 H.G. Muller : +Make book-window update part of HistorySet + + +2011-09-26 16:01:28 +0200 H.G. Muller : +Fix position loading in tourneys + +In a tourney a position must be loaded when the engine is not yet +started, and the old version of LoadPosition could not handle that: +It would start up the engine, and send it commands unconditionally. + +2011-09-26 15:58:07 +0200 H.G. Muller : +Fix resetting -fSAN on engine change + +There were two places for loading another engine, Load (from menu) and +SetPlayer (in tourneys), and the previous patch for this missed the +second one. + +2011-09-26 15:51:49 +0200 H.G. Muller : +Make too-long game non-fatal + +GameEnds is now called when the maximum number of moves is exceeded, +rather than DisplayFatalError. Not sure if this properly terminates the +game in all situations, but DisplayFatalError (after calling GameEnds) +would also wait for the user to confirm the error popup before really +exiting, so that in an unattended automatically running tourney there +was not much fatal, and the entire tourney would in fact be finished. + +2011-09-26 15:46:58 +0200 H.G. Muller : +Keep book file open + +Rather than opening and closing the book file on every probe, it is +now only closed and opened when the name of it changed. + +2011-09-26 15:44:23 +0200 H.G. Muller : +Suppress playing of book moves with weight 0 + +Bookmoves with weight 0 could be played when the sum of the weights +of all moves from the position was 0. So it was not possible to suppress +the only move by giving it weight 0. This is now corrected. + +2011-10-01 15:00:47 -0700 Arun Persaud : +added NEWS for release of 4.5.3 + + +2011-09-29 20:31:23 -0700 Arun Persaud : +better contrast for XBoard icon on a dark background + + +2011-10-01 13:09:59 -0700 Arun Persaud : +translationproject.org: updated Ukrainian translation + + +2011-09-29 20:49:42 -0700 Arun Persaud : +updated pot file and send to translation project + + +2011-09-22 12:09:39 +0100 Thomas Adam : +(tiny change) Clarify "-name" option is Xt-only + +There's a set of standard options with will get used by Xt, before Xboard +itself will use them. "-name" is an Xt-only option which will set the name +and resource of the window to the value requested. It has nothing to do +with setting opponent/player names. + +Signed-off-by: Thomas Adam + +modified slightly by Arun Persaud (renamed itemx to item and fixed option name for CMAIL) + +2011-09-22 17:17:16 +0200 H.G. Muller : +Fix LoadGameOrPosition starting up engine + +When LoadGameOrPosition() is called from NextMatchGame(), the Reset() that +is called in LoadPosition() when you are running from a position file +would prematurely start up the engine (without waiting for features). +The kludge to suppress this behavior for the explicit call to Reset() +is now extended to encompass LoadGameOrPosition. + +2011-09-22 17:14:34 +0200 H.G. Muller : +Clear fSAN option before new engine load + +This to prevent the new engine will inherit it from the previous one. +As the command-line options an only set it, this has to be done by +explicit assignment. + +2011-09-13 23:02:35 +0200 H.G. Muller : +Fix some warnings (prototypes) + + +2011-09-13 19:55:44 +0200 H.G. Muller : +Fix write failures in concurrency + +In WinBoard a flood of writes by differentprocesses to the same PGN can +cause a "permission denied" error in fopen. This patch causes retries after +a random (5-15 msec) wait, in such cases. + +2011-09-13 19:52:19 +0200 H.G. Muller : +Move HistorySet to back-end + +This existed in exact duplicates in both front-ends. + +2011-09-13 19:46:36 +0200 H.G. Muller : +Make DoSleep front-end wrapper for msec sleep + +DoSleep was #defined as a macro for Sleep/ sleep, with an argument +indicating msec in WinBoard, but seconds in XBoard. Nuw it universally +uses msec, by defining it as a wrapperin the respective front-ends. +(For XBoard itwraps FrameDelay.) + +2011-09-10 22:35:14 +0200 H.G. Muller : +Fix playing sounds when -soundProgram is empty + +It made no sense to just send the names of the sound files to the shell. +So the soundProgram isnow tested for being an empty string, and if so, +PlaySound() is aborted. + +2011-09-10 14:01:58 +0200 H.G. Muller : +Add -afterGame option + +This option specifies a command line to be executed after each game of +a tournament. To execute the line, the function RunCommand() was added +in the front-end. For XBoard this was a simple call to system(); for +WinBoard part of the StartChildProcess code was cloned (without the pipe +stuff). + +2011-09-10 13:52:12 +0200 H.G. Muller : +Upgrade -serverMoves option + +The (undocumented) -serverMoves option was upgraded to conform to the +ChessLive! protocol extension for sending SAN tags. A bug that allowed +upper-case promoChar to leak through was also fixed, and code was added +to write engine PVs to file. Flushing of the game result to the -serverMoves +file was also fixed. + +2011-09-10 13:50:25 +0200 H.G. Muller : +Fix AppendComment + +The joining of two comments was not performed correctly if the second +one had the braces yet to be added: the closing brace was not added in +that case. + +2011-08-30 19:39:59 +0200 H.G. Muller : +Auto-popup ICS Input Box + +Typing to the board made the move type-in pop up, but in ICS mode +this is of course undesirable. Like in WinBoard, the ICS Input Box +should pop up in stead, and accept the typed character. This is now +realized. If the box already exists and has text in it, the typed +character is appended to that text, and the box is given focus. +Spaces now also are considered as printable. + +2011-08-30 18:27:58 +0200 H.G. Muller : +Slightly decrease sensitivity of sweep actions + +The sweep-selection of promotion and drop pieces, or step through the PV +was so sensitive that it was difficult to reliably make the intended choice. +It has now been reduced by a factor 1.5-2, and the sweep selection and +PV walk now also use a different value. + +2011-08-27 21:16:58 +0200 H.G. Muller : +Extra buttons in WB Tournament dialog + +A button to copy contents of the tournament fileto the dialog is added. +Buttons to invoke the Common Engine and Time Control dialogs are also added. + +2011-08-27 21:15:00 +0200 H.G. Muller : +Fix crash on typing non-existent enginein Load Engine dialog + + +2011-08-24 10:30:46 +0200 H.G. Muller : +Fix display state after failed analysis attempt + +When an engine responded to the "analyze" command with an "unknown command" +message, a Reset was done without altering the display, causing a +discrepancy between display and internal state, which caused confusion +when it finally corrected itself. I replaced the Reset call by an +EditGameEvent call, to preserve the loaded game. The Reset was presumably +used to allow for the case where the engine would be so upset by the +analyze command that it needed to be reset by a "new" command, but this +seems overly paranoic for an engine that just recognized the command +as an unknown one. + +2011-08-24 09:58:35 +0200 H.G. Muller : +Fix treatment of PGN score/depth info with linefeeds in them + +This is needed to make the PGN more Arena-proof. + +2011-08-24 09:51:10 +0200 H.G. Muller : +Fix quoting in Load Engine dialog + +A (space-contaning) engine name only needs quoting when there are parameters, +because the over-all engine command will be quoted anyway. For UCI engines +duplicate quoting is fatal, because when passed as the -ec argument of +Polyglot, it will be quoted yet another time, also with double quotes. + +2011-08-23 21:24:23 +0200 H.G. Muller : +Replace Analyze File by Analyz Game function + + +2011-08-22 22:16:58 -0700 Arun Persaud : +new developer release + + +2011-08-22 22:26:56 -0700 Arun Persaud : +update po files + + +2011-08-22 22:24:23 -0700 Arun Persaud : +updated Changelog, NEWS, etc. + + +2011-08-22 22:09:19 -0700 Arun Persaud : +malloc.h is not needed + + +2011-08-20 22:21:40 +0200 H.G. Muller : +Fix ICS move-list header mistaken for null moves + + +2011-08-18 18:53:09 +0200 H.G. Muller : +Allow two-games-per-opening to work with book + +A new option -seedBase is added, and written to the tourney file. +It allows all XBoard instances working on a tourney to generate the same +'random' openings in a deterministic way, based on this one-time seed +and the game number. When -loadGameIndex equals -2, it uses the same seed +for an odd and the following even game. + +2011-08-18 18:51:56 +0200 H.G. Muller : +Fix use of random + +In some places rand() was called explicitly, rather than through the +(configured) place-holder random(). + +2011-08-18 17:34:33 +0200 H.G. Muller : +Translate search texts + + +2011-08-18 10:29:35 +0200 H.G. Muller : +Add -useBoardTexture and -usePieceFont options + +These options suppress the use of the given texture files or piece fonts +without relying on the kludge to disable them by prefixing an asterisk +to the file or font name. Checkboxes have been added to the Board dialog +to control them. The user can now set piece font in WB font dialog. +The sample text can be used to specify the -fontPieceToCharTable, +the font name itself the -renderPiecesWithFont value. + +2011-08-16 23:10:59 +0200 H.G. Muller : +Fix crash on start without settings file + +A primordial -1 in currCurrent caused a crash when WinBoard was started +without ini filein game-viewer mode. + +2011-08-12 12:08:18 +0200 H.G. Muller : +Fix generic-popup failure after empty engine-settings dialog + +The error exit ofthe Engine #N Settings dialog in case of an engine without +options forgot to clear currentCps, with as a result that the generic popup +thought every subsequent popup was an empty one, and kept repeating the +'engine has no options' error message for every dialog. + +2011-08-10 11:27:22 +0200 H.G. Muller : +Allow substitution of engines during tournament + +Two buttons are added in the tournament options dialog, for upgrading +and for replacing a tourney participant. Lots of tests on the validity +of the request are done, and if all are passed, the tourney file is +written with the new participants (and in case of replace) with the +results of the replaced engines erased from the -results string. + +2011-08-08 11:00:12 +0200 H.G. Muller : +Fix up/down arrows in game list + + +2011-08-08 10:31:24 +0200 H.G. Muller : +Add key bindings for loading next/previous game of list + +These bindings are set both for the game list and the board window. +To make them useful, focus has to be transferred to the board widget +after loading (it tends to transfer to the tags window), which now +seems to work, but not always. From the game list the shellWidget +seems to get focus rather than the board, which is bad as it is not +sensitive to the key bindings. + +2011-08-08 09:58:31 +0200 H.G. Muller : +Allow deletion of last book move + +The book-edit function refused to delete the entiremove list, +for no good reason. This limitation now has been lifted. +Also the error message that the key for the current book entries +is different from that of the currentposition has been suppressed +if there were no entries found for the current position (so that the +book is positioned at the next key), so that it is possible to add +moves from scratch. + +2011-08-08 00:19:53 +0200 H.G. Muller : +Speed up parser + +Line numbers > 1, which are common, can exit already during move parsing, +to save lots of matching on resultsand castlings. + +2011-08-07 15:13:00 +0200 H.G. Muller : +Fix missing files in file browser + +The file browser was throwing away the first two files, assuming +they were "." and "..". Alas, this is no longer true on every Linux. +Now we actuallyc compare for these names, before skipping them. + +2011-08-06 11:57:59 +0200 H.G. Muller : +Delay file loading to allow expose event first + + +2011-08-06 09:29:22 +0200 H.G. Muller : +Fix paging + + +2011-08-05 22:39:41 +0200 H.G. Muller : +Better fix of crash on empty game list + +An empty list is now replaced by a list containig a simple message. + +2011-08-05 20:31:44 +0200 H.G. Muller : +Add plain arrows as key binding for stepping forward/backward + + +2011-08-05 20:30:03 +0200 H.G. Muller : +Debug position selection + + +2011-08-04 13:22:55 +0200 H.G. Muller : +Print progress during load / selection of game + +The title bar of themain window is used to display a running count +of the number of games loaded / searched. + +2011-08-04 12:44:45 +0200 H.G. Muller : +Parse PGN tags without allocating memory + +In WinBoard malloc/free did not seem to work when preparing the game list, +leading to a huge memory list when ParsePGNTag was used. The added code +parses the required tags in an alternative way as a work-around. + +2011-08-02 22:58:34 +0200 H.G. Muller : +Implement searching games in Game List for a position + +For this it was needed to reconstruct all positions of the games +without loading them, so they could be compared to the currently +displayed position. A new routine GameContainsPosition is made for that. + In Disambiguate, when the global quickFlag is set, we now do the +disambiguation ignoring check,and only if this leads to an ambiguous +move, we repeat it taking check into account to see if that resolves +the ambiguity. This causes us to miss if unambiguous moves are illegal +because they put their King in check, but who cares? + We now do not make game-list line when not needed. If we do not filter +by text, but by position, there is no need for preparing the game-list +line for games that are not selected. All for efficiency. + +2011-07-28 20:47:35 +0200 H.G. Muller : +Allow entry of variations in PlayFromGameFile mode + +Adding variations is more like editing a comment,and not really editing +the game. Therefore we allow it on loaded games. As soon as we are in a +variation, we temporarily switch to a (hidden) EditGame mode, restoring +the original mode when we revert to the main line. + We now also stay in PlayFromGameFile mode after loading a game, +And opening variation (fromtheComment window) in PlayFromGameFile mode +is also allowed. + +2011-07-27 18:47:45 +0200 H.G. Muller : +Force Move History refresh after loading/reverting variation + +The Move History window was not refreshed after switching to or from +a variation if that variation happened to have the same length as +the main line. Now a change in storedGames since the previous refresh will +force a full refresh to avoid this. For this to work, storedGames +did have to be decremented after ToNrEvent in PopInner, because ToNrEvent +calls HistorySet before the history is restored, so we don't want +it to snatch away the full refresh. A call to HistorySet had to be +added after PopInner is done restoring the move history. + +2011-07-27 17:45:12 +0200 H.G. Muller : +Popdown Comment window on new game + +What is in this window cannot possibly remain valid, and can even be harmful. + +2011-01-19 11:46:41 +0100 H.G. Muller : +Allow null move in analysis and edit-game mode + +In some games it is allowed to pass your turn. The internal +representation picked for such a null move is the drop of an empty +square, (EmptySquare,DROP_RANK,0,0). Computer-algebraic form is "@@@@", +SAN form is "--", (for compatibility with ChessBase / SCID), and the +non-compliant forms "null", "pass"and "Z0" are recognized in +the parser as well. ApplyMove() has to test for this special case +(to not actually clear a1), and a way to enter the pass for the user had +to be found (clicking the opponent clock, like in EditPosition mode). + The null move is made move irreversible to prevent repetition draws +spanning null moves being adjudicated. + Such entry of null move is now allowed in AnalyzeMode and EditGame mode. +Because Chess engines will not accept null moves, SendMoveToProgram had +to be adapted to send not the move, but the position after it in +case of a null move. This erases the move history in the engine, +so it will not react to 'undo' for that null move, so BackwardInner +had to be adapted to test for intervening null moves, and if one is +found, approach the target from the other side after loading the +earliest position before it not crossing another null move, and +then loading the moves upto the target. + XBoard clock clicks had to be fixed, to pay attention to the shift key. + +2011-07-25 21:58:58 +0200 H.G. Muller : +Give WinBoard Game List its own font + +The font fort he Game List used to be shared with the Engine Output and +Move History windows, but this made it impossible to use a figurine font +in the latter two (which displays piece symbols for capitals) without +messing up the Game List. An option -gameListFont has been added to specify +the font for the Game List(and save it in the settings file), while a +control for it is added in the fonts dialog. + +2011-07-21 19:02:01 +0200 H.G. Muller : +Fix crash on OK after Save Changes in Tags and Comment popup. + +The global variables tagsText and commentText were used to pass +a string obtained from a widget (and thus not malloc'ed), which +caused a crash when the GenericReadout tried to use those variables +for the new value. Fixed by using GenericReadout (which does malloc) +to read out the text,in stead of GetWidgetText. + +2011-07-16 09:31:12 -0700 Arun Persaud : +Revert "fixed segfault in xengineoutput", fixed in the backend now (from HGM) + +This reverts commit 33a0e73843115ff6d4eacaf963a38f2e8b20b295. + +2011-07-16 14:53:14 +0200 H.G. Muller : +Suppress some XBoard warnings + + +2011-07-15 11:21:29 -0700 Arun Persaud : +fixed segfault in xengineoutput + + +2011-07-11 20:04:57 +0200 H.G. Muller : +Disable -showTargetSquares in ICS mode + +Help like this is considered cheating on FICS, so it is disabled for +all 'classical' ICS variants. (For variants eyont Shogi we don't care.) + +2011-07-10 21:20:49 +0200 H.G. Muller : +Put grab on sweep-selecting in Edit Position + +A right down-click starting a sweep-selection event did not grab the +mouse events, so that an up-click outside the window would go +unnoticed, and the pointer motion stayed coupled to selecting the +piece until the next click. By returning 2 from the RightClick back-end +routine we request the grab. + +2011-07-09 13:50:58 +0200 H.G. Muller : +Write more labels on score axis of eval graph + +The labels for +/-1 and +/-3 are now also written, provided there is +enough space. + +2011-07-09 13:28:08 +0200 H.G. Muller : +Improve Eval Graph with -evalZoom and -evalThreshold + +The score range between -1 and +1 can now be blown up by a factor +specified through -evalZoom. The threshold below which histogram bars +are no longer printed (wich used to e hard-coded 25 centi-Pawn) can now +be set through the -evalThreshold option. + +2011-07-09 13:18:07 +0200 H.G. Muller : +Print reversible plies done in stead of plies to go + +Printing the number of plies left to the draw-adjudication point was +confusing when the N-move rule was set to a non-standard value. +In stead we now print the number of plies since the last irreversible +move, so the user can compare it to both the engine claim point (100) +and the adjudication point he set (which might be beyond 100). + +2011-07-09 13:13:49 +0200 H.G. Muller : +Let WB eval graph react ot single left-click + +Unlike in XBoard, the WinBoard eval graph awatys had required double- +clicking to go the the corresponding move, while there really is no +reason for this, as it is no text edit, and single-clicks have no function +(like select). + +2011-07-07 19:37:12 +0200 H.G. Muller : +Add -scoreWhite option + +This is similar to -absoluteAnalysisScores, except that it works in +all modes, and flips the score given by the engines in the engine-output +window when black is to move. + +2011-07-07 19:28:04 +0200 H.G. Muller : +Print 50-move counter in Engine-Output title + + +2011-07-07 18:50:56 +0200 H.G. Muller : +Display score/depth in Eval Graph title + +No longer print it in the comment window. + +2011-07-04 11:06:12 +0200 H.G. Muller : +Let -sweepPromotions also work for click-click moves + +A click-click promotion no longer causes auto-queening, but the down-click +on the to-square causes a Queen to stick to the mouse pointer, and then +allows the user to change it through dragging backwards before releasing it +with an up-click. + In WinBoard this required a slight change in DragPieceBegin, because +the dragged piece there only was made visible when the mouse pointer +actually started moving (and dragInfo.pos was set), presumably under the +assumption that before mouse move the piece was already on the clicked +square. Which in the case of a to-square was of course not true. (Because +a piece jumps to the mouse pointer when the click is not centered on a +square, this gives less jittery static clicks.) So DragPieceBegin has +been given an extra argument now, to indicate whether it should attach +the piece to the mouse pointer immediately. + To make the click-click sweepPromotions work in Shogi (for which the +drag-drop sweepPromotions could never work, because it is not clear the +piece has a posibility to promote when you pick it up), translation of +the sweep-selected piece to a Shogi promoChar had to e added. + +2011-07-04 10:45:04 +0200 H.G. Muller : +Improve -showTargetSquares on click-click moves + +The markers on move targets are now kept when a first click merely +selects a piece, rather than dragging it elsewhere. The second click +(by definition on the to-square) then clears the markers. + +2011-07-04 11:23:05 +0200 H.G. Muller : +Let PGN parser accept lower-case piece in drop moves + +The @ sign prevents amiguity with other notations anyway. + +2011-07-04 12:42:12 +0200 H.G. Muller : +Fix parser.c line endings + + +2011-06-29 20:29:12 +0200 H.G. Muller : +Fix writing searchTime in tourneyFile + +This had to be derived from the variable searchTime, which gives it +in seconds, as appData.searchTime (a string in minutes) is not reliable, +as it contains the command-line value, which might have been altered +through the time-control dialog. + +2011-06-29 20:25:00 +0200 H.G. Muller : +Fix resetting searchTime if other TC mode is chosen (XB) + +This fixes a bug in the new time-control dialog. + +2011-06-29 14:32:43 +0200 H.G. Muller : +Fix coords display on large boards + +The file indicators can now run upto 'w'. Only the lowest digit +of the rank number is printed, from a table that is valid to 22. + +2011-06-29 13:53:00 +0200 H.G. Muller : +Fix crash on making too-long FEN + +The buffer for in PositionToFEN was only 128 bytes, which was not enough +for large boards such as 19x19 Go. It is enlarged to MSG_SIZ(512) now. +There also is some approximate overflow checking added (but it is not +fool proof in case there are holdings...) + +2011-06-29 13:36:26 +0200 H.G. Muller : +Fix drop moves on boards with more than 10 ranks + +The internal encoding for rank 16 is '@', and thus ambiguous with drop +moves. They were always printed as 16, breaking drop games on large +boards. The ambiguity is now solved (for boards with more than 16 ranks) +by checking if the preceeding letter is upper case, in which case it +cannot be a fileindicator, but must be a piece, and thus a drop. + +2011-06-29 13:29:38 +0200 H.G. Muller : +Don't one-click move when legality testing is off + + +2011-06-23 21:18:11 +0200 H.G. Muller : +Reorder controls in Engine Setings dialog WB + +To get tabbing through the controls in left-to-right order, they are +now added to the template structure in that order. Also add a tabstop +to Label options, so that JAWS will read those. + +2011-06-23 14:02:50 +0200 H.G. Muller : +Add tab stops in WB generic popup + +The WinBoard generic popup did not put tab stops on push buttons, +including the OK and cancel button, with as a consequence that these were +skipped when tabbing through the dialog controls. In addition the tabbing +could not begin before the user selected one of the controls with the mouse. + Now all buttons have tab stops, and the cancel button is given focus +when the dialog pops up. + +2011-03-10 20:06:39 +0100 H.G. Muller : +Implement Grand Chess + +Grand Chess requires a lot of exceptional handling similar to Superchess +and Great Shatran, because it also allows only promotion to a captured +piece. In addition it shares the enlarged promotion zone with Makruk and +Shogi, as well as the fact that promotion can be deferred. The 10-rank +board furthermore required a better generalization of double-pushes and +e.p. captures. On such a board double puhes are now allowed from 2nd and +3rd rank, e.p. capture from 5th and 4th. + +2011-01-28 19:20:38 +0100 H.G. Muller : +Allow promotion to Pawn with legality testing off + +In stead of ImpossibleMove promotionto Pawn now merely is an +IllegalMove, so it can be played with legality testing off. + +2011-01-24 15:06:17 +0100 H.G. Muller : +Create some space in WB New Variant dialog + + +2011-06-20 23:53:49 +0200 H.G. Muller : +Allow double-digit rank numbers + +The parser already understood double-digit numbers on input, and +CoordsToAlgebraic produced them on otput. This patch also fixes sending +of the moves to the computer, for which the moveList was used. The latter +stored 10 as ':', etc,to always get a 4-char move, the characters of which +were frequently being converted to fromY or toY by adding/subtracting ONE. +To not break that the one-character encoding of rank number is kept in +moveList, but in SendMoveToProgram, characters > '9' are converted to +double digits. + +2011-06-23 11:26:48 +0200 H.G. Muller : +Add Absolute Analysis Scores in Genral Options dialog XB + + +2011-06-23 11:16:34 +0200 H.G. Muller : +Fix texi file, and update it further + + +2011-06-20 12:15:14 +0200 H.G. Muller : +Modified po + + +2011-06-22 17:51:51 +0200 H.G. Muller : +Update texi file + + +2011-06-22 11:02:45 +0200 H.G. Muller : +Restore echo after ^C in ICS password + + +2011-06-22 10:45:27 +0200 H.G. Muller : +Fix some warnings + + +2011-06-19 20:30:09 +0200 H.G. Muller : +Increase efficiency of SAN generation / disambiguation + +**************** Risky patch! ********************** +The algorithm used for disambiguating and generating SAN was extremely +inefficient, because it generated all pseudo-legal moves from the relevant +position, and then for each of those did a check test (involving generation +of all moves of the opponent), before determining if the move matched the +(proposed or given) SAN move. While it is pointless to generate moves +with a piece that does not match (let alone checking them for legality). +And for a piece that matches, it is pointless to test legality of moves +that do not match the to-square. + To speed up the process GenLegal and GenPseudoLegal have been equiped +with an argument that can indicate the piece type of the required move, +so they can skip generating moves with other pieces. TestLegality, +Disambiguate and CoordsToAlgebraic make use of this facility, and set also +(through global variables rFilter and fFilter) a to-square filter to be +applied in the GenLegalCallback before it tests the move for legality. + This patch is especially tricky for Crazyhouse, where the piece indicated +in the move might not be the piece actually on the board, because the latter +is a promoted Pawn, and has to be demoted toits base type before the +comparison. + +2011-06-19 16:18:15 +0200 H.G. Muller : +Fix compile errors WinBoard + +The patch to make non-existing options non-fatal broke WinBoard. All calls +to ExitArgError from it now supply a third argument TRUE to fix it. + +2011-06-19 14:28:09 +0200 H.G. Muller : +Add -fSAN / -sSAN options + +These options force the PV of the applicable engine to be converted to SAN. +They make use of the existing ParsePV routine, after shelfing a possible +PV (from user PV walking) to free the space after the last move. +Could be costly in terms of CPU usage. + +2011-06-19 10:56:25 +0200 H.G. Muller : +Cure flicker in Move History window, fix highlighting + +The highlighting of the current move in the Move List window by selecting +it did not always work, because some other windows were clearing their text +widgets by selecting the contents and killing it, thus snatching the +selection away. This has been changed to setting XtNstring to an empty +string as a method for clearing without side effects on the selection. +As a bonus the Engine Output window now also no longer has the black flicker +on clearing it. + In addition, triggering a scroll by setting the insertion point to the +end of the text caused excessive flicker in the Move List window, apparently +clearing it and redrawing from scratch, (even if there was no scroll motion), +to the point where on my slow laptop the move history stayed entirely blank +during a rapid succession of moves. This has been combatted by using the +end-of-line action procedure (which does not seem to suffer from this) to put +the insertion point at the end, when we need to scroll to close to the end. + +2011-06-18 23:48:13 +0200 H.G. Muller : +Fix crash on clearing new Move List window + +When a new game started and a previous game had filled the Move List +window, a crash occurred because an attempt was made to undo the +highlighting of a no-longer-existing move, and then scrolling to it. + +2011-06-18 20:46:57 +0200 H.G. Muller : +Use sound for ICS tells also with engine telluser popups + +The telluser and tellusererror commands now can be assigned a sound. + +2011-06-18 20:45:12 +0200 H.G. Muller : +Add Score in Move List option to general options dialog XB + +Now that we have a WinBoard-style Move History window, this option is +no longer a no-op in XBoard. + +2011-06-18 12:42:41 -0700 Arun Persaud : +new developer release + + +2011-06-18 12:38:32 -0700 Arun Persaud : +updated Changelog, NEWS, etc. + + +2011-06-18 12:51:10 +0200 H.G. Muller : +Update window itle after last game of match + +The result printed behind player names during a match would still be the one +without the game, differing from what the popup would show, which looked +sloppy enough for people to complain about it. +. + +2011-06-18 10:26:31 +0200 H.G. Muller : +Make WB generic popup translatable + +When used for internal settings (as in the Load Engine and Tournament +Options dialogs), the option names are now subectto translation. + +2011-06-17 21:05:00 +0200 H.G. Muller : +Redo Move History with generic popup in WinBoard style + +The use of color and boldness to make the move list more readable +unfortunately cannot work in Xaw; reverse video by selection is used as an alternative to highlight the current move. + +2011-06-17 21:19:41 +0200 H.G. Muller : +Remove stray else + +Due to an erroneous else, the window parameters of Move History were +not retreived (and thus incorrectly saved) when the Engine Output was up. + +2011-06-14 18:47:30 +0200 H.G. Muller : +Make non-existing opton in settings file non-fatal + +It is rather difficult to recover from a situaton where the settings +file contains an unknown option (e.g. because you downgraded to a +previous version that had fewer options), especially in WinBoard, where +the user settings file is in a hidden folder, and people might not be +able to find it, let alone edit it. By just skipping the line with the +offending option, rather than generating a fatal error, when reading +from a settings file, such options will be automatically purged from the +file as soon as you save settings. + Small problem is that the user cannot be warned, as the initialization +has not progressed far enough at this point to generate error popups. In +XBoard we can at least print to the console, but in WinBoard there is no +warning at all. But the worst thing that can happen is that new options +in a settings file of a more advanced version will revert to their +defaults. + +2011-06-14 18:20:37 +0200 H.G. Muller : +Change long form of -tf option to -tourneyFile + +This is a more logical name, and in the WinBoard docs it was already +described as such. Also remove the -processes option, which in the +current design of the tourney manager is no longer used. + +2011-06-14 18:17:08 +0200 H.G. Muller : +Fix default of -remoteUser + +This has to be an empty string, rather than NULL, to prevent XBoard from +segfaulting when the -gateway option is used. + +2011-06-14 13:32:38 +0200 H.G. Muller : +Add -at and -opt options as alternative for @ + +Windows XP and Vista shortcuts do not display command lines with @ in +them correctly, and these optionsprovide a work-around for that. + +2011-06-14 12:46:36 +0200 H.G. Muller : +Fix empty-string option values in XBoard + + +2011-06-14 12:40:11 +0200 H.G. Muller : +Fix crash on switching sound in Vista + +When choosing a new sound the wave form of the old one was free'ed, but +because built-in sounds are not really malloc'ed, this led to a crash. + +2011-06-14 12:36:16 +0200 H.G. Muller : +Update WB docs for tourney manager + + +2011-06-14 12:35:01 +0200 H.G. Muller : +Add icon to WB for tournament files + + +2011-06-10 16:52:01 +0200 H.G. Muller : +Redo Time Control dialog with generic popup + +As poor-man's disabling of the unneeded input fields, we print the word +"Unused" in them. + +2011-06-10 14:14:45 +0200 H.G. Muller : +Some refactoring in xoptions.c to separate out front-end + + +2011-06-10 12:38:08 +0200 H.G. Muller : +Redo New Shuffle Game dialog with generic popup + +The buttons are slightly renamed, and in stead of having an 'off' +button to clear it, shuffleOpenings now has its own checkbox, which is +ticked when a fixed or dynamic random is chosen with the buttons. + +2011-06-10 11:58:17 +0200 H.G. Muller : +Fix type of shuffleOpenings + +This was a Boolean option, and thus accessed by the args.h code as such, +while it was declared as an int (and used in backend.c as such). This +could have led to problems with different endianness. + +2011-06-09 23:57:43 -0700 Tim Mann : +Internationalize the file browser. + +The file browser was missed in the previous round of +internationalization and had gotten broken by setting international = +True in its widgets. I got nothing but segfaults trying to set +international to False in the file browser widget subtree when it was +True in the main window, so I gave up and did the +internationalization. It turned out to be pretty easy. + +As a tiny bonus fix, I removed some ../'s from includes, and you can +now configure and build xboard in a subdirectory again. This was +useful for building both --enable-nls and --disable-nls from the same +sources to compare functionality and make sure both still work. + +2011-06-08 20:26:28 +0200 H.G. Muller : +Fix crash at end of Swiss tourney + + +2011-06-08 17:33:34 +0200 H.G. Muller : +Fix display of logos + +The logo files are now sought relative to the WinBoard install +directory. Non-existing logos cause clearing of the logo, rather than +letting the logo of the prevous engine hang. Logo change is requested +explicitly from the back-end (when an engine is initialized for a new +game), rather than using the kludge in StartChileProcess. This required +a dummy UpdateLogos routine in the XBoard front-end. + +2011-06-08 18:02:31 +0200 H.G. Muller : +Fix parameter handling in adapter command + +A backslash was not considered the end of an option name, which was +fatal for UCCI2WB, which needs %fd\\%fcp in its command line. + +2011-06-08 17:16:54 +0200 H.G. Muller : +Clear Engine-Output pane when initializing engine + +This to prevent output from the previous game hanging there during the +next game, when the engine that is really playing is in book and +doesn't produce thinking output there. + +2011-06-08 17:20:01 +0200 H.G. Muller : +Fix display of last move of last match game + +When a game was adjudicated (e.g. because XBoard detected mate) GameEnds +would trigger an exit if it was the last game of the match, and thus +never returned, while the ShowMove was called only after return from +Adjudicate. An extra ToNrEvent is now used in GameEnd in this case to +cause ShowMove to be called before exiting. (Ugly kludge...) + +2011-06-08 17:38:43 +0200 H.G. Muller : +Fix concurrency in Swiss tourneys + +The pairing engine was consulted for the next round before all games of +the previous round were finished, if other XBoard instances were still +playing games. This caused the instances finishing early to stall +indefinitely. This is fixed by moving the Swiss pairing code to after +the syncInterval code. The normal pairing code (the call to Pairing) +must stay before it, because it determines the syncInterval. So ther is +a bit of tourneyType dependence cluttering up the code here. :-( + +2011-06-08 17:27:01 +0200 H.G. Muller : +Give error popup when pairing engine fails + +An invalid pairing now produces an error popup to inform the user, so he +knows why the tourney stagnates. + +2011-06-08 17:24:41 +0200 H.G. Muller : +Fix clock mode in tourney starting from -ncp mode + +When a tourney started from -ncp mode, which was allowed in MatchEvent, +because the tourney loads its own engines anyway, the menu enablings and +clockmode where not restored to their 'GNUMode' state. + +2011-06-08 17:11:31 +0200 H.G. Muller : +Fix round-robin schedule + +The first round was played twice, and the formulas used to derive the +pairing were not even-odd resistant anyway. Both even and odd number of +participants should work now. + +2011-06-08 17:08:55 +0200 H.G. Muller : +Fix interrupting tournament + +Stopping a tourney by using the Machine Match menu item did not wor +properly. + +2011-06-08 16:57:09 +0200 H.G. Muller : +Improve quoting of engine name on install + +Rather than always using double quotes for the engine command, the +engine filename is now double-quoted if it contains spaces (and no +double-quotes), and the comand is single-quoted if it contains +double-quotes (and double-quoted otherwise). + +2011-06-08 16:49:18 +0200 H.G. Muller : +Print sensible window title during tourneys + +Rather than the "(W-L-D)" in the title we now print game number and +total games, plus indication of the tourney type (rr, gt or sw). + +2011-06-08 16:44:16 +0200 H.G. Muller : +Let XBoard propose name of tourney file + +Add an option -defaultTourneyName to configure the name that will be +proposed in the Tournament Options dialog's tournament-file field. The +option can contain %y, %M, %d, %h, %m, %s for year, month, day, hour, +mintes, seconds of the curret time in %02d format, or %Y for the year in +%04d format. Any tournament -file name is ignored when no participants +are given. Participants without a tourney file remains an error. + +2011-06-08 16:30:34 +0200 H.G. Muller : +Improve Tournament dialog layout WB + + +2011-06-08 17:05:02 +0200 H.G. Muller : +Fix -matchGames option + +The new MatchEvent code had broken the -mg option, and used always +-defaultMatchGames in stead. + +2011-05-30 19:55:13 -0700 Tim Mann : +Fixed small bugs in several .po files, enabling these translations to be used. They all probably need more work from the translation team. I don't speak any of these languages, but I did some spot checks either from my own knowledge or using Google Translate, and they generally look sane. + +- Several files were in utf8 but needed to be marked as such (that is, + "CHARSET" changed to "UTF-8"). Affected es.po, it.po, ru.po, vi.po, + zh_CN.po, zh_TW.po. + +- it.po was missing a \n at the end of one translation. + +- ru.po had unescaped double-quote marks in one translation. + +- vi.po needed to be normalized to Unicode normalization form C. With + this fix, more characters display correctly, though at least one is + still missing in the X core fonts that xboard is able to use. + See http://vietunicode.sourceforge.net/ for more about Vietnamese. + +- zh_HK.po was written in big5 and then utf8-encoded on top of that, + making it unusable. I stripped off the spurious utf8 encoding and + then used recode to convert the file to Unicode properly encoded as + utf8. + +Unfortunately, I wasn't able to test any of the Chinese translations, +as I haven't been able to get XCreateFontSet to work in Chinese +locales with any of the fonts I have installed, even after adding the +Ubuntu language support packages for both simplified and traditional +Chinese. I did spot check a bunch of the translations using Google +Translate. + +I've checked in a couple of tiny Perl scripts that I used to do part +of the fixups on vi.po and zh_HK.po in case we need them again. + +2011-05-30 14:12:53 -0700 Tim Mann : +The empty string can't be translated and it causes the gettext utilities to complain, so change _("") to "". + + +2011-05-30 13:21:06 -0700 Tim Mann : +Add a final wildcard default for fonts. This gives XCreateFontSet more freedom and lets it find fonts for some obscure charsets where fixed-bold or fixed-medium etc. may not have one. + + +2011-05-29 20:14:37 -0700 Tim Mann : +Added "misc-fixed" as a fallback font to handle locales where adobe-helvetica does not have all the required characters. The fixed font is ugly but does have a rather complete set of characters, while the helvetica font is missing Cyrillic characters (at least on my distro). I haven't found a way to get a nicer font that includes Cyrillic to work with XCreateFontSet, but I don't fully understand why. I'll try to improve things further in the future if I figure out what's all going wrong. + +In the process I had to rewrite the code to insert the pixel size into +a font name (replacing a "*" in that field). The new code is much +more general. + +2011-05-28 23:55:42 -0700 Arun Persaud : +translation: activated Ukrainian translation + + +2011-05-28 23:41:24 -0700 Arun Persaud : +translation: added new Ukrainian PO file from the TP + + +2011-05-28 21:07:08 -0700 Tim Mann : +Fix display of international characters outside the ASCII range. + +1) Set Xaw resources required for internationalization -- + *international and *fontSet. + +2) Untangle the new XFontSet-aware code from the old FindFont code. + It doesn't make any sense to apply the old (and obsolete) size + searching code from FindFont to a font set, which contains fonts + that are all the requested size. + +3) With these changes, the -font option doesn't work at all when given + on the command line. The -font option actually is parsed by the Xt + library, used to set the *font resource, and removed from argv + before xboard can see it, so the option didn't really work properly + with the new WinBoard-style option framework anyway. Now that + -font is even more broken, I changed the documented name of the + option to -messageFont and changed args.h so the option is saved in + ~/.xboard as -messageFont. + +2011-05-28 21:05:00 -0700 Tim Mann : +Move "hide thinking" option into alphabetical order. + + +2011-05-28 21:01:25 -0700 Tim Mann : +Fix a size mismatch in scanf. Untested, but the code could not have worked properly without this fix -- scanf would have written 32-bit values to 16-bit fields, thus smashing adjacent memory. + + +2011-05-23 19:05:36 +0200 H.G. Muller : +Fix layout tournament Load Engine dialog WB + + +2011-05-23 19:03:56 +0200 H.G. Muller : +Fix ArgTwo warnings + + +2011-05-23 19:00:00 +0200 H.G. Muller : +Add Swiss tourneys through pairing engine + +An external program can be designated pairing engine through the new +persistent option -pairingEngine. Defining the option will allow +tourneytype -1 to be chosen for Swiss. In this case the pairing engine +will be queried for a pairing before every new match game, by sending it +the -results string, plus the command 'pairing' + game number. + +2011-05-23 17:37:43 +0200 H.G. Muller : +Allow generic dialog to ignore OK + +The EndMark callback can now suppress popdown of the dialog on OK, when +it somehow does not like the values entered by the user. In XBoard this +required all the callbacks to return a value. +Caveat: A refused OK would still have set all new values given in the +dialog! + +2011-05-23 17:22:58 +0200 H.G. Muller : +Fix CR in multi-line WinBoard text-edits + +The generic popup did not add CR when strings containing '\n' were +printed in a multi-line text-edit, thus joining the lines. It was also +not possible to type a CR in a multi-line text-edit. + +2011-05-23 14:16:17 +0200 H.G. Muller : +Let mentioning completed tourney file add one cycle + +Secifying a tourney file of a fully completed tourney will now resume +that tourney with another cycle added. When there are still uncomleted +games in the tourney, the usual error message will appear. There are +also error popups added for when the user fails to specify a tourney +file, or gives too few participants. + +2011-05-16 11:02:08 +0200 H.G. Muller : +Make engine startup failure non-fatal in WinBoard + +Unlike XBoard, which forks first, the parent process WinBoard has direct +knowledge of a failure to execute the engine command, and used it to +trigger a fatal error. The code doing this has now been disabled. Only +in case of a first engine we switch back to -ncp mode in stead, but no +action is taken to 'bury' the deceased engine process. Like in XBoard, +errors in writing or reading the pipes will trigger this. + +2011-05-14 17:03:44 +0200 H.G. Muller : +Add secondry adapter command for UCCI or USI + +The option -uxiAdapter can define a second adapterCommand, which will be +invoked on encountering the options -fUCCI, -sUCCI and -fUSI, sUCI. + +2011-05-14 10:05:11 +0200 H.G. Muller : +Obey san feature when sending book moves + +Book moves were always sent in long algebraic, even when the engine had +said it wanted to receive SAN. + +2011-05-14 10:03:20 +0200 H.G. Muller : +Fix initialization of engine state + +Some of the initialization relied on variables being zero at startup, +which meant value from the previouly loaded engine hng on after loading +a new one. + +2011-05-11 23:06:20 +0200 H.G. Muller : +Take account of holdings in book key + +The board is numbered by rank, for comptibility with Polyglot format, +starting at a1. We then continue counting in the holdings 'files', in +up-rank direction, each holding spanning the full board height (even if +it is not fully used). Firstthe left (black) holdings, then the right, +Even in Shogi this limits the square number to < 99, which is below the +absolute limit of 128 (where we would run out of hash keys). + +2011-05-11 22:48:34 +0200 H.G. Muller : +Alow promotions and drops in book-editing + + +2011-05-11 20:15:58 +0200 H.G. Muller : +Include learn info in book edit + + +2011-05-09 21:55:10 +0200 H.G. Muller : +Adapt default directory of lng2po + +The path is prefixed with "../" to make it runable from the po directory. + +2011-05-09 21:20:35 +0200 H.G. Muller : +Recode some po files + +po files were generated with the aid of lng2po for Russian, +Vietnamese, Chinese(simp) and Chinese(trad), using encodings CP1251, +CP1258, GB2312 and BIG5, respectively. + +2011-05-09 20:11:32 +0200 H.G. Muller : +Implement Edit Book in XBoard + + +2011-05-09 09:52:54 +0200 H.G. Muller : +Improve WB Load Engine dialog texts + + +2011-05-09 09:48:27 +0200 H.G. Muller : +Make 'add to list' default in Load Engine dialog + + +2011-05-09 09:33:39 +0200 H.G. Muller : +Add -userFileDirectory option + +This volatile option is initialized from 'installDir'. It is +primarily intended for configuration of WinBoard through its master +settings file, and specifies an alternative place to create saveGameFile +or look for other user files, in stead of looking in the installDir. + +2011-05-09 09:10:47 +0200 H.G. Muller : +Add option -absoluteAnalysisScores + +This persistent option flips scores in the when black is thinking in +analysis mode, just before they are printed in the engine-output window. + +2011-05-08 17:47:40 +0200 H.G. Muller : +Automatically play moves of clicked PV in analyze mode + +The Shift key now no longer needs to be pressed to play moves from the +PV in analyze mode (so it could be given back its original meaning of +starting a variation with the entered moves). In analyze mode the PV +walk begins after the first move, so a static right-click plays the +first PV move. To just peek the PV you have to walk to the start of it +before releasing the mouse button. In other modes the PV walk +stillstarts at the very end. + +2011-05-08 17:07:18 +0200 H.G. Muller : +Let ParsePV always generate SAN move + + +2011-05-08 13:53:09 +0200 H.G. Muller : +Fix vscrolling in XBoard Engine-Output window + +After clicking the memos they scrolled to the bottom, because SetFocus +put the insertion point at the very end of the text. This behavior is +now reserved for text-edits containing less than 100 characters. + +2011-05-08 13:22:33 +0200 H.G. Muller : +Fix button sizing in generic popup + + +2011-05-08 13:02:52 +0200 H.G. Muller : +Allow changing MultiPV setting from Engine-Output window + +In analyze mode a header line is printed in the first engine-output +pane, which can be right-clicked to increase or decrease the number of +PVs. (Only with engines that support the MultiPV option.) + +2011-05-08 11:28:44 +0200 H.G. Muller : +No clearing of Engine-Output memos on stat01 + + +2011-05-07 23:27:50 -0700 Arun Persaud : +updated xboard.pot with released version + + +2011-05-07 22:56:53 -0700 Arun Persaud : +new developer release + + +2011-05-07 22:54:29 -0700 Arun Persaud : +updated ChangeLog, NEWS, etc. + + +2011-05-07 23:07:46 -0700 Arun Persaud : +deactivated new languages for the moment... + +po files need some cleanup, probably better to wait until the translation-project looked at them + +2011-05-07 18:44:24 -0700 Arun Persaud : +added translations generated via lng2po from all winboard languages + + +2011-05-07 18:40:23 -0700 Arun Persaud : +lng2po.sh: added command line options, GPL header + +also use a temporary file generated with mktemp instead of a hard coded one + +2011-05-07 17:53:10 -0700 Arun Persaud : +fixed access rights to winboard language files (644 instead of 655) + + +2011-05-07 14:55:55 +0200 H.G. Muller : +Import WinBoard language files into git + + +2011-05-06 23:14:02 +0200 H.G. Muller : +Let Shift+RightClick on PV actually play the PV moves + + +2011-05-06 18:06:48 +0200 H.G. Muller : +Make book-edit function WB + +The tags dialog is used to display the GUI book moves from the current +position, and will be updated when you step or move to another one. +The edited move list (with weights) can be written back to the book. + +2011-05-07 16:21:25 +0200 H.G. Muller : +Fix resetting engine options + +Not all options were reset, and -needsNonCompliantFEN was 'reset' +to a completely wrong value, so that bad FENs would be sent. + +2011-05-06 18:51:20 +0200 H.G. Muller : +Add -first/secondPgnName option + +This option replaces the tidy name of the engine in the PGN player tags +of engine-engine games. In WinBoard engines can be installed with this +option through a checkbox in the Load Engine dialog. + +2011-05-06 23:31:36 +0200 H.G. Muller : +Let XB generic popup define default file extensions + + +2011-05-06 18:25:38 +0200 H.G. Muller : +Save time-control settings in tourney file + +Because parsing the options and storing them in appData is not enough, +the time-control code setting the internally used parameters from the +appData info in InitBackend was made into a subroutine, and also caled +after parsing the tourney file. + +2011-05-06 20:40:34 +0200 H.G. Muller : +Put saveGameFile in tournament dialog + + +2011-05-06 19:17:56 +0200 H.G. Muller : +Plug memory leak, filenames relative to installDir + +String options are consistently freed now, before assigning a new value +to them through strdup. The init code now even does use strdup when +setting defaults. This is important for optionslike -lgf, which are not +saved in the settings file, and thus are usually left with their +default. When a dialog to set them then uses free, this causes a crash. +When setting the defaults uses strdup, ParseArgs can already free them. +This plugs an important memory leak, as ParseArgs in now called to parse +the tourney file before every tourney game (twice!), and the lists of +participants and results in it can be quite long. Macros are defined in +common.h to make the code look simpler. + Filenames entered through the generic popup are now interpreted +relative to the WinBoard installation folder, just as the saveGameFile +already was. The code handling the atter was made into a subroutine for +this. + +2011-05-06 22:02:53 +0200 H.G. Muller : +Add WB new popup prototypes + + +2011-05-06 18:58:08 +0200 H.G. Muller : +Add partcipants at bottom in tourney dialog (WB) + + +2011-05-06 18:56:53 +0200 H.G. Muller : +Fix range of tourneyType spin WB + + +2011-05-06 18:15:23 +0200 H.G. Muller : +Fix exit popup in tourney mode + +Only the instance finishing the last tourney game will cause a popup +with final standings. As long as there are still busy games, it exits or +switches back to idle mode silently. + +2011-05-06 18:11:47 +0200 H.G. Muller : +Fix stopping of match in tourney mode + + +2011-05-06 18:59:26 +0200 H.G. Muller : +Add default extension in file browser + + +2011-05-06 22:37:14 +0200 H.G. Muller : +Improve sizing of comment and tags dialogs + +There seems to be a bug in Xaw for the sizing of buttons; they get +unpredicatble and weird sizes when the size is not explicitly set, +possibly stretching the initial width of a dialog to rediculous values. +Sizing back to a remembered value from the settings file then makes +buttons overlapand text edits shrink to almost nothing. To prevent that +we now define exlicit sizes for the buttons in tags and comment popups. + +2011-05-06 21:00:25 +0200 H.G. Muller : +Fix generic combobox bug + +The patch placing gettext markers was done wrong, setting the +translated menu text outside the loop, so all entries became the same. + +2011-05-07 14:23:12 +0200 H.G. Muller : +Fix PV walking in analysis mode + +ParsePV assumed that the PV would always have been produced by an engin +thinking about the final position of the game (or the one before it). In +analysismode, however, the engine can be analysing positions internal to +the game, and the PV would be considered invalid. This is fixed by +cutting of the tail off the game (shelving it in variation fashion) +before starting the PV walk, and reverting afterwards. + For this the PushTail and PopTail routines had to be split into an +'inner' part, doing the pushing and popping, and an outer part, handling +menu graying and popdowns (which is undesirable in in this application). + +2011-05-03 00:24:10 +0200 H.G. Muller : +Lift length-limit on text-edits in WB generic popup + + +2011-05-04 13:53:05 +0200 H.G. Muller : +Lift limitation of text length in generic dialog XB + +All string options should now point to allocated memory, as strdup / +free is consistently used on them. This is OK for values received from +ParseArgs, but for non-arg intermediate variables that must receive strg +values, such as in the comment and tags popups, strdup has to be used to +initialize those. + +2011-05-04 14:53:02 +0200 H.G. Muller : +Implement Tournament Options dialog WinBoard + +The file browser now can select on extension WB generic dialogs, +with a default based on the option.max value of the option for which it +browses. A textBox can be forced to be multiline by putting the number +of extra lines in option.min. + +2011-05-04 15:30:00 +0200 H.G. Muller : +Make option to draw second engine from first list + + +2011-05-03 00:17:47 +0200 H.G. Muller : +Fix error message on engine load + + +2011-05-04 15:09:33 +0200 H.G. Muller : +Implement Load Engine dialog in WinBoard + +The Load Engine dialog is implemented for WinBoard, and is invoked by +the menu item Engine->Load, which formerly was Install 2nd. Install 1st +is renamed 'Edit Engine List'. Unlike in XBoard, the dialog has separate +fields for the engine executale and its parameters. + The dialog is implemented by converting the Engine Settings popup into +a generic dialog generator. + +2011-05-04 13:43:06 +0200 H.G. Muller : +Load new logo on engine change WinBoard + +Picking the logo for the first engine is made into a subroutine. The +code for picking the logo of the first engine was made into a subrroutne +for this. We use the kludge to recognize the engine by its command line +when starting a new engine process. + +2011-05-04 13:36:27 +0200 H.G. Muller : +Allow switching off match mode through menu + +The Machine Match menu item is now checkmarked, and no longer grayed +during a match, and clicking it while a match is running will terminate +the match after the current game. To not be left with hanging +checkmarks, the checkmark is already removed duringthe last match game +(which is logically equivalent to ordinary Two Machines mode anyway). + +2011-05-03 00:14:22 +0200 H.G. Muller : +Calculate and display tourney result + + +2011-05-04 18:42:13 +0200 H.G. Muller : +Implement Tournament Manager + +New command-line options are added to specify the tourney: -tourneyType +(-tt), -tourneyCycles (-cy), -participants, -syncAfterRound, +-syncAfterCycle, -results, to be saved on a -tourneyFile (-tf), but +otherwise volatile. When a tourneyFile is specified during a match, +a new routine NextTourneyGame is called from NextMatchGame before every +game, to decide the pairing, and unload and redefine the engines, when +needed. The XBoard Match Options dialog can be used to set the options +and create the tournament file. + Actual loading of new engines is done by TwoMachinesEvent, which is +now modified to also wait for the feature timeout of the first engine. +Waiting for the matchPause is now also implemented there, after waiting +for the engines (so they can be started during the pause). + Pairings and color assignment is now all done in an absolute +(non-incremental) way, based on a new global game-number variable +nextGame, which takes over the function of matchGame in a tourney. The +latter is now used to count games between the same players, so it can be +still used to derive the load-file indexes (again in absolute fashion). + The next game to play is already picked in GameEnd, so it can be +decided if there is a game to be scheduled, or if we can terminate. + +2011-05-04 15:42:26 +0200 H.G. Muller : +Display note in stead of empty engine-settings dialog XB + + +2011-04-24 18:02:20 +0200 H.G. Muller : +Fix crash on empty Engine Settings dialog + +The generic popup was not foolproof against this. + +2011-04-22 12:47:24 +0200 H.G. Muller : +Refactor code for loading games and positions in match + +The code in NextMatchGame and MatchEvent was nearly the same, +(MatchEvent did a little more error checking, but that is never +harmful), and could be combined. In stead of determining the load index +incrementally, it is now calculated in an absolute way from the game +number, so it can be used more easily in tournament mode. + +2011-04-21 22:37:56 +0200 H.G. Muller : +Add callback possibility to combobox selection + + +2011-04-24 17:15:23 +0200 H.G. Muller : +Lock game an position file during writing + +The use of flock() on the file desctiptor of the opened stream should +guarantee multiple XBoard instances, saving on the same file, will not +interleave their PGN games or FEN positions. + +2011-04-27 17:05:06 +0200 H.G. Muller : +Remove building rule for parser.c from WB makefiles + + +2011-04-29 16:58:49 +0200 H.G. Muller : +Fix Engine Settings buttons in WinBoard + +This was broken by a leftover statement from debugging the -file/-path +patch. + +2011-05-02 13:38:14 +0200 H.G. Muller : +Implement flock in WinBoard + +This system function seems unknown in a MinGW compile, so it is +implemented with the aid of file byte-range locking, using a lock on the +first 1024 bytes of the file as a semaphore. + +2011-04-29 23:06:43 +0200 H.G. Muller : +Fix grayout XB Match Options in ICS mode + + +2011-05-03 00:22:40 +0200 H.G. Muller : +Delay loading of second engine until it is used + + +2011-05-02 15:00:03 +0200 H.G. Muller : +Fix zippy bughouse partner bug + +The patchs to subject Zippy messages to coloriation was faulty, because +there were messages recognized by zippy that were not colorized, and +such messages would then not be 'read away' after zippy recognition +(except for the first character). As a result the messages were +processed over and over again. + +2011-05-04 10:59:43 +0200 H.G. Muller : +Silence more rpm warnings + + +2011-05-01 20:33:50 +0200 H.G. Muller : +Fix warnings XBoard file browser + +All the prototypes have been moved to selfile.h, to force uniformity. +The order of the #include files xstat.h and selfile.h had to be +swapped, to make sure 'struct stat' is a nown type atthe time of +prototype declaration. The event handler SFmotionList is considered +wrong type because of its third argument (XMotionEvent in stead of +XEvent), and had to be casted to (XtEventHandler) when passed to +XtAddEventHandler. + +2011-05-04 10:56:05 +0200 H.G. Muller : +Fix some warnings and header-file improvement + +Ther were lot of 'extern' declarations in the x-files, so called +'imports from xboard.c', (sometimes backend.c) which logically belonged +in xboard.h (backend.h) to ensure their uniform definition. These have +now been moved there. Some prototypes have been added in xboard.h as +well, for functions that needed calling from xoptions.c. + +2011-05-04 10:50:12 +0200 H.G. Muller : +Create conversion tools for language files + +A shell script "lng2po.sh" is provided, to apply the translation given +in a WinBoard .lng file to "xboard.pot", in order to generate a +"language.po" file containing translations for all strings for which +the .lng file had a translation. It makes use of a file "metascript", +which is the ed script used to turn the .lng file in an ed script to +turn the .pot into .po. For example, the command "./lng2po.sh +espa?ol.lng" will create a file "language.po", which can be renamed to +"es.po". +****************************** WARNING ******************************** + Note that the lng2po script does a "recode" that assumes the given +.lng file is encoded in latin-1. This means it canot be used without +modification for the Vietnamese and Chinese translation; you would have +to replace latin-1 by the applicable encoding first (CP1258 / BG2312 / +BIG5). + +2011-04-27 22:04:38 +0200 H.G. Muller : +Put gettext markers in generic dialog creator + +This is done by adding extra XtNstring argumentsto the widget gcreaton, +so the displayed name can be different fromthe widget name. + +2011-05-01 19:56:38 -0700 Tim Mann : +Use getaddrinfo instead of gethostbyname. Hopefully this makes us compatible with IPv6 and with hosts that have more than one IP address. However, I don't know of any chess servers that have either of those properties, so I couldn't test that. I did test that xboard still works with freechess.org and chessclub.com and that it gives an error message for invalid host names. + + +2011-04-24 11:18:28 -0700 Arun Persaud : +updated German translation + + +2011-04-24 11:17:43 -0700 Arun Persaud : +replaced hardcoded email address with generic PACKAGE_BUGREPORT + + +2011-04-23 10:51:57 -0700 Arun Persaud : +updated po-files; updated german translation + + +2011-04-23 10:51:02 -0700 Arun Persaud : +updated list of files that include translation strings; updated pot-file + + +2011-04-22 21:50:58 -0700 Arun Persaud : +marked more strings for gettext that were only marked with N_() + +they need to be marked again with _() when they are used to get the translated string + +2011-04-22 21:39:22 -0700 Arun Persaud : +updated translation files + + +2011-04-22 21:37:22 -0700 Arun Persaud : +added/fixed i18n support via gettext to xboard + +this was already added a long time ago, but now it's added again to +autoconf. Also fixed some compile errors that showed up. + +2011-04-20 10:27:20 +0200 H.G. Muller : +Make engine startup error non-fatal + +When engine startup fails, do not generate a fatal error, but swicth +back to -ncp mode. Write on broken pipe errors had to be suppressed for +this. + +2011-04-20 14:35:50 +0200 H.G. Muller : +Make engine loadable during session + +A "Load Engine ..." menu item is added to the Engine menu, which pops +up a dialog where one can replace the first or second engine by a new +one, without destroying the game state. Switching from -ncp to engine +mode needed activation of some menu items in SetGNUMode, and +re-enabling clockMode. It was also important that noChessProgram is +cleared before re-initializing the ChessProgramState. + The Load-Engine dialog can select from the list of installed +engines, and also add a newly specified engine to this list. In this +case it saves the directory, hasBook, and isUCI info with the engine, +and optionally the current variant. When loading an engine with a +specified variant, it resets the game and switches to the new variant. + +2011-04-18 15:56:47 +0200 H.G. Muller : +Generalize WaitForSecond to WaitForEngine + + +2011-04-18 15:46:12 +0200 H.G. Muller : +Add UnloadEngine routine + + +2011-04-20 13:45:51 +0200 H.G. Muller : +Put engine initialization code in per-engine function + +Initializing of the ChessProgramStates first and second from the +option settings in appData is now done by separate calls to the same +routine. Clearing of options is added to the initialization. This is +needed when reloading an engine. This is done in a separate routine, +which could also be called on -reset options. + +2011-04-18 13:21:44 +0200 H.G. Muller : +Bring structure in appData engine options + +All options in appData that came in pairs for both engines are replaced +by arrays of ENGINES (=2, for now) elements. The use of the named +appData field that are replaced in the source is replaced by use of the +corresponding array element, by #define directives in common.h, awaiting +their replacement. + +2011-04-19 15:15:48 +0200 H.G. Muller : +Fix gettext macros in option dialogs + +The strings in the tables were using _() in stead of N_(). + +2011-04-18 20:58:01 +0200 H.G. Muller : +Fix crash on using Engine #1 Settings in ICS non-zippy mode + +If XBoard is compiled with zippy the Engine #1 Settings menu was not +grayed out even when you don't run in zippy mode, and using it would +then crash XBoard. + +2011-04-19 15:07:31 +0200 H.G. Muller : +Fix shogipixmaps + +Some pixmaps forptomoted pieces had wrong background color, others had a +wrong name (so the one with the correct name was missing). + +2011-04-17 19:12:00 +0200 H.G. Muller : +Change texture-install directory to pixmaps/textures + + +2011-04-17 17:36:32 +0200 H.G. Muller : +Limit install of sound files to those in menu + +The sounds directory is set to .../xboard/sounds, and only ten +sounds are kept (all non-spoken). + +2011-04-17 17:27:57 +0200 H.G. Muller : +Remove some bitmaps from install + +Some files in the bitmaps source directory need not be installed, +because they are there only to be linked to the binary in a build +without LIBXPM, are README files or conversion programs. I left only the +stuff that is in a Debian binary package in .../xboard/bitmaps.xchess. + +2011-04-17 16:34:03 +0200 H.G. Muller : +Configure some default sounds + +The move sound is set to Wood Thunk; the sounds for tell and challenge +events to Phone and Gong, respectively. + +2011-04-17 16:17:30 +0200 H.G. Muller : +Change default sounds in Xboard menu + +All spoken sounds are removed now. Thud, Click and Ching are replaced by +Wood Thunk, Slap and Cymbal; Car Horn and Pop are added. + +2011-04-17 12:46:47 +0200 H.G. Muller : +Make user wav file available for try-out in sound dialog + +The GenericReadout was adapted to be able to read a single selected +value, so that the callback to the 'play' button in the sounds dialog +could get the name of the 'user WAV file' without accepting all settings +for the other sounds (which should only happen on 'OK', and might still +be cancelled in stead). + +2011-04-16 10:36:31 -0700 Arun Persaud : +configure: enable silent rules by default + + +2011-04-16 10:28:16 -0700 Arun Persaud : +configure: added install directory for bitmaps files: .../games/xboard/bitmaps/default/ + + +2011-04-16 10:25:33 -0700 Arun Persaud : +configure: added install of sounds in .../games/xboard/sounds/default + + +2011-04-16 09:54:26 -0700 Arun Persaud : +configure: renamed bitmapdir to pixmapsdir, since it installed only pixmaps. also changed name of default dir + +pixmaps will now be installed under .../games/xboard/pixmaps/default/ + +2011-04-16 13:40:16 +0200 H.G. Muller : +Fix gamelist highlight + +Reopening the gamelist should highlight the current game. + +2011-04-16 10:25:53 +0200 H.G. Muller : +Fix size limit on 'save as diagram' + +In stead of a fixed-size buffer the diagram-save code now uses an +allocated buffer with size calculated from the bitmap parameters to +retreive the bitmap data, so it should work for all sizes. + +2011-04-15 22:04:03 +0200 H.G. Muller : +Fix chaining of bottom-row dialog buttons + +The OK & cancel buttons are chained to the bottom. This patch makes sure +that other buttons appearing in the same row (as in the tags and +comment dialogs) will be chained that way too, so that they will behave +the same on vertical sizing. The bottom of a full-width text-edit above +it will be chained to bottom too. To make this work in the tags dialog, +the (optional) cmail-message field had to be put above the tags memo. + +2011-04-15 19:18:46 +0200 H.G. Muller : +Fix switching between pixmap and bitmap pieces + +There were still several flags that had to be reset when redoing the +graphics initialization. The Debian patch to use a default bitmap +directory when none is given but monoMode is selected or forced, is +moved to a more sensible place, so that it does not disturb matters when +compiled without LIBXPM (when we do have built-in bitmaps). + +2011-04-15 15:47:09 +0200 H.G. Muller : +Remove outline-pieces option from board-options dialog + +This option does not exist in XBoard (yet). + +2011-04-15 15:41:38 +0200 H.G. Muller : +Fix running of clock during hash allocation engine + +In TwoMachinesEvent we now wait for the second engine to acknowledge the +'ping' after 'new', to make sure it is done allocating hash in reaction +to the preceding 'memory' command, before the clock for the game is +started. + +2011-04-14 21:42:50 +0200 H.G. Muller : +Describe move type-in in texi file + + +2011-04-14 20:34:42 +0200 H.G. Muller : +Describe Copy Game List menu item in texi file + + +2011-04-14 20:30:16 +0200 H.G. Muller : +Describe -sweepPromotions in texi file + +The new method for selection promotion piece, and the -sweepPromotions +option are described in the texi file. + +2011-04-14 20:14:44 +0200 H.G. Muller : +Describe -pieceMenu option in texi file + +The sweep method for selecting a piece in Edit-Position mode is +explained, as well as the -pieceMenu option. + +2011-04-14 15:59:57 +0200 H.G. Muller : +Update texi file + +Descriptions of the new XBoard menu dialogs are included in the docs. + +2011-04-14 21:06:49 +0200 H.G. Muller : +Reorganize texi description + + +2011-04-14 12:31:15 +0200 H.G. Muller : +Fix sweep-promotions patch + +Setting of the from square was moved to before OKtoStartUserMove in the +LeftClick handler, to make sure we could test the promotion possiblity +when OnlyMove() would have altered (x,y) to be no longer the from +square. But this setting of fromX, fromY hung on also if the move was +not OK, so you could effectively select opponent pieces and empty +squares. The from-square is now set back to undefined when it is not OK +to move the piece you clicked. + +2011-04-14 11:56:59 +0200 H.G. Muller : +Alter treatment of moves with empty squares + +In Edit Position mode one can move empty squares, and use them to +'capture' pieces as a means to clear their square. But this often leads +to unintended disappearence of pieces one wants to grab for dragging, if +a previous click had inadvertantly left an empty square selected: the +click on the piece is then seen as the to-click of a click-click move. + This patch treats to-clicks of moves with an empty-square differently +from other to-clicks: Rather than performing the move (in this case +clearing of the to-square) on the down-click, it defers that to the +up-click, and only does it if that up-click is in the same square. This +allows the user to grab the piece on the down-click, and drag it to +another square, if that is what he wanted to do, without being disturbed +by sudden implosion of the piece he tried to grab. + If the to-square is in the holdings, grabbing the piece is the only +action, as moves of empty squares into the holdings are forbidden anyway. + +2011-04-13 13:14:00 +0200 H.G. Muller : +Block selection of a directory when file is needed + +When we are not browsing merely to obtain a name to put in a text edit, +but really must return an open file pointer, selection of a directory +(ending in '/') can no longer be OK'ed in the file browser. (XBoard +tends to segfault when offered garbage for game or position file...) + +2011-04-13 12:23:00 +0200 H.G. Muller : +Let double-click select file in file browser + +A second click on the already selected entry now has the same effect as +pressing the OK button. + +2011-04-12 17:06:28 +0200 H.G. Muller : +Couple mouse wheel to v-scrolls in file browser + +A newly added mouse-wheel event handler was made to call the v-scroll +callback routines with parameters to step one entry. The button-press +handler for the lists themselves was also made to intercept the wheel +events (buttons 4 and 5), to prevent they would select an entry, and +make them scroll in stead as well. + +2011-04-13 11:41:54 +0200 H.G. Muller : +Fix crash copying game list when there is none + + +2011-04-13 11:15:14 +0200 H.G. Muller : +Fix changing of float setting by generic popup + +Changing a float setting (so far the only one is in the Load Options +dalog) did not always work, because the old value was clipped to (int), +so that changing it back to an integer value might erroneously conclude +there was no change. + +2011-04-13 16:15:22 +0200 H.G. Muller : +Fix crash on closing dialogs in wrong order + +When a menu dialog was closed when it still had an open file-browse +daughter, which could be done through the system menu X on the title +bar, later closing of the file browser caused a crash. This is solved by +keeping track of the fact that there is such a daughter through a global +flag, and ignoring the pop-down command if there is one. + +2011-04-13 16:33:16 +0200 H.G. Muller : +Fix startup focus of board window + +When there were open auxiliary windows, these would have focus on +starting up XBoard. The XtSetKeyboardFocus call added in XBoard main() +was ineffective in curing that. It has now been replaced by a call to +XSetInputFocus, which does do the job. By giving input focus to the form +widget, rather than the board widget, XBoard will be immediately +sensitive to all key bindings. + +2011-04-13 15:48:35 +0200 H.G. Muller : +Fix game-list highight error when filtered (WB) + +When the gamelist was filtered, the game that was highlingted was the +n-th game in the list rather than the n-th game in the file, when the +latter was loaded (and n did not exceed the number of filtered games). +This is fixed now by searching for the line in the listbox that starts +with the game number n, rather than taking the n-th line. + +2011-04-12 19:20:46 +0200 H.G. Muller : +Refactor move type-in code + +Common code between XBoard and WinBoard was moved to the back-end +creating TypeInEvent() and TypeInDoneEvent() routines. + +2011-04-12 10:13:40 +0200 H.G. Muller : +Fix saving of XBoard fonts with spaces in name + +SaveFontArg now prints quotes around the saved font string, so that the +general option-argument parser doesnot stop at the first space it sees. + +2011-04-11 20:48:24 +0200 H.G. Muller : +Implement move type-in for XBoard + +By adding an event handler to the main window for key presses, users can +now type moves when the board has focus, like in WinBoard. The typed +character appears as first character in the type-in box that willpop up. +Enter and Escape close the box; finishing the typing of the move enters +it. Like in WinBoard it is also possible to type a move number (to go +there) or (in Edit Position mode) a FEN. + +2011-04-11 20:59:44 -0700 Arun Persaud : +new developer release + +tried to keep the v4.5.x branch developed already separated in the NEWS file, as well as DIFFSTAT and SHORTLOG. +The Changelog is just the one from master. + +2011-04-10 22:47:59 -0700 Arun Persaud : +updated Changelog, NEWS, etc. + + +2011-04-10 20:32:57 +0200 H.G. Muller : +Fix use of game/position file in first match game + +When a match was started from the menu, it was not paying attention to +game and position files. (Later games were.) The code that handled this +in the initialization when a match is started through the command line +was made into a routine MatchEvent, which can be called from the menu +proc too. + +2011-04-09 20:55:47 +0200 H.G. Muller : +Fix crash on opening ICS Text Menu + +The patch for the color defaults had broken the ICS Text Menu. + +2011-04-09 19:22:00 +0200 H.G. Muller : +Implement Copy Game List menu item for XBoard + +Some WinBoard code was cloned for this. + +2011-04-09 11:42:21 +0200 H.G. Muller : +Third method of sweep selection + +This method sweeps through the possible promotion choices for the piece +that is being dragged, as long as you drag a 7th-rank Pawn backwards. On +draggin such a Pawn forwards, it immediately shows it as the piece you +are going to promote to. + +2011-04-08 23:39:10 +0200 H.G. Muller : +Alternative sweep promotions + +The sweep takes place on the from-square here. + +2011-04-07 23:21:02 +0200 H.G. Muller : +Make sweep-select promotions work in WinBoard + +The mouse-move handler had to be connected to the PromoScroll back-end +routine. + +2011-04-07 23:19:10 +0200 H.G. Muller : +Fix path browsing in WinBoard + +The routine BrowseForFolder was still declared as static in woptions.c, +while it was used from wsettings.c. + +2011-04-07 11:14:45 +0200 H.G. Muller : +Fixes to sweep selection + + +2011-04-06 23:47:58 +0200 H.G. Muller : +Implement sweep selection of promotion piece + +When the option -sweepPromotions is true, a click-click promotion move +will first display the default choice (usually Queen) on the promotion +square. While you have the mouse button still down, you can change the +piece by moving the mouse vertically. + +2011-04-06 21:20:30 +0200 H.G. Muller : +Implement sweep selection as alternative for the piece menu + +When the option -pieceMenu is off, the piece menu will no longer appear +on right-clicks in Edit Position mode. In stead a Pawn of the chosen +color will appear immediately in the clicked square, and vertical +movement of the mouse with the right button down will cycle through +all other pieces defined in the pieceToCharTable of the current variant. + Setting the side to move is acheived by clicking the correspondig +clock. Clear board can be effected by clicking the clock of the side +that already has the move. + +2011-03-30 18:17:58 +0200 H.G. Muller : +Remember Tags and Comment dialog coordinates + +The save-settings code now uses the shell and shellUp arrays from the +GenericPopUp to read out the window coordinates for Tags and Comment +window. Pointers used by GenericPopUp are set topoint to the +corresponding WindowPlacement structs. + +2011-03-10 19:21:59 +0100 H.G. Muller : +Redo Tags dialog + +The generic popup is used for generating the Tags / EditTags popups. +The tags popup use a 'label' field to display the cmail message + +2011-04-01 13:43:52 +0200 H.G. Muller : +Implement Edit-Comment window through generic popup + +The Edit Comment and Comment popups are combined into one, that can +always be edited (similar to WinBoard). It uses shell number 1. +(Number 0 is for all transient dialogs.) A save-changes button is added. +The positioning is not implemented yet. + +2011-04-06 10:56:57 +0200 H.G. Muller : +Refinements to generic popup and color picker + +*) The text part of a checkbox can now be clicked to toggle the option. +*) Typing in single-line text edits is ignored +*) Using a spin button now sets focus to the affected text edit, with +the insert position at the end. +*) Using the sample field or an RGB button sets focus to the +corresponding text edit, with the insert position at the end. +*) The adjust buttons now work in reverse, with a D button for "darker". +*) Editing a color field causes the sample field to update to the new +color when you type . +*) The color pickers now define a default color, which can be instated +by clicking on the sample field. +*) Fix some 64-bit pointer warnings + +2011-04-05 17:05:39 +0200 H.G. Muller : +Let file browser filter on extension + +A new text field is added in the file-browse dialog, to hold (space- +separated) extensions, on which the filenames are then filtered. This +field is initialized by the caller, depending on what we need the file +for, but can be changed by the user. (Directories are always displayed!) + Changes in the extension field become effective after typing a return +in it. Escape typed in the extension field gives focus to the filename +field, and restores the contents. Escape in the filename field cancels +the dialog, return ther OKs it. The extension filter of the browser is +initialized to the extension (if any) of the file currently in the text +edit you are browsing for. + When re-opening the file browser from the XBoard File menu, and there +is no suggested filename, it will now start with the last succesfully +opened name as suggestion. Calling the browser with a NULL argument +for the suggested filename requests that (unlike calling with an empty +string, which will start it in the current directory). To make this +work smoothly, the filebrowser saves the last used name on entry, so it +can be restored on cancel, so that a cancelled browse session really +erases all memory of it. + +2011-04-04 19:26:53 +0200 H.G. Muller : +Fix animation masks on changing piece pixmaps + +The animation masks were not remade when new pieces were loaded +interactively through the board-options dialog. + +2011-04-04 19:09:21 +0200 H.G. Muller : +Fix linegap option in board dialog + +The lineGC was not recalculated, so the grid lines stayed the same +thickness. In addition, setting the line-gap override to -1 now +retrieves the original line gap that belongs to the current board size. + +2011-03-05 23:27:48 +0100 H.G. Muller : +Make a kind of ICS text menu in XBoard as a dialog + +The dialog with buttons can be opened from the View menu. It is +configured by the option -icsMenu; a default setting for this is +included in the master settings file. + The commands specified by the -icsMenu can now contain $name and $input +keywords, which will be replaced by the current primary selection, or +text the user types, respectively. Commands that contain $name will not +be sent when the current selection is empty. Commands that do not +contain $input will be sent to the ICS immediately; otherwise they will +be placed in the ICS Input Box, with the cursor at the point of the +$input, and input focus given to the Input Box, so the user can start +typing. When a command is prefixed by "$add " it will be appended to the +existing ICS Input Box contents, rather than replace it. + The items now have to be separated by ";\n", and button text from +command by ';' (with optional linefeed). This allows configuring of +multi-line commands, as a single linefeed no longer has special +sigificance. + +2011-03-31 13:36:05 +0200 H.G. Muller : +Redo ICS input box with generic popup + +This box is just a single text edit, but the complexity is in the added +callbacks. These callbacks remain in xboard.c, and were altered to +access the edit through the option.handle field. + +2011-04-03 12:54:51 +0200 H.G. Muller : +Activate -path and -file options + +In XBoard the generic popup was prepared for this. In WinBoard, for +-path options the BrowseFolder routine is used, and had to be made +global (prototype in winboard.h). + +2011-04-02 18:40:33 +0200 H.G. Muller : +Let generic popup generate Engine Settings dialog + + +2011-04-02 18:36:09 +0200 H.G. Muller : +Merge SettingsPopUp into GenericPopUp + +Based on currentCps the values read from the dialog are sent to the +engine, or stored into the option.target in the callback, and fetched +from the option.target in the PopUp. The currentCps is cleared in the +generic popdown of a transient dialog. + +2011-03-06 10:11:06 +0100 H.G. Muller : +Make generic dialog popup reentrant + +To allow persistent dialogs to be implemented through the generic popup, +it must be possible to have several dialogs open at the same time, and +thus make sure the popdowns under the cacel or close-window button know +which one to pop down. To this end an array shells[] is created that +takes over the function of settingsShell, and GenericPopUp gets an extra +parameter telling it which element to use for storing the dialog shell. +This number is then also passed to the callbacks that trigger popdown. +This was a bit nasty for the CatchDeleteWindow stuff, which passes user +data to the callback as text strings. +Keep a separate up/down indicator, so that shell widgets can be kept +for persistent dialogs. Also keep a currentOption per dialog type. + The coordinates and size of the window is read out and stored in a +WindowPlacement structure, (if one is specified for that dialog), when +the dialog is popped down. When initialized the structure is also used +to set the window parameters when the dialog is created. (The idea being +that the structure was saved in the settings file.) + The routine MarkMenu checkmarks a given menu item, and logs it for the +given dialog type, so that a later popdown automatically unchecks is. + +2011-02-25 12:14:25 +0100 H.G. Muller : +Implement Machine Match menu item and options dialog + +An item to start a match from the menu is added, similar to what +WinBoard has. (The code is duplicated, so I guess it should be moved to +the back-end now, as MachineMatchEvent(), but it was tiny.) A dialog in +the Options menu was added with the aid of the generic popup, and allows +the user to set the load Game / Position File and Index. + +2011-04-01 14:54:26 +0200 H.G. Muller : +Create General-Options dialog + +The generic popup is used to implement a General-Options dialog, which +contains all Boolaen options that used to be set directly from the main +Options menu, plus a spin option for the flash count and flash rate. +The corresponing options are removed from the main Options menu, but the +whole thing is made conditional on a compiler switch OPTIONSDIALOG. +The dialog needs an OK callback for sending an altered ponder-state to +the engine. (Why isn't this option disabled in -ncp mode, btw?) +A spin control is added to adjust -animateSpeed between 5 and 100. +Add dropMenu and showTargetSquares item as well. + +2011-04-01 18:16:47 +0200 H.G. Muller : +Redo new-variant dialog with generic popup + +Some special code was added in GenericPopUp() to force buttons of the +type needed in the New Variant dialog (wide, colored, greyed-out on +variant type). The dialog was implemented with these, and callbacks for +the buttons directly exit the dialog, without the need for OK. New spin +controls are added to the dialog for adjusting the board format. + +2011-04-01 14:48:48 +0200 H.G. Muller : +Redo common-engine dialog with generic popup + +The ponder option was removed, as it is already in the main Options +menu, and would require nastiness in the OK callback. Added book options +in common-engine dialog. + +2011-02-24 13:32:01 +0100 H.G. Muller : +Redo adjudications dialog through generic popup + +We dropped the periodic-updates option, as it is already in the main +Option menu. + +2011-04-01 21:56:07 +0200 H.G. Muller : +Make sounds dialog for XBoard + +This uses the combo boxes. A 'play' button isimplemented for a test +sound. A sound directory is introduced, and can be set through the +dialog. A default setting for -soundDirectory is added to xboard.conf. + +2011-04-01 23:11:29 +0200 H.G. Muller : +Add ICS options dialog + + +2011-04-01 21:52:48 +0200 H.G. Muller : +Add board dialog XBoard + +The GenericPopUp() is used to implement a dialog for board options. The +board dialog needs to trigger redraw and redefinition of the +colors, through an OK callback. Color-pickers are used for the 6 basic +color settings. + To allow changing board settings during the session (i.e. from a menu +dialog), the routines to allocate resources have to free the resources +for the previous settings first. This patch take care of XtCreateGCs(), +preventing re-creation of resources that are unchangeable (such as the +grid color), and calling XtReleastGC() on GCs that can be changed. +To prevent resource leaks the old pixmaps are deleted before making new +ones on second or later calls of CreateXPMPieces(). + +2011-04-03 11:39:26 +0200 H.G. Muller : +Add browse button to generic popup + +Options of type FileName and PathName cause a browse button to be added +behind the text field. The SpinCallback is used to handle the +button presses, and invokes the file browser dialog to obtain a +filename, which is then copied to the text field. + +2011-04-01 21:49:26 +0200 H.G. Muller : +Make generic XBoard popup, and implement 2 dialogs + +The Engine-Settings dialog of XBoard was cloned to work on predefined +lists of (XBoard) options, rather than engine options. An extra field +was added to the Option struct, to hold a pointer to the XBoard variable +that should hold the option setting, so on OK'ing the dialog the altered +values can be copied there. Not usable for options which should trigger +an action (like redraw, or sending something to the engine). +A Load Game, Save Game and ICS Options dialog were then defined by +tables fed to GenericPopUp(). Options set from these dialogs were removed +from the main Option menu, which removes a lot of code from xboard.c +(for checkmarking, disabling the menu items). + A button defined in the GenericPopUp can attain the color indicated +by a previous text field, and add a callback to change the color in a +spin-like manner (but using R G B W in stead of + - butons). +The EndMark option can specify a callback, to be used on OK. +A non-zero max field in the Option descriptor will be used to set the +width of ComboBox, TextBox and Button optons. +The elements are chained such that extra space goes fully into the input +fields. A label type is added for clarifying texts that would not fit in +the option names. A break-type (pseudo-)option is added. Make OK and +cancel button suppressable in generic popup (by 2 bit of the option.min +field). + +2011-04-03 11:34:21 +0200 H.G. Muller : +Add file-browser option to just return name + +By passing mode "f" the file browser dialog will not open the selected +file at all, so it can be used to retreive the name for the benefit of a +file-browser button to a -file option. A mode "p" will limit the +selection to directories only, to browse for a path. + +2011-04-03 13:15:17 +0200 H.G. Muller : +Put insertion point at end of text on SetFocus + + +2011-04-05 23:47:34 -0700 Arun Persaud : +fixed 64 bit warnings by casting integers to intptr_t before casting to int + + +2011-04-05 23:24:24 -0700 Arun Persaud : +removed check and #includes for malloc.h, since it's not needed + +hopefully this doesn't break things on non-linux systems. OS X seems to be ok, not sure about others ;) + +2011-04-03 20:23:49 -0700 Arun Persaud : +check if malloc.h is present before including it + +OS X 10.6 doesn't have malloc.h, so it complained. + +2011-04-03 20:01:36 -0700 Arun Persaud : +Fix bug introduced in commit 89b4744: removed a "/" and forgot to add it in the config file + +removed a "/" to make OS X happy, but forgot to add the "/" again in the xboard.conf.in file + +2011-03-12 14:08:50 +0100 H.G. Muller : +Fix display of promotion piece in ICS superchess + +In Great Shatranj and Superchess promoted Pawns were displayed as shadow +piece because these variants had holdings, while captured pieces should +go back into the holdings unchanged, rather than reverted to Pawns. + +2011-03-13 14:09:14 +0100 H.G. Muller : +Fix o-o castling in new parser + +The non-compliant notation of castling with lower-case 'o' should be +preferred over the non-compliant interpretation of moving a Pawn along +the o-file. Not doing so breaks ICS play, as ICS use o-o and o-o-o for +castling! So an exception is now made for the o-file in the 'fxg' +case. + +2011-03-10 19:27:41 +0100 H.G. Muller : +Implement yynewstr entry point in new parser + +This entry point, used for parsing an ICS move list, was forgotten, and +was still an empty routine. This made XBoard crash when observing an ICS +game. + +2011-03-07 23:11:00 -0800 Arun Persaud : +fixed wrong default for polyglotDir mentioned in docs. + +Thanks to Hans Aberg for reporting it. + +2011-03-05 12:39:01 -0800 Arun Persaud : +Fix "make install" on Os X10.6.6 (removed a "/") + +seems like an extra "/" made "make install" unhappy + +2011-03-03 21:19:05 -0800 Arun Persaud : +removed parser.l from build process, also removed flex dependency from configure + + +2011-03-02 22:14:57 +0100 H.G. Muller : +New parser, written in C + +A new parser was written to replace the flex-generated one. Immediate +improvements are that it understand double-digit rank numbers, and Shogi +coordinates. No changes were made in the Makefile yet to reflect the +new, flexless building procedure. + +2011-03-02 22:23:21 +0100 H.G. Muller : +Fix bugs in FRC castling rights + +When parsing a castling move in FRC when no rights existed, the parser +returned 0 (= EndOfFile) rather than ImpossibleMove. The recognition of +the absence of rights was not adapted to the new encoding NoRights in +stead of -1. + +2011-03-01 23:42:34 +0100 H.G. Muller : +Fix parsing bug of FRC castling + +The code that was supposed to intercept castling when no rights existed +in FRC was not adapted to the new encoding for this by NoRights, rather +than -1, and furthermore returned 0 (= EndOfFile) rather than +ImpossibleMove. Not sure if the former would manifest itself in any +way, but the latter seems bad. + +2011-03-01 23:32:25 +0100 H.G. Muller : +Fix two bugs in reading position diagram + +When reading a game without FEN tag, a position diagram is used to set +the initial position. This calls CharToPiece() with a '.' as argument, +because that is the position-diagram way to indicate empty squares. +altered CharToPiece() over time this would be recognized as the first +undefined piece or, more recently, the first piece without nickName, +which is a white Pawn. Now it returns EmptySquare again in that case. +A second problem was that for position diagrams in braces the brace was +not in the list of ignored characters, and would cause the reading to +get out of phase, so that the side to move was not recognized. + +2011-02-26 21:12:08 +0100 H.G. Muller : +Fix flipBlack option XBoard with board texture + +In XBoard -flipBlack is implemented by swapping white and black pieces, +because the Shogi bitmaps from XShogi are made that way. But the mask +used to cut out the whole in the board texture to fit the piece was not +swapped, both when drawing static pieces, as well as during animation. + +2011-02-25 14:38:21 +0100 H.G. Muller : +Improve repairing damage of arrow highlight XBoard + +With line gap the highlight arrow necessitated redrawing of the entire +board, to repair damage on the grid. This interfered with flashing of +pieces, which was only done on selective redraws. In stead of forcing a +total repaint we now just redraw the grid lines. + +2011-02-23 16:41:36 +0100 H.G. Muller : +Fix unintended translation in debug file + +The words "first" and "second" (cps->which) were sometimes used in +context that should definitely not be translated. (e.g. the indicator +for which engine printed/got the line in the debug file.) So translation +is now deferred to all uses in popups. + +2011-02-23 16:29:12 +0100 H.G. Muller : +Fix nps bug + +The nps settingwas tested for being > 0 in stead of >=0, so that the +case of CPU time was not properly handled. + +2011-02-24 19:06:27 +0100 Kamil Blank : +Added missing fclose() + +(tiny change) +Signed-off-by: Arun Persaud + +2011-02-20 16:12:19 -0800 Arun Persaud : +release of version 4.5.1 + +2011-02-20 16:10:16 -0800 Arun Persaud : +updated Changelog, NEWS, etc. + +2011-02-20 20:36:28 +0100 H.G. Muller : +Fix two typos in option names in texi file + +Polyglot was capitalyzed + +2011-02-20 00:03:19 +0100 H.G. Muller : +Fix some resource leaks + +Some files were opened not closed in XBoard, when loading XIM images +(which I doubt anyone ever does) but also when copying the clipboard +(which has the potential of being done very often). There was also some +code that would not work if conditional code which is permanently +disabled would be enabled. + +2011-02-17 20:17:04 -0800 Arun Persaud : +new developer release + +2011-02-17 20:14:38 -0800 Arun Persaud : +updated Changelog, NEWS, etc. + +2011-02-17 15:40:02 +0100 H.G. Muller : +Fix MSVC snprintf problem + +In MSVC snprintf has to be redefined as _snprintf, and this happens +conditionally in config.c. But the latter was not #included in help.c. + +2011-02-16 19:41:27 -0800 Arun Persaud : +updated configure.ac to check for Xaw header files + +check for Xaw header files when --without-Xaw3d was given. Before the test was +only done when Xaw3d was specified, but could not be found. + +If Xaw3d or Xaw can't be found, print a hopefully useful error message and exit the configure script. + +2011-02-16 12:03:22 +0100 H.G. Muller : +Fix ICS channel 0 + +Channel 0 messages were not displayed in the console, because the test +for channel number considered every non-numeric or non-existent handle +in a chatbox to be zero. So the messages were diverted to a non-exsting +chatbox. Now it test first for the handle to start with a digit. + +2011-02-15 19:13:33 +0100 H.G. Muller : +Make language choice from menu persistent + +Set appData.language to the chosen language file, or empty if English is +chosen, so that the choice is saved with the settings. Increase the +number of possible language choices from 5 to 20. (After all, we already +have 7 now!) + +2011-02-14 11:09:24 +0100 H.G. Muller : +Fix showing of user move after adjudication + +The correction of the fishy patch (removing ShowMove() from Adjudicate()) +had broken the adjudication of user moves (that actually did work before +the fishy patch, because there the gobal fromX/Y and toX/Y do contain +the correct values for the move to be shown). An entered move that led +to adjudication (like a checkmate) now was not displayed at all. Adding +an extra ShowMove() after (successful) return of Adudicate() solves it. + +2011-02-13 23:49:44 +0100 H.G. Muller : +Fix Xiangqi King facing + +The Spartan patch had broken the CheckTest for Xiangqi, because cl.check +was cleared after the King-facing test, rather than before it. + +2011-02-13 22:30:59 +0100 H.G. Muller : +Fix variant janus size prefix + +The default board size of Janus Chess was not consistently taken to be +10x8, which resulted the name to be sent as 10x8+0_janus to the engine. + +2011-02-13 12:18:52 +0100 H.G. Muller : +Fix Alfil bug + +The test for Alfil (suppressing single steps on the Elephant) contained +a wrong logical operator, so that it could never be active. It also +failed to include Xiangqi as variant with traditional Alfil. This led to +one-step moves of the Elephant in these variants, and false check or +unreliable mate detections. + +Fix move of Xiangqi Elephant + +2011-02-09 23:19:09 -0800 Arun Persaud : +fixed configure script to correctly detect Xaw3d library + + +2011-02-06 22:07:17 +0100 H.G. Muller : +Fix unmarked translation + +The file-browser wndowtitle in WB was not marked for translation. + +2011-02-04 10:27:49 +0100 H.G. Muller : +Put warning in HTML help + +A warning is added that the help file is not yet updated for the new +menu organzation. + +2011-02-04 10:22:29 +0100 H.G. Muller : +Fix 64-bit Windows compilability + +The API interface for Set/GetWindowLong has been changed for 64-bit +Windows, both in the name of the call as in the arguments. + +2011-02-04 10:21:06 +0100 H.G. Muller : +Fix MSVC compilability + +Both the makefile and the project file had to be adapted for the new +source file history.c, and the new location of parser.c. + +2011-02-05 10:11:58 -0800 Arun Persaud : +added missing #includes and missing prototypes to filebrowser + +thanks to Max Funk for reporting. Now using HAVE_DIRENT_H. + +Also cleaned up missing prototypes and some casts. + +2011-02-05 09:21:48 -0800 Arun Persaud : +added missing header file for sprintf + + +2011-02-03 08:50:50 -0800 Arun Persaud : +added history.c to the tar-ball. Needed for Winboard + + +2011-01-31 23:03:05 +0100 H.G. Muller : +Fix deselection of greyed-out variant button (WB) + +In Windows a disabled radiobutton refuses to deselect when you select +another (enabled) button from the group. There are then 2 buttons +checked, and the code to readout the buttons took the first one. Now it +is changed to take the first enabled one. + +2011-02-03 08:28:15 -0800 Arun Persaud : +Revert "Implement -reset option feature in WinBoard" + +This reverts commit efecf86cd9b54072c6a2f38d62f1d775e69c545b. + +picked the wrong commit from HGM's git tree. + +2011-02-01 22:01:12 -0800 Arun Persaud : +add DIFFSTAT and SHORTLOG to tar-ball + +was only in the v4.4.x branch and not in master + +2011-01-30 09:52:15 -0800 Arun Persaud : +release of version 4.5.0 + +2011-02-01 07:41:04 -0800 Arun Persaud : +changed size of borders around squares from 0 to 1 as a default + +this way highlights show up again. + +2011-01-29 20:11:30 +0100 H.G. Muller : +Implement -reset option feature in WinBoard + +2011-01-30 10:12:08 -0800 Arun Persaud : +updated Changelog, NEWS, etc. + +2011-01-30 09:56:39 -0800 Arun Persaud : +updated parser.c form parser.l + 2011-01-29 19:59:11 +0100 H.G. Muller : Clean up fishy patch