updated ChangeLog, NEWS, etc.
[xboard.git] / ChangeLog
index 7ac7916..5f8226f 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -3,6 +3,1302 @@ ChangeLog for XBoard/WinBoard
 
 (latest entries created by git log --no-merges --pretty="%ai %an <%ae>:%n%s%n%n%b" vlast.. )
 
+2011-05-07 18:44:24 -0700 Arun Persaud <arun@nubati.net>:
+added translations generated via lng2po from all winboard languages
+
+2011-05-07 18:40:23 -0700 Arun Persaud <arun@nubati.net>:
+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 <arun@nubati.net>:
+fixed access rights to winboard language files (644 instead of 655)
+
+2011-05-07 14:55:55 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Import WinBoard language files into git
+
+2011-05-06 23:14:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Let Shift+RightClick on PV actually play the PV moves
+
+2011-05-06 18:06:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+Let XB generic popup define default file extensions
+
+
+2011-05-06 18:25:38 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+Put saveGameFile in tournament dialog
+
+
+2011-05-06 19:17:56 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+Add WB new popup prototypes
+
+
+2011-05-06 18:58:08 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add partcipants at bottom in tourney dialog (WB)
+
+
+2011-05-06 18:56:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix range of tourneyType spin WB
+
+
+2011-05-06 18:15:23 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+Fix stopping of match in tourney mode
+
+
+2011-05-06 18:59:26 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add default extension in file browser
+
+
+2011-05-06 22:37:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+Lift length-limit on text-edits in WB generic popup
+
+
+2011-05-04 13:53:05 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+Make option to draw second engine from first list
+
+
+2011-05-03 00:17:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix error message on engine load
+
+
+2011-05-04 15:09:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+Calculate and display tourney result
+
+
+2011-05-04 18:42:13 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+Display note in stead of empty engine-settings dialog XB
+
+
+2011-04-24 18:02:20 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+Add callback possibility to combobox selection
+
+
+2011-04-24 17:15:23 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+Remove building rule for parser.c from WB makefiles
+
+
+2011-04-29 16:58:49 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+Fix grayout XB Match Options in ICS mode
+
+
+2011-05-03 00:22:40 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Delay loading of second engine until it is used
+
+
+2011-05-02 15:00:03 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+Silence more rpm warnings
+
+
+2011-05-01 20:33:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <tim@tim-mann.org>:
+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 <arun@nubati.net>:
+updated German translation
+
+
+2011-04-24 11:17:43 -0700 Arun Persaud <arun@nubati.net>:
+replaced hardcoded email address with generic PACKAGE_BUGREPORT
+
+
+2011-04-23 10:51:57 -0700 Arun Persaud <arun@nubati.net>:
+updated po-files; updated german translation
+
+
+2011-04-23 10:51:02 -0700 Arun Persaud <arun@nubati.net>:
+updated list of files that include translation strings; updated pot-file
+
+
+2011-04-22 21:50:58 -0700 Arun Persaud <arun@nubati.net>:
+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 <arun@nubati.net>:
+updated translation files
+
+
+2011-04-22 21:37:22 -0700 Arun Persaud <arun@nubati.net>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+Generalize WaitForSecond to WaitForEngine
+
+
+2011-04-18 15:46:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Add UnloadEngine routine
+
+
+2011-04-20 13:45:51 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+Change texture-install directory to pixmaps/textures
+
+
+2011-04-17 17:36:32 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <apersaud@lbl.gov>:
+configure: enable silent rules by default
+
+
+2011-04-16 10:28:16 -0700 Arun Persaud <apersaud@lbl.gov>:
+configure: added install directory for bitmaps files: .../games/xboard/bitmaps/default/
+
+
+2011-04-16 10:25:33 -0700 Arun Persaud <apersaud@lbl.gov>:
+configure: added install of sounds in .../games/xboard/sounds/default
+
+
+2011-04-16 09:54:26 -0700 Arun Persaud <apersaud@lbl.gov>:
+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 <h.g.muller@hccnet.nl>:
+Fix gamelist highlight
+
+Reopening the gamelist should highlight the current game.
+
+2011-04-16 10:25:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+Describe move type-in in texi file
+
+
+2011-04-14 20:34:42 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+Describe Copy Game List menu item in texi file
+
+
+2011-04-14 20:30:16 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+Reorganize texi description
+
+
+2011-04-14 12:31:15 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+Fix crash copying game list when there is none
+
+
+2011-04-13 11:15:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <apersaud@lbl.gov>:
+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 <apersaud@lbl.gov>:
+updated Changelog, NEWS, etc.
+
+2011-04-10 20:32:57 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+Alternative sweep promotions
+
+The sweep takes place on the from-square here.
+
+2011-04-07 23:21:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+Fixes to sweep selection
+
+
+2011-04-06 23:47:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+Refinements to generic popup and color picker
+
+*) The text part of a checkbox can now be clicked to toggle the option.
+*) Typing <Enter> 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 <Enter>.
+*) 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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+Let generic popup generate Engine Settings dialog
+
+
+2011-04-02 18:36:09 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+Add ICS options dialog
+
+
+2011-04-01 21:52:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+Put insertion point at end of text on SetFocus
+
+
+2011-04-05 23:47:34 -0700 Arun Persaud <apersaud@lbl.gov>:
+fixed 64 bit warnings by casting integers to intptr_t before casting to int
+
+
+2011-04-05 23:24:24 -0700 Arun Persaud <apersaud@lbl.gov>:
+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 <apersaud@lbl.gov>:
+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 <apersaud@lbl.gov>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <apersaud@lbl.gov>:
+fixed wrong default for polyglotDir mentioned in docs.
+
+Thanks to Hans Aberg for reporting it.
+
+2011-03-05 12:39:01 -0800 Arun Persaud <apersaud@lbl.gov>:
+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 <apersaud@lbl.gov>:
+removed parser.l from build process, also removed flex dependency from configure
+
+
+2011-03-02 22:14:57 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <caceel@gmail.com>:
+Added missing fclose()
+
+(tiny change)
+Signed-off-by: Arun Persaud <apersaud@lbl.gov>
+
+2011-02-20 16:12:19 -0800 Arun Persaud <apersaud@lbl.gov>:
+release of version 4.5.1
+
+2011-02-20 16:10:16 -0800 Arun Persaud <apersaud@lbl.gov>:
+updated Changelog, NEWS, etc.
+
+2011-02-20 20:36:28 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix two typos in option names in texi file
+
+Polyglot was capitalyzed
+
+2011-02-20 00:03:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <apersaud@lbl.gov>:
+new developer release
+
+2011-02-17 20:14:38 -0800 Arun Persaud <apersaud@lbl.gov>:
+updated Changelog, NEWS, etc.
+
+2011-02-17 15:40:02 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <apersaud@lbl.gov>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <apersaud@lbl.gov>:
+fixed configure script to correctly detect Xaw3d library
+
+
+2011-02-06 22:07:17 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+Fix unmarked translation
+
+The file-browser wndowtitle in WB was not marked for translation.
+
+2011-02-04 10:27:49 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <h.g.muller@hccnet.nl>:
+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 <apersaud@lbl.gov>:
+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 <apersaud@lbl.gov>:
+added missing header file for sprintf
+
+
+2011-02-03 08:50:50 -0800 Arun Persaud <apersaud@lbl.gov>:
+added history.c to the tar-ball. Needed for Winboard
+
+
+2011-01-31 23:03:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
+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 <apersaud@lbl.gov>:
+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 <apersaud@lbl.gov>:
+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 <arun@nubati.net>:
+release of version 4.5.0
+
+2011-02-01 07:41:04 -0800 Arun Persaud <apersaud@lbl.gov>:
+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 <h.g.muller@hccnet.nl>:
+Implement -reset option feature in WinBoard
+
+2011-01-30 10:12:08 -0800 Arun Persaud <arun@nubati.net>:
+updated Changelog, NEWS, etc.
+
+2011-01-30 09:56:39 -0800 Arun Persaud <arun@nubati.net>:
+updated parser.c form parser.l
+
 2011-01-29 19:59:11 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
 Clean up fishy patch