1 ChangeLog for XBoard/WinBoard
2 -----------------------------
4 (latest entries created by git log --no-merges --pretty="%ai %an <%ae>:%n%s%n%n%b" vlast.. )
6 2013-02-05 22:52:42 -0800 Arun Persaud <arun@nubati.net>:
7 new version number for release of 4.7.0
10 2013-02-05 11:56:10 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
11 Let initial setting of Twice checkbox reflect current state
13 The Twice checkbox in the Tournament dialog of WinBoard was by default
14 starting unticked. It is more convenient to have it preserve the current
15 state, however, based on the -lpi or -lgi value. Like the auto-incremet
18 2013-02-04 22:07:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
19 Put GTK warning in about-box
22 2013-02-04 21:59:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
23 Fix warnings of build server
26 2013-02-02 15:58:04 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
27 Fix GTK error auto-raising board
29 The variable mainwindow is not set in the gtk2 version. Unfortunately
30 it is still used to determine default board size...
32 2013-02-01 19:42:12 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
33 Update Dutch WB translation
36 2013-02-01 19:37:06 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
37 Add some new strings to WB translation template
40 2013-02-01 19:34:32 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
41 Assign shortcut char to WB menu item
43 The new Save games as Book item did not have a shortcut yet.
45 2013-02-01 19:31:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
46 Let WinBoard start in its installation folder
48 The current directory in WinBoard was not automatically the same as the
49 installDir returned by SearchPath. Especially not if used without shortcut
52 2013-02-01 19:29:26 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
53 Fix warning in WinBoard
56 2013-01-30 14:25:57 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
57 Fix expose of to-square with grid off
59 The code relied on drawHighlight to request an expose evet for the entire
60 square, but when lineGap = 0, drawHighlight is a no-op.
62 2013-01-29 08:39:30 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
65 On OS X dialog windows could not get focus if -lXaw appeared after
66 -lX11 -lXt in the linker command. This was cured by moving
67 @FRONTEND_FLAGS@ (which expands to -lXaw) first in the LDADD parameter
70 2013-01-28 17:38:26 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
71 Preserve PGN tags when loading engine
73 Switching to EditGame mode would normally erase the tags, but when analyzing
74 a loaded game this would be undesirable. When the engine is playing, keeping
75 the tags is dubious, but it is not obvious what to put in a new name tag,
76 so we leave that for now.
78 2013-01-28 17:23:47 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
79 Preserve mode on engine loading (sometimes)
81 That the mode always switched to EditGame after engine loading was
82 particularly annoying at the start of a game (where leaving BeginningOfGame
83 mode would disablethe Time Control dialog, and the engine would not
84 automatically reply if you start playing) and AnalyzeMode. These two
85 modes are now preserved, BeginningOfGame by refraining from calling
86 EditGameEvent() and sending 'force' to the new engine, and AnalyzeMode
87 be calling AnalyzeModeEvent() after the engine is loaded and repositioned.
89 2013-01-28 14:14:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
90 Catch unknown engine in tourney games
92 When an XBoard instance is playing on a tourney it can happen that it is
93 using a settings file with an engine list not yet containing a certain
94 participant, because that participant was just installed in the instance
95 that created the tourney file, but it did not save those modifications yet.
96 This error is now caught, and leads to an error popup and stopping of the
97 tourney play. This error was made non-fatal to allow the user to decide
98 if he wants to quit with or without saving the settings (which, after all,
99 does not seem up-to-date).
101 2013-01-26 18:08:37 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
102 Adjudicate pawn-drop mate as loss in Shogi
104 Mating with a Pawn drop is illegal in Shogi, but rather than burdoning
105 the legality-testing by this complex rule, we simply invert the result
106 for such a mate. After all, Shogi customs are such that everything illegal
107 leads to an immediate loss.
109 2013-01-25 10:05:44 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
110 Adjudicate perpetual checks as loss also in Shogi
112 The Xiangqi code for recognizing perpetual checks is now also activated for
113 Shogi, but in this case we bail out before checking for perpetual chases.
114 The mini-Shogi case is then recognized as a win for gote.
116 2013-01-25 09:55:56 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
117 Stalemate is a win in Shogi
119 In regular Shogi this never occurs, but in the mini variants it happens
122 2013-01-22 20:49:34 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
123 Fix engine timeout problem in match mode
125 Reload of a reuse=0 engine would cause a done=1 event which would be
126 abort the feature timeout of the other engine in the first game.
128 2013-01-22 20:32:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
129 Enforce -popupMoveErrors
131 One move error was using DisplayError(), in stead of DisplayMoveError(),
132 and thus did not obey the -popupMoveErrors option.
134 2013-01-21 15:30:29 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
138 2013-01-21 10:26:20 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
142 2013-01-20 19:09:05 -0800 Arun Persaud <arun@nubati.net>:
143 Updated German translation
146 2013-01-19 17:54:59 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
147 Do delayed board draw also with -stickyWindows false
149 Only CoDrag needs to be suppressed on a configure event with
150 -stickyWindows false, not the board redraw.
152 2013-01-18 11:11:48 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
153 Let tellothers command add comment to PGN in local mode
156 2012-12-30 15:19:57 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
157 Allow use of ~ in pieceToChar for shadow pieces in any variant
159 The use of shadow-pieces for promoted Pawns was limited to Crazyhouse and
160 Bughouse. But this is not necessary, and in fact undesirable, as it made
161 it impossible to implement Crazyhouse960, which combines shadow promotions
162 with Fischer castling (only available in variant fischerandom)s, and thus
163 has to be played as 8x8+5_fischerandom, using the Crazyhouse -pieceToChaTable.
165 2012-12-30 15:06:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
166 Resend engine-defined options after reuse=0 reload
168 When the engine process is re-spawned for a new game under -xreuse setting,
169 any alteration of engine settings brought about through the Engine Settings
170 dialogs would be lost, and revert to the engine's default. This is now fixed
171 by re-sending all options (known from the previous load of the same engine)
172 with the current settings immediately after "protover 2", and ignoring the
173 engine's option features. Rather than clearing the option list, and
174 redefining it from the option features.
176 2012-12-30 14:58:16 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
177 Implement aborting of games on engine request.
179 A new game-end command is added. For bakward compatibility it is disguised
180 as an old one, namely "1/2-1/2 {Engine Abort Request}". These resultDetails
181 are recognized as special, and rather than ending the game in a draw (which
182 GUIs not implementing this), the game will be completely 'expunged' from
183 the match or tourney it is part of, leaving no trace in the saveGameFile.
185 2012-12-30 14:54:43 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
186 Store some more tourney params in tourney file
188 The hash and threads settings, as well as ponder and book options are now
189 also saved in the tourney file, so that tournaments can be played in
190 parallel where these parameters differ, and no mess up can occur on
191 restarting a touney after doing something else.
193 2012-12-23 11:26:31 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
194 Do not automatically save aborted games in tourney PGN
196 When the game result is 'unfinished', we prompt for a filename rather
197 then using the specified saveGameFile if a tourney is in progress.
199 2013-01-19 08:35:52 -0800 Arun Persaud <arun@nubati.net>:
200 fix configure bug that showed up on OS X (couldn't find X11/Dialog.h)
202 X_CFLAGS (set by AC_PATH_XTRA) was not used in Makefile.am. It was used in tests for X11/Dialog.h, etc. so configure worked, but make didn't.
204 2013-01-18 22:26:13 -0800 Arun Persaud <arun@nubati.net>:
205 Updated Ukrainian translations
208 2013-01-09 07:57:43 -0800 Arun Persaud <arun@nubati.net>:
209 removed trailing whitespace
212 2013-01-09 07:49:20 -0800 Arun Persaud <arun@nubati.net>:
213 Updated copyright notice to 2013
216 2012-12-22 22:46:21 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
217 Do not move to forwadMostMove when unpausing AnalyzeMode
220 2012-12-22 22:44:50 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
221 Use Ctrl key in AnalyzeMode to exclude entered move
224 2012-12-22 20:40:26 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
225 Implement insufficient mating material for Knightmate
227 KBK is draw with Royal Knight. With exo-pieces also KNK and KFK.
229 2012-12-22 20:25:51 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
230 Fix rep-draw detection in drop games
232 In games like Crazyhouse every move is reversible, as captured pieces
233 can eventually change sides again, and be dropped back on the board.
234 So we have to search back a full 100 ply for repetitions, passing captures
237 2012-12-11 22:33:07 -0800 Arun Persaud <arun@nubati.net>:
241 2012-12-11 22:18:05 -0800 Arun Persaud <arun@nubati.net>:
242 new version number for developer release
245 2012-12-10 14:48:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
246 Prefer pause mode on pondering engine over 'easy'
248 If the thinking engine is stopped after its move because it does not
249 support pause, is is still better to use pause on the pondering engine
250 than to switch of its pondering with 'easy', as the latter might not
251 be instantaneous. Also switch off pondering in the thinking engine before
252 it gives the move, just in case it does not respond immediately to
255 2012-12-10 13:40:47 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
256 Update WinBoard translation template
259 2012-12-10 13:35:41 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
260 Fix min-Shogi promotion zone
262 In integer arithmetic N*2/3 is not the same as N - N/3, with as a result
263 that the white promotion zone was 2 ranks deep on 5x5 boards. This only
264 happened in LegalityTest, but because this would classify all moves to
265 4th rank an non-promotions, they would be printed with a faulty
266 deferral (=) sign as promochar in SAN.
268 2012-12-10 13:32:49 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
269 Do not clear PGN tags on Analyze File
272 2012-12-10 13:28:37 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
273 Fix -fSAN in AnalyzeFile mode
275 The exception that a PV relates to currentMove rather than forwardMostMove
276 applies not oly in AnalyzeMode, but also in AnalyzeFile. Furthermore,
277 PvToSan did not properly restore the pushed game tail in this case.
279 2012-12-08 16:02:09 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
280 Improve scaling of border bitmap (WB)
282 The StretchBlt mode is set from dither to delete.
284 2012-12-05 16:34:58 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
285 Implement use of pause / resume protocol commands
287 Engines that implement feature pause=1 will be paused during their move
288 on a pause event; pondering engines will be controlled either through
289 'pause' or (if they don't support that) 'easy', which both should work
290 instantaneously. If the thinking engine does not support 'pause', the pausing
291 will be deferred to when it produces its move, and is implemented by not
292 relaying the move, and switch off pondering for both.
294 2012-12-03 12:58:36 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
295 Fix Loop-Chess promotions
297 Loop Chess is not a supported variant, but hould be playable as Crazyhouse
298 with an altered pieceToCharTable, not defining the shadow promotion pieces.
299 But with legality testing on promotion to shadow piece would take place
300 even if the shadow piece was not defined.
302 2012-12-02 22:44:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
303 Fix move highlighting with animation off
305 In WB the moving of SetHighlights to after the animation had broken the
306 highlighting of engine moves, because it was also moved after DrawPosition.
307 While it is DrawPosition that actually draws the highlights. Now it has been
308 moved to just before DrawPosition.
310 2012-12-02 11:09:14 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
311 Start browsing in currently-selected folder (WB)
313 The folder-browse dialog always started at My Computer, while file browsing
314 started in the globally last-used folder (which might not be related at all
315 to the file entry we are now browsing for).
317 2012-11-29 23:38:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
318 Implement book-creation functions
320 A new menu item triggers conversion of the currently loaded PGN file
321 to a Polyglot book, saved with the GUI-book filename. A (volatile) option
322 -mcBookMode alters the probing algorithm to build a book from scratch by
323 playing games (and using a form of learning).
325 2012-11-29 22:23:44 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
326 Use colors in Board-Options dialog also for font pieces (WB)
328 The piece color settings now control the pieceColor or fontPieceColor
329 settings, depending on the setting of -usePieceFont.
331 2012-11-29 22:14:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
332 Implement auto-creation of ICS logon file
334 Under control of the new option -autoCreateLogon (which can be set from
335 the ICS Options dialog) the first two lines in response to the ICS "login:"
336 pompt will be saved on a newly created logon file (if logon from such
337 an existing file failed).
339 2012-11-29 21:56:02 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
340 Add Themes dialog (WB)
342 This dialog, done by the generic popup, contains controls for many settings
343 that so far could only be controlled by options. It also introduces the
344 concept of 'themes', sets of options stored in the multi-line option
346 Add some dummy routines to suppress compile errors in functions that
347 cannot be called yet in XBoard.
349 2012-11-29 21:32:03 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
350 Allow external piece bitmaps and board border (WB)
352 The -pieceImageDirectory is now also used for WinBoard, to indicate
353 a directory of .bmp files, used to replace the built-ins. The outline
354 and solid bitmaps can be full-color. This allows winBoard to use the
355 WinBoard-zeta graphics. A new option -border can indicate a bitmap file
356 used to draw a half-square-wide border around the board.
357 A white background has to be drawn underneath the black pieces, to avoid
358 color-interference with the board, just like happens for the white pieces.
359 These backgrounds now always use bright white, rather than -withePieceColor.
361 We still have to work on the scaling of the zeta (600x600) bitmaps to
362 the actual board size, as for some bitmaps the stratchblt is ugly.
364 2012-11-29 21:05:15 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
365 Add 'Continue Later' button in Tournament dialog (WB)
367 This button makes it possible to accept the values specified in the
368 dialog without immediately starting the tournament (as OK does),
369 so you can re-open the dialog later, and OK it then.
371 2012-11-29 20:25:35 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
372 Load opponent logo based on handle in ICS play (WB)
374 The logos for handles on FICS are sought in folder logos\freeches.org\*.bmp,
375 etc. If no logo for the handle is found there, the logo of the ICS is
378 2012-11-19 20:35:05 -0800 Daniel Dugovic <dandydand@gmail.com>:
379 Fix configure script for --enable-zippy (tiny change)
381 reported and patch by Daniel.
383 edited by Arun Persaud:
384 - also fixed #ifndef ZIPPY -> #if !ZIPPY
385 - didn't change #if -> #ifdef
387 2012-11-10 00:12:34 -0800 Arun Persaud <arun@nubati.net>:
388 don't define X_LIBS when using gtk-frontend
391 2012-11-07 22:16:09 -0800 Arun Persaud <arun@nubati.net>:
392 updated po/pot files; added new frontend files
395 2012-11-07 22:14:20 -0800 Arun Persaud <arun@nubati.net>:
396 fix configure script for --with-Xaw and --with-gtk
398 made Xaw the default and included xaw or gtk sources as extras
399 in case the other frontend is selected for make distcheck
401 2012-11-07 21:13:38 -0800 Arun Persaud <arun@nubati.net>:
402 new version number for developer release
405 2012-10-31 09:55:02 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
406 Draw frames around memos and listboxes
409 2012-10-30 17:39:59 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
410 Adapt lineGap during sizing
413 2012-10-30 15:04:32 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
414 Fix clock highlighting
417 2012-10-30 10:59:45 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
420 The genric TypeInProc is re-instated, and replaces ICSKeyEvent as primary
421 handler for special keys in one-liner text edits.
423 2012-10-29 19:46:27 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
424 Pay attention to NO_CANCEL dialog flag
427 2012-10-29 14:18:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
428 Fix clock clicking with GtkEventBox
430 Like in WinBoard the button-3 case is now handled in the primary
431 event handler (and communicated to it in a kludgy way). It would be
432 better if this was absorbed in ClockClick().
434 2012-10-28 22:25:22 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
437 Graphs were not recognized as possible SAME_ROW elements. A Graph requesting
438 FIXED_H (which only the logos did) is now packed into a (borderless) aspect
441 2012-10-25 23:04:42 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
442 Add window positioning
444 Sticky windows now sort of works, but needs unexplained fudge factors.
445 Reopening a persistent dialog centers it on the board, and disobeys
446 the positioning command. The WindowPlacement of the BoardWindow was
447 again added (it was commented out during development).
449 2012-10-22 22:41:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
450 Make board sizing work through subtracting fixed height
452 There is now no attempt to give a size to the board drawing area, so it
453 can later be sized as small as we want. The frame width is determined
454 by subtracting the nominal board size from the actual window size,
455 (because the clocks will have that width, and the board will startas 1x1),
456 while the vertical margin is determined as the difference between the
457 bactual window height, the drawing-area height minus a fudge of 25 pixels
458 to compesate for the erroneously allocated blank space below the board.
460 2012-10-22 21:09:51 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
463 The highTextStart/End are now declared in engineoutput.h, shared between
464 nengineoutput.c and xengineoutput.c. Unused variables were removed.
465 Also fix warnings in xboard.c and xoptions.c.
467 2012-10-22 17:40:08 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
468 Delete emptied front-end files, and move rest to gtk directory
470 Remove #ifdeffed-out Xt code that has GTK implementation. The xgamelist
471 and xhistory have been completely cleared off content, and were removed.
473 2012-10-27 00:12:42 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
476 The code from gtk-xt could be used with almost no modification.
478 2012-10-21 09:09:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
479 Some experimenting with sizing
481 Does not work as intended yet.
483 2012-10-21 23:04:49 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
486 Funny enough it was necessary to swap the two svg icons to make this work!
488 2012-10-20 10:29:37 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
489 Make some tall dialogs multi-column
491 A dummy button was added to the last row of New Variant to make the
492 number even. A legality-test warning as put in the New Variant dialog
493 Fix width of tourney-file in Match dialog
495 2012-10-20 21:14:33 -0700 Arun Persaud <arun@nubati.net>:
496 updated some icons to SVG
499 2012-10-20 19:57:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
500 Add displaying of icons
502 A new Option type, 'Icon', was added for this as in GTK Icons and Labels
503 need different types of widget. The icons are now svg, so we could
504 remove the icon pixmaps.
506 2012-10-20 14:25:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
510 2012-10-20 14:03:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
511 Add BarBegin, BarEnd options
513 This makes the button bar display correctly. Also fix v-sizing of menu bar.
515 2012-10-20 10:01:35 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
516 Add listbox double-click callback
518 This function was formerly performed by WheelProc.
520 2012-10-19 17:29:40 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
521 Add hiding / showing second Engine Output pane
523 The handle of the GTK table for the second engine is stored in the
524 EndMark handle by GenericPopUp, so it can be used later to hise/show
527 2012-10-19 17:15:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
528 Use different tables for different dialog columns
530 Making the same table wider (in steps of 3) to get multiple columns
531 does not work, because it forces options to align vertically. This
532 wrecks dialogs like Load Engine, where one column contains a very
533 high option (listbox). Now differnt tables are created for each column,
534 packed in a new itermediate hbox. In case of the Engine Output window,
535 a vbox is used instead to cause vertical stacking.
536 Only multi-line text-edits and listboxes are now allowed to take up
537 vertical space changes, while only the middle colum of the table
538 can take up horizontal size changes. Within packing boxes space is
540 The labels above the particiant-selection widgets had not the same width
541 as the textview / listbox, leading to misplacement of the second label.
542 For Engine Settings the spontaneous breaking into columns did not
543 involve a SAME_ROW flag, so the 'columns' were stacked vertically.
544 In addition the columns were too tall for GTK. They are now 20 options max.
546 2012-10-19 13:46:37 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
547 Deselect first char in Move Type-in and ICS Input Box
549 After popup the Move Type-In had the typed character in it, but it was
550 selected, so that typing a second character would erase it again.
551 Same for the ICS Input Box. A prototype for CursorAtEnd is now also added.
553 2012-10-19 13:33:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
554 Close Move Type-in on Enter
556 The code is squeezed into the ICSKeyEvent callback.
558 2012-10-18 21:57:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
559 Add access routines to checkboxes and FocusOnWidget
561 The <Enter> handler of the filter field needs it to return focus to
564 2012-10-18 21:42:49 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
565 Add game-list callbacks
567 The callbacks for listbox and filter text are treated by the same callback,
568 which does both key presses and button double-clicks.
569 Giving focus back to the listbox after filtering does not yet work!
571 2012-10-18 16:27:57 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
572 Add optional callback to Label Options
574 For some reason this does not work. The callback isn't called!
576 2012-10-18 13:40:55 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
577 Add type-in event to board for popping up box
580 2012-10-18 13:12:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
583 The state of Shift and Ctrl was only probed on button clicks, so it
584 is now read out of the button-event struct in the relevant button handlers.
585 For backwad compatibility, they store it in a global, so the routine
586 ShiftKeys can take them from there.
588 2012-10-18 12:35:20 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
589 Remove some unneeded low-level X11 code
591 Things like tabbing between controls, mouse-wheel scolling etc. are all
592 automatic in GTK, and thuse don't need to be ported.
594 2012-10-18 10:12:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
597 The gtk-xt code for browsing in response to menu items rather than dialog
598 browse buttons) was grafted. It seems desirable to merge the two browsing
599 functions, though. Pass extra params used by Xaw to FileNamePopUpGTK.
600 The code was altered to use DelayedLoad.
602 2012-10-18 09:54:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
603 Fix ListBox, and add some support routines
605 The srolled-window for the listbox used a uninitialized variable for its
606 width, causing a crash. Now it pays attention to the Option.max and .value
607 size hints. The access routines were copied from gtk-xt. HighlightWithScroll
608 could just a wrapper for HighlightListBoxItem, as GTK auto-scrolls.
610 2012-10-17 20:01:37 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
611 Connect CommentClick handler
613 This can make use of generic memo callback, so it could be entirely
614 backend. Therefore it was moved to dialogs.h. As it shared a global with
615 some other back-end popup routines to remember the current move, these
616 could now be moved out of xboard.c too. (Well, not so for the X11 front-end,
617 so it has now been put in a header. :-( )
619 2012-10-17 19:41:11 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
622 Because FrameDelay does block the event loop, even though it releaes the
623 CPU, expose events start to lag behind the actual drawing. By combining
624 expose events for overlapping squares, rather than decompose them into
625 3 rectangles, this problem seems to go away. But only if there is an
626 extra exposure on the squares to be drawn also non-overlapping frames
627 will be properly drawn (?!).
629 2012-10-17 14:40:59 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
630 Implement highlighting in engine output by through generic method
632 HighlightMove was made generally available for all text. It is now just a
633 wrapper for the generic HighlightText, and could be moved to the back-end.
634 (This requires the initialization to be widget specific, and the flag
635 indicating it has been done is now stored in the Option.min field.)
637 2012-10-17 14:33:28 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
638 Let engine-output memos use new generic callback
641 2012-10-17 13:53:03 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
642 Add scrolling of Move History
644 To have access to the textview, its handle is now stored in the
645 Option.textValue field.
647 2012-10-17 13:11:23 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
648 Add highlighting in move list
650 For now it is assumed the normal background will be white (for clearing
653 2012-10-16 19:44:40 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
654 Make generic memo-event handler, and connect history callback
656 Large text widgets can now define a user handler in their Option.choice
657 field. If they do, agneric callback is added tothem, which catches mouse
658 events. Button release and pointer motion pass their coordinate and type
659 to the specified user routine. Button presses in addition retrieve
660 the text from the widget, set the cursor in it to the clicked point,
661 and convert it to a character position, also passed to the user.
662 The user is responsible for ignoring events he is not interested in.
664 2012-10-16 15:58:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
665 Add key-handler for ICS Input Box
667 In contrast to the X11 code, all intercepted keys are now treated by
668 the same callback. The ICS Input Box callback triggers on Up, Down and
669 Return key, and refers to these symbolically.
671 2012-10-16 15:05:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
672 Highlight Pause button
675 2012-10-16 13:52:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
676 Better cleansing of xboard.c from X11 types
678 The #includes for X11 files were still in there.
680 2012-10-16 13:28:32 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
681 Add text insertion in engine-output memos
684 2012-10-16 09:34:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
685 Append recent engines to engine menu
687 This is now entirely moved to the back-end, by doing it in the table
688 from which the menus are later generated. The special callback for engine
689 items is abandoned, and the euProc for such items is left NULL to flag
690 that RecentEngineEvent should be invoked with the applicable engine number.
691 To calculate the latter a global variable firstEngineItem is dynamically
692 set to the length of the regular engine menu.
694 2012-10-15 22:17:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
695 Transfer more gtk-xt code, and add some new
697 Add input-source handling
698 Graft color picker (<Enter> callbeack in the text field is still missing!)
699 Handle contents of label widgets (store handles in Option for access)
700 Add printing of clocks
701 Add printing of window title
702 Pay attention to BORDER attribute of Label Options (pack in frame)
703 Delete ReadBitmap code (also remove #including of bitmap files for icons)
704 Fix layout of textviews (adapt to newer Option format, incl. wrap, scroll)
705 Support vertical stacking in Break Option (no table widening when !SAME_ROW)
706 Make default horizontal scroll policy automatic (for engine-output window)
707 Fix disabling of unused spinners in TC dialog
709 2012-10-15 20:47:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
710 Connect dialog Browse buttons to GTK browser
713 2012-10-15 19:52:17 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
714 Implement menu checkmarking and enabling
716 odes in the (later over-written) handle field specify which items
717 are to be checkmarked, and by what style button.
719 2012-10-15 16:18:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
720 Attach expose handler and connect to mouse events
722 The GraphExposeProc is conected to the Graph widgets. A gdk draw routine
723 is used to copy the buffer bitmap to the display. It is also connected
724 to button and motion-notify events.
725 In this version the board can be fully operated with the mouse.
727 2012-10-14 22:00:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
728 Transfer most available gtk-xt code to xoptions.c
730 GenericPopUp and PopDown are grafted from gtk-xt into gtk2.
731 The version compiles, but segfaults before doing anything, with error
732 messages about unexpected cases in GenericPopup for Graph and PopUp Options
733 of the main board. The spin options need special treatment in GetWidgtText.
735 2012-10-15 11:41:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
736 Give LoadListBox two extra parameters
738 It often occurs that we just want to swap two elements, and reloading
739 the entire listbox would be a very inefficient way to do this in widget
740 sets that allow access to a single element.
742 2012-10-14 20:36:34 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
743 Remove all X11 code by #ifdeffing it out
745 With #ifdef TODO_GTK we disable all X11 code, in order to get a compiling
746 X11-free version. The disabled sections can then be replaced by code
747 for another widget set, the X11 version still showing what it was supposed
750 2012-10-14 17:37:18 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
751 Move timer functions to new file xtimer.c
753 The timers for the clocks, periodic analysis events and ScheduleDelayedEvent
754 go into a separate file.
756 2012-10-14 15:31:56 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
757 Make xevalgraph.c backend
759 The only front-end stuff left in xevalgraph.c was an unnecessary reading
760 of the window size (which could be obtained from the WindowPlaceent struct),
761 and drawing (all cairo now). The drawing was moved to draw.c, and the
762 remaining part renamed nevalgraph.c.
764 An attempt to list them in a less chaotic way.
766 2012-10-14 14:34:09 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
767 Cleanse back-end code of all references to X11 types
769 When compiling for X11, common.h #included X11/Intrinsics.h so that
770 X11-specific data types could still be used throughout the back-end part
771 not shared with WinBoard. By temporarily disabling this, error messages
772 could be generated on all such occurrences, and were then solved. This
773 included the following:
774 The InputSource struct is not uses in usystem.c at all, and its definition
775 could be moved to xboard.c. InputSourceRef, which logically should heve been
776 defined as (InputSource *), is in reality (void *), so the back-end can
778 Some non-platform-dependent stuff of general interest had prototypes
779 (or external vars) in xboard.h. This is now moved to a new header xboard2.h,
780 to allow it to be shared without bringing in X11 dependence.
781 The EngineOutputProc was defined inconsistently, but the header was not
782 sufficiently shared to flag this error. This has been repaired now, by moving
783 the template to menus.h.
785 2012-10-14 13:39:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
786 Remove xedittags.c, .h from project
788 The tiny bit of code that was left was absorbed in dialogs.c, the one
789 prototype to menus.h.
791 2012-10-14 12:53:20 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
792 Remove inclusion of frontend.h from backendz.h
794 This did not seem to serve any purpose at all.
796 2012-10-14 12:49:28 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
797 Split xhistory.c in front-end and middle-end part
800 2012-10-14 12:21:09 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
801 Move MarkMenuItem to xoptions.c
803 This to make xoptions.c completely independent from the inclusion of
804 frontend.h. The prototype is moved to menus.h.
805 Loose end: DrawPosition in board.c does not see the prototype.
806 Very suspect that it wants to see it. Why would it have to correct the
807 flipView setting??? Better se to it that it is correct to start with!
809 2012-10-14 12:14:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
810 move testing for no options to back-end
812 The test if an engine has options and display a note instead of
813 the Engine Settings dialog when this is not the case is moved
814 to outside of GenericPopUp, to make the later independent of calling
817 2012-10-14 11:20:16 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
818 Remove some unnecessary header includes
821 2012-10-14 10:47:21 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
822 Move ICS-engine analyze and AnalyzeGame code to shared back-end
824 This code was still duplicated between WB and XB in the front-ends.
825 Because of its incorporation in AnalyzeModeEvent the 'middle-end'
826 function AnalyzeModeProc could be eliminated. AnalyzeModeEvent was made
827 to return an int to flag its success, and keep the JAWS code based
829 The AnalyzeGame code is now incorporated in AnalyzeFileEvent().
831 2012-10-26 10:28:59 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
832 Add configure switches for Xaw vs GTK.
834 This patch is an adapted version of the one Arun made at the end of the
835 gtk2 branch. It uses the exact same version of his configure.ac, but the
836 Makefile.am is adapted to the situation in master at the beginning of it,
837 after duplication of the X11 front-end files in the xaw directory for
838 preserving them, while the versions that will be modified to GTK front-end
839 are still in the xboard directory.
841 2012-10-25 11:12:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
842 Prepare xoptions.c for middle-end changes
844 Some changes that can be pre-empted, such as the splitting of Label
845 into Label and Icon Option type, and some dummy wrappers are already
846 implemented, so they can be used when needed by GTK.
848 2012-10-25 09:20:03 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
849 Preserve copies of the X11 front-end in xboard directory
851 The X11 front-end has been moved to the xaw directory, but copies
852 are retained for modifying them to gtk versions.
854 2012-10-24 08:55:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
855 Move X11 front-end to directory xaw
858 2012-10-31 18:18:02 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
859 Fix initial enables in TC dialog
862 2012-10-30 14:47:24 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
863 Fix image extension used for browsing to .pgn
866 2012-10-28 21:39:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
867 Fix WinBoard compile error on enum PEN
870 2012-10-30 11:20:54 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
871 Fix crash in promotion popup
873 There were not enough entries for Capablanca Chess with legality-testing off,
874 where King is also presented as a choice.
876 2012-10-28 18:19:23 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
877 Fix message in New Variant dialog
879 Even in -ncp mode the message was referring to the 'current engine'.
881 2012-10-28 18:16:20 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
882 Fix crash on animation after resizing
884 The animate buffers were still holding pointers to a discarded cairo surface.
886 2012-10-21 14:49:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
887 Fix variant-dependent pieces
889 The code to select the actually used piece images from the available ones
890 (from InitDrawingSizes) is now made into a subroutine, and also called
891 after resizing the pieces.
893 2012-10-26 10:18:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
894 Replace marble texture pixmaps by png
897 2012-10-26 10:13:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
898 Replace xiangqi board pixmaps by png images
901 2012-10-26 10:08:44 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
902 Remove the texture pixmaps from project
904 These were already replaced by png textures.
906 2012-10-23 15:02:56 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
907 Fix re-rendering of svg on resize
909 The previously prepared bitmaps were retained if we resized, rather then
910 rendering the svg atthe new size.
912 2012-10-21 15:48:30 -0700 Arun Persaud <arun@nubati.net>:
916 2012-10-21 15:47:12 -0700 Arun Persaud <arun@nubati.net>:
917 new version number for developer release
920 2012-10-21 11:10:36 -0700 Arun Persaud <arun@nubati.net>:
921 we still need a few bitmaps, so the directory needs to be included in Makefile.am
923 make distcheck complained about this
925 2012-10-21 15:56:43 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
926 Rename svg shogi pieces, so they become usable
928 Only white pieces are present. For black they would have to be flipped.
930 2012-10-21 15:54:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
931 Fix bug in resizing on variant switch
933 The fix of the garbage pixels had unfortunately broken this.
935 2012-10-21 15:15:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
936 Fix bug in fallback mechanism
938 After failure to load a piece from a specified -pieceImageDirectory
939 the default theme was not tried, because the cairo function to load
940 from a pgn file returns a valid handle even if the file does not exist.
942 2012-10-21 14:58:42 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
943 Get svg error message
946 2012-10-21 14:49:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
947 Fix variant-dependent pieces
949 The code to select the actually used piece images from the available ones
950 (from InitDrawingSizes) is now made into a subroutine, and also called
951 after resizing the pieces.
953 2012-10-16 12:08:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
954 Remove caveat on available pieces fromNew Variant dialog
956 In the cairo version all pieces are available at all board sizes.
958 2012-10-21 11:41:11 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
959 Remove some unused images from png directory
961 Currently only the three board texture files are used. But the piece
962 images are still left, because they might be useful if we ever want
963 to mae XBoard configurable for not using librsvg.
965 2012-10-21 10:40:37 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
968 The nominal size of the window was not set in the correct Option struct.
970 2012-10-21 09:58:23 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
971 Prevent odd-width line shift in length direction
974 2012-10-21 09:48:29 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
975 Print missing-pieces error message to console
977 The GUI might not yet be up at this point.In addition, suppress
978 the rest of the code, because it could give segfaults.
980 2012-10-21 09:30:26 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
981 Fix garbage pixels on the right of the board
983 The extra pixel that is requested in sizing the board window back to
984 an available size because we ofte get one less pixel than we ask for
985 can lead to a line of garbage pixels next to the board. This is combatted
986 by limiting expose events to the true board area, remembering that in the
987 Graph Option rather than the actual window size, and suppressing resizing
988 when the latter only exceeds the stored width by more than 1 pixel.
990 2012-10-15 10:27:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
991 Trim board-window size
993 The board window will sometimes be a pixel larger than requested.
994 The ReSize routine will now reset the size values in the Graph Option
995 to what they were supposed to be, to prevent expose events will
996 draw nonsense in the extra space.
998 2012-10-13 23:26:10 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
999 Adapt docs for svg/png in stead of bitmap/pixmap
1002 2012-10-13 09:35:31 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1003 Spontaeous changes in gettext stuff
1006 2012-10-13 08:03:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1007 Move Shogi svg pieces to own directory
1010 2012-10-13 07:57:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1011 Remove unnecessary Xt colors and call to MakeColors
1014 2012-10-13 07:50:56 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1015 Code cleanup: move expose redraw to draw.c
1018 2012-10-13 07:37:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1019 Suppress warning for InitDrawingHandle
1022 2012-10-13 07:33:15 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1023 Make fallbackPieceImageDirectory hardcoded
1026 2012-10-13 07:18:23 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1027 Increase drag delay too 200 msec
1029 On my slow laptop it can take more than 100 msec to reallocate bitmaps
1030 in the generic expose, with as a consequence that the DelayedDrag event
1031 is not processed before the timeout expires. The timeout event then triggers
1032 a redraw, which again takes so long that the timeout expires before the
1033 event to reset the timer could be processed, and this just perpetuates
1034 itself, leading to a large series of queued redraws, and a long waiting time
1035 for an image to appear after the sizing stops.
1037 2012-10-13 07:01:05 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1038 Fix segfault on faulty command-line option
1041 2012-10-12 14:42:26 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1042 Suppress anti-aliasing in -monoMode
1044 In the color-substitution code, always use bi-level alpha and color.
1046 2012-10-12 13:34:04 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1047 Remove piece pixmaps from project
1050 2012-10-12 11:47:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1051 Implement proper fallback cascade
1053 Try in order cached svg, cached bitmap, user png, user svg, default svg.
1055 2012-10-12 11:06:06 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1059 2012-10-12 10:45:29 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1060 Install svg pieces in themes/default
1062 The svg pieces are installed with the XBoard data in the directory
1063 .../xboard/themes/default . A new option -fallbackPieceImageDirectory
1064 is added, and is configured in the master settings file to point to
1065 these pieces. This options, which replaces -svgDirectory, is volatile,
1066 and the menu control to set it is removed. The -pngDirectory option
1067 is renamed to -pieceImageDirectory (-pid).
1069 2012-10-12 10:02:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1070 Remove bitmaps from project
1073 2012-10-12 09:55:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1074 Install the wood textures as png
1076 The xboard.conf has to be edited to set these as default textures,
1077 in stead of the .xpm files.
1079 2012-10-12 09:50:31 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1080 Add hatched board texture
1082 A png file with hatching is added, so it can be used for dark squares
1083 in a monochrome theme. It is installed in a new data directory
1084 .../xboard/themes/textures.
1086 2012-10-11 22:21:06 -0700 Arun Persaud <arun@nubati.net>:
1087 added a black and white theme to replace the mono option
1090 2012-10-11 20:56:42 -0700 Arun Persaud <arun@nubati.net>:
1091 added SVGs to dist files in automake
1094 2012-10-11 19:44:22 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1095 Fix exposure of atomic captures
1097 The grid lines had to be repaired too, so damage marker 2 had to be used.
1099 2012-10-11 19:13:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1100 Fix animation with textures off
1102 The blank square was not shifted to (0,0) when drawing the animation buffer.
1104 2012-10-11 19:08:49 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1105 Fix 1-pixel offset of grid lines on some cairo implementations
1108 2012-10-11 09:51:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1109 Solve odd lineGap problem
1111 Not all cairo versions seem to round the same when an odd-width line
1112 is to be drawn at integer coordinates. So now we explicitly ask it
1113 to be drawn centered on half-odd-integer coordinates.
1115 2012-10-09 18:52:43 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1116 Add -trueColors option
1119 2012-10-09 14:56:16 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1120 Always render svg pieces anew on size change
1122 The svg pieces are now unconditionally rendered to supply the pngPieceImage
1123 master source otherwise read from png file. This is then fed into the
1124 original png code (so that if for some reason it fails, we fall back on png
1125 pieces, and finally on built-in pixmaps).
1127 2012-10-09 14:06:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1128 Fix rsvg version in configure.ac
1131 2012-10-08 19:54:19 -0700 Arun Persaud <arun@nubati.net>:
1132 initial svg rendering
1135 2012-10-08 18:34:05 -0700 Arun Persaud <arun@nubati.net>:
1136 added cairo and librsvg to configure process
1139 2012-10-08 18:32:55 -0700 Arun Persaud <arun@nubati.net>:
1142 converted from inkscape SVG to plain SVG before adding
1144 2012-10-10 21:19:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1145 Adapt Eval Graph code to new drawing system
1147 The eval graph now triggers an expose after drawing, and gets its size
1148 from the Option fields.
1150 2012-10-10 20:37:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1151 Fix expose requests seek graph
1154 2012-10-10 20:07:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1155 Make draw handle for board globally available
1158 2012-10-10 19:45:39 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1159 Let expose requests pay proper attenton to widget
1161 So far, expose requests were always assumed to be for the board widget,
1162 preventing display of the labels.
1164 2012-10-10 18:45:59 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1165 Fix initial display of logos
1167 The logos were selected and printed during the initialization,
1168 before the main event loop was started. So the expose events during
1169 widget creation, which created the drawing surfaces, were only processed
1170 after the initial drawing of logos, so that there was nothing to draw on!
1172 2012-10-10 17:25:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1173 Fix alignment of highlight expose
1176 2012-10-10 17:19:52 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1180 2012-10-09 13:57:40 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1181 Make expose handler generic
1183 The Graph Option now returns two handles in hitherto unused fields of its
1184 Option struct: Option.choice is a cairo handle of a memory buffer the user
1185 must draw to, while Option.textValue is the handle to the widget.
1186 Expose events copy the memory buffer to the display for the exposed area.
1187 A routine DrawExpose() is supplied to let the user generate expose events.
1189 2012-10-06 21:30:59 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1190 Reload piece images when pngDirectory is changed
1192 The OK function of the board options dialog now tests for a change
1193 in pngDirectory and passes a parameter to InitDrawingParams to tell
1194 it to destroy the old images. This cause a reload on scaling the pieces.
1196 2012-10-06 20:16:54 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1197 Suppress redraw during sizing
1200 2012-10-06 20:10:18 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1201 Fix bug in resize trigger
1203 Even if the square size does not change, the window has to be shrunk
1204 back to fit the board.
1206 2012-10-06 19:54:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1207 Make Piececolor options work on png pieces
1209 The scaled, antialiased bitmaps are now colored according to the option
1210 settings. This is done by decomposing every pixel in a white, black and
1211 transparency component, which is possible because the opacity is
1212 directly give in the alpha channel, and black originally was a hard zero.
1213 So what you se in the red channel must be white (as the original white
1214 was #FFFFCC), and the rest of the opacity must be due to black.
1215 The color to be replaced (white for the white pieces, black for the black
1216 pieces) is then replaced by the original weight of this color times the
1217 color from the option.
1219 2012-10-06 17:53:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1220 Plug resource leak on rezising with pixmaps
1223 2012-10-06 16:19:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1224 Fall back on built-in pixmaps if png pieces unreadable
1227 2012-10-06 14:21:11 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1228 Do coordinate text alignment with cairo
1231 2012-10-06 13:40:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1235 2012-10-06 12:14:16 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1236 Clean up drawing code
1238 Now all routines only draw through cairo, the destination surface can
1239 be passed to them, making it possible to do the duplicate drawing
1240 to the memory board image in a cleaner way.
1242 2012-10-06 11:37:20 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1243 Check in draw.c, draw.h
1246 2012-10-06 11:26:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1247 Remove all bitmap & pixmap drawing
1249 All Xt code for drawing the board is now removed, as are the
1250 -pixmapDirectory and -bitmapdirectory option. This version is now
1251 completely dependent on cairo for handling of all graphics anywhere.
1252 (The build-in pixmaps are still left, though, for later use as an
1253 alterative cairo source when no png files are found.)
1255 2012-10-06 10:29:06 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1256 Separate off drawing routines from xboard.c
1258 A new source file draw.c is created to hold all code associated with
1259 board drawing. The routines for loading bitmaps and creating colors
1260 were left in xboard.c, though, as they are also used for handling
1261 icons and colors of widgets.
1263 2012-10-05 19:53:04 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1264 Fix erasing dots in seek graph
1266 The cairo dots were just a little bit bigger than the old ones, so they
1267 were not properly erased, but left a remnant.
1269 2012-10-05 19:25:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1270 Cleanup CairoOverlayPiece
1273 2012-10-05 19:22:34 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1274 Draw arrow also on backup image
1277 2012-10-05 19:16:30 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1278 Fix highlight clearing
1281 2012-10-05 18:59:30 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1282 Remove acceleration trick
1285 2012-10-05 18:54:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1286 Implement variant-dependent png piece symbols
1289 2012-10-05 18:42:51 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1290 Fix clearing of markers dots with promo popup
1293 2012-10-05 18:32:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1294 Also render coordinates to backup board
1297 2012-10-05 18:30:35 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1301 2012-10-05 18:29:13 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1302 Let cairo also do evenly colored squares.
1305 2012-10-05 17:56:43 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1306 Make dragged piece for excluding moves transparent
1309 2012-10-05 17:42:18 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1313 2012-10-05 17:40:55 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1314 Redo coordinate / piece-count printing ith cairo
1317 2012-10-05 15:40:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1318 Also use cairo on slave board
1320 With dual-board observing the drawing should be redirected to the
1321 slave board, so SwitchWindow should also switch the xlib-surface to
1322 one for the slave window.
1324 2012-10-05 15:12:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1325 Cure flashing of piece on from-square
1327 In a drag-drop move the piece was flashed on the from square after the
1328 user dropped it on the to-square, because highlights were set before the
1329 move had updated the board. And highlighting with arrow can cause a redraw
1330 of the last board. Same with setting or clearing marker dots.
1332 2012-10-05 14:20:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1333 Specify proper condition for using cairo animation
1336 2012-10-05 14:07:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1337 Allow resizing of board window
1339 In full png mode the size of the board window is no longer locked.
1340 After resizing, the square size is calculated as the largest one that
1341 would fit the window, and the window is then shrunk around it. To prevent
1342 excessive redrawing during sizing, the redraw is delayed by putting it
1345 2012-10-05 10:41:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1346 Switch to using 64x64 png images
1348 The bitmap scaling works better when the needed factors are not too large,
1349 as the svg rendering's anti-aliasing did not blur more than 1 pixel.
1350 So after shrinking too much the images are not effectively anti-aliased
1353 2012-10-05 10:16:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1354 Maintain in-memory copy of the board image
1356 As reading back from the xlib-surface proves incredibly slow (cairo probably
1357 converts the entire image from Xt format to cairo format when we set it
1358 as a source, even though we only want to read a few dozen pixels), we now
1359 keep an exact copy of the board image as a cairo bitmap in memory. This
1360 restores the speed of the animation, but unfortunately leads to awful code.
1362 2012-10-04 22:15:05 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1363 Do animation with cairo
1365 Unfortunately this is incredibly slow.
1367 2012-10-04 18:36:08 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1368 Allow back-texture files to be PNG, (drawn with cairo)
1371 2012-10-04 15:10:37 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1374 A new directory with 256x256 png piece images is added to the source tree.
1376 2012-10-04 15:01:05 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1377 Add mode to draw PNG piece images through cairo
1379 The PNG images have to be supplied as files in a -pngDirectory (a new
1380 option) with a 256x256 bitmap. They are then scaled by cairo to the
1381 desired square size. This does not work very well for the smaller sizes.
1383 2012-10-03 14:45:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1384 Redo marker dots with cairo
1387 2012-10-03 14:27:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1388 Redo highlights with cairo
1391 2012-10-03 14:07:37 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1392 Make convenience routine SetPen globally available
1394 The routine to set a pen as specified by a color string that was used
1395 in xevalgraph is moved to xboard.c, where there also is lots of demand
1396 for it. The arrow drawing now uses it for setting the highlightSquareColor.
1398 2012-10-03 12:28:30 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1399 Redo grid with cairo
1402 2012-10-03 12:00:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1403 Redo arrow highlighting with cairo
1406 2012-10-03 11:20:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1407 Redo seek graph with cairo
1409 New front-end services DrawSeekOpen() and DrawSeekClose() have been
1410 added, and are called from the back-end to enclose any drawing activity.
1411 In WinBoard these had to be defined as dummies.
1413 2012-10-02 15:31:26 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1414 Redo logos with cairo
1416 The logos must now be .png files, and are internally handled as their
1417 filenames. (So no preparation of a drawable from it at startup.)
1418 Cairo allows them to be scaled to the requested logoSize.
1420 2012-10-02 14:02:23 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1421 Fix Eval Graph resolution problems
1423 Anti-aliasing had to be switched off to get a crisp graph. A second problem
1424 was that the dashed lines were drawn in both directions, with interfering
1427 2012-10-02 10:54:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1428 Redo Eval Graph drawing with cairo
1431 2012-10-21 10:21:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1432 Fix button-border-width bug in monoMode
1434 The kludge of signalling we are dealing wih a button rather than a label
1435 was wrongly implemented in case of momoMode.
1437 2012-10-21 10:14:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1438 Reserve more space for button bar
1440 In some board sizes the button bar was wider than the code guessed,
1441 so the window width would be determined by the message + buttons row rather
1444 2012-10-21 11:24:18 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1445 Fix WinBoard compile errors
1448 2012-10-13 09:33:39 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1449 Fix non-NLS compile error for XFontStruct
1452 2012-10-12 12:04:17 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1453 Fix browsing for path
1455 A pathname was still prefixed with the cuurent directory.
1457 2012-10-07 21:00:10 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1458 Use Pause state in AnalyzeMode to imply move exclusion
1460 The pause state was not used in AnalyzeMode so far. Now it is used to
1461 imply all entered moves are for exclusion/inclusion.
1463 2012-09-30 18:55:13 -0700 Arun Persaud <arun@nubati.net>:
1464 new version number for developer release
1467 2012-09-30 22:16:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1468 Fix broken -ics and -cp options
1470 The patch to specify engines and ICS by nickame broke the use of the
1471 regular options to do this, because they could also reset them. Now
1472 this is fixed by only setting them (through |= in stead of =).
1474 2012-09-30 22:01:52 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1477 The description of exclude-moves, multi-game ananalysis and duo-analysis
1480 2012-09-30 10:07:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1481 Resolve conflict between -mps and -inc options
1483 The age-old problem that a persistent valid -inc value will cause -mps
1484 to be ignored is solved by the kludge of storing these two as a single
1485 option (-mps) in the settings file, and declaring the other (-inc) volatile.
1486 The range of negative numbers (invalid as -mps value) was available for
1487 that, and now is used to store the negated value of -inc in msec.
1488 For backward compatibility, specification of -inc causes interpretation
1489 of -mps in the old way. The forcing of -inc to -1 in the master settings file
1490 could be safely removed because of this change, so that the time increment
1491 now is a persistent option.
1493 2012-09-29 23:13:04 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1494 Allow entry of fractional increment in WB time-control dialog
1496 The numeric edit is changed to a general text edit, and code is added
1497 to convert the text it contains to and from float, with proper error check.
1499 2012-09-29 23:05:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1500 Preconfigure -icsNames in xboard.conf
1502 Although XBoard has no startup dialog with an ICS combobox, the -icsNames
1503 option is now used to select lines from with the -is option, and in
1504 interpretation of positional arguments. The most common ICS are configured
1505 together with a short nickname, so that commands like "xboard fics" will work.
1507 2012-09-29 22:58:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1508 Allow ICS nickname as positional argument
1510 If an argument is encountered that is not preceded by an option name,
1511 it is now first checked if it corresponds to the nickname of an ICS
1512 in -icsNames. If so, it is assumed to be the value of an -is option,
1513 selecting -ics mode with that ICS and all the options installed with it.
1515 2012-09-28 20:28:05 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1516 Cure some sick behavior in XBoard Engine Output right-clicks
1518 When a PV-walk is in progress, the PV is highlighted by selecting it,
1519 and this focuses the attention of the scroll bar on it, so it remains in
1520 view. But after release, that line was kept in view, rather than scrolling
1521 back to the top of the window (where the header line bust be available
1524 2012-09-28 13:28:17 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1525 Allow Analyze Game to auto-step through entire game file
1527 If the game index is set to auto-increment (-lgi -1), the Analyze Game
1528 function will automatically load the next game of the current game file
1529 (starting to auto-play/annotate that) when the end of the current game is
1530 reached. This flushes the annotated game if auto-saving was set,
1531 so that eventually all games in the file will be annotatd and saved.
1532 The game index is automatically set to auto-increment when we load
1533 a file while in Analyze Game mode, but switching this mode on while a game
1534 is already loaded will stop at the end of that game, as usual (if -lgi was
1535 not explicitly set).
1537 2012-09-28 13:24:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1538 Let second engine move in lockstep during dual analysis
1540 When the second engine is also analysing (as indicated by its stat variable
1541 second.analyzing), we send all moves / undos / positions / in&excludes that
1542 go to the first engine also to second.
1544 2012-09-27 19:07:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1545 Allow second engine to analyze too
1547 Clicking the Analysis menu when analysis is already in progress will
1548 now toggle the secon engine to analyze the same position. For now,
1549 this lasts only until the position changes (or you leave analyze mode),
1550 after which the second engine is always switched off, and the Engine
1551 Output window returns to single pane. Each pane now has its own header
1552 line; the exclude header is suppressed in the second pane.
1554 2012-09-27 18:11:23 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1555 Add options -fe, -se, -is to load installed engines/ics from list
1557 The volatile string options -fe, -se ('first/second engine') load the first
1558 and second engine of the given nickname in the -firstChessProgramNames list,
1559 including all options that were installed with it (similar to when in
1560 WinBoard the that engine line had been selected through the Startup Dialog's
1561 combobox). The option -is is similarly used to retrieve the line for an
1562 ICS in the -icsNames list.
1564 2012-09-27 18:02:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1565 Add check on validity of tourney participants
1567 Before allowing OK of the Tournament Options dialog, it is now checked
1568 whether all participants (which are given as nicknames) can be found
1569 in the list of installed engines, so that no problems will occurr with
1570 non-existing engines during the tourney (if typos crept in after hand-
1573 2012-09-25 16:21:42 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1574 Implement --help option
1576 The list of options is printed before exiting. Some attempt is made
1577 to do it in a nice way.
1579 2012-09-23 20:10:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1580 Implement variant seirawan in -serverMoves option
1582 Write the gating moves such that the ChessLive! viewer will understand them.
1584 2012-09-23 20:05:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1585 Workaround for FICS bug
1587 FICS does not properly understand SAN, and thinks bxc3 can be a Bishop move.
1588 This broke 'Upload to examine', because that uploaded in SAN. In case the
1589 SAN starts with Bx or bx, it now uses long algebraic (with = before the
1592 2012-09-20 18:17:55 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1593 Define XOP mime type for XBoard
1595 Supply a white-knight icon for this mime type, called application/x-xboard-opt,
1596 and a sesktop file to associate it with running XBoard with this settings file.
1598 2012-09-20 17:24:29 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1599 Pay attention to extension of 'positional' arguments
1601 An argument without preceding option name was assumed to be an -lgf argument.
1602 This patch still does that by default, but if the argument ends in .fen, .epd,
1603 .trn, .ini or .xop it is considered an -lpf, -tf or -opt argument.
1604 In addition, an implied -lpf or -lgf argument also imply the option -viewer,
1605 which inserts the -viewerOptions string into the command line, and proesses it
1606 as options. A new option -tourneyOptions is similarly inserted for an implied
1607 -tf argument. These strings should contain all options needed to start XBoard
1608 fully configured as game viewer or tourney playing agent on the mentioned file.
1610 2012-09-20 15:29:42 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1611 Let windows stick to right display edge (WB)
1613 Auxiliary windows docked to the board window from below or to the right, which are
1614 pushed out of view when the board window resizes, will be trimmed to just touch the
1615 diplay edge (if sufficient width or height remains). When the board window shrinks,
1616 auxiliary windows touching the edge will be resized so they remain touching it.
1618 2012-09-20 15:20:36 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1619 Round board size to one where piece images available (WB)
1621 When using built-in bitmaps, in sizes where unorthodox pieces are needed, but not
1622 available, the size is temporarily rounded to one of the sizes where they are.
1624 2012-07-03 17:21:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1625 Fix bug in Edit Position
1627 Due to = in stead of == the variant was always set to S-Chess in
1630 2012-08-28 21:24:51 -0700 Daniel Macks <dmacks@netspace.org>:
1631 bug #37210: Mishandling of X11 -I flags (tiny change)
1633 AP: applied patch from bugtracker and added one missing 'save_cppflags="$CPPFLAGS"'
1635 2012-06-02 14:31:18 -0700 Arun Persaud <arun@nubati.net>:
1636 bug #36229: changed ICS_* from define to enum
1639 2012-05-28 13:58:00 -0700 Arun Persaud <arun@nubati.net>:
1640 bug #36229: changed STATE_* from define to enum
1642 enabling better compiler checks
1644 2012-05-28 13:50:50 -0700 Arun Persaud <arun@nubati.net>:
1645 bug #36229: changed PEN_* from define to enum
1647 This should allow better checks by the compiler
1649 2012-05-28 13:01:15 -0700 Arun Persaud <arun@nubati.net>:
1650 fix bug #36228: reserved identifier violation
1652 variables and macro names beginning with _ are renamed to XB_. More consistent naming of include guards.
1653 See link in bug report.
1655 2012-05-28 12:36:37 -0700 Arun Persaud <arun@nubati.net>:
1656 Updated German translation
1659 2012-04-30 20:06:00 -0700 Arun Persaud <arun@nubati.net>:
1660 new version number for developer release
1663 2012-04-24 11:23:04 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1664 Decapitalize promoChar in move parser
1667 2012-04-23 14:12:10 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1668 Keep track of virginity of back-rank pieces in variant seirawan
1670 The forelast rank of the Board array is now used in VariantSChess to
1671 contain flags that indicate virginity of the back-rank pieces, one bit
1672 for white, the other for black. Legality checking of gatings now makes
1673 use of this info. FENs mention all virgin pieces not implied by castling
1674 rights in the castling field, by printing the corresponding file IDs,
1675 as long as holdings are non-empty. The FEN reader now also understands
1676 this format. EditPositionDone fakes virginity for all pieces that are
1677 on their starting square.
1679 2012-04-17 19:49:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1680 Suppress clear-board message after pasting FEN
1682 The message field is now always cleared when you leave EditPosition mode.
1684 2012-04-17 19:45:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1685 Fix faking of castling rights after editing position with holdings
1687 The queen-side rook was always imagined at X=0, which is in the holdings
1688 when these exist, so that Q-side castling in such games was never allowed
1691 2012-04-20 10:29:36 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1692 Fix WB Engine Settings window
1694 The listbox patch has broken this window, by making it only list the
1695 first option of the engine, by switching to the next column based on a >=
1696 test rather than == test. Fixed by using 1000 as invalid value for the
1697 break point, rather than -1.
1699 2012-04-20 00:01:08 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1700 Fix key binding of DebugProc
1702 The name used for binding was DebugProc, while the ite was named Debug.
1704 2012-04-16 20:51:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1705 Fix ICS Text Menu popup
1707 The space for the option names needed to be allocated.
1709 2012-04-16 20:37:06 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1710 Fix disabling of Load Engine menu
1713 2012-04-15 22:53:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1714 Port chat boxes to XBoard
1716 A new menu item Open Chat Window is added to the View menu. It opens a
1717 window that can handle 5 chats. A row of buttons on top selects which is
1718 the foreground chat partner, to which we type, and whose incoming messages
1719 will be displayed in the memo. The leftmost 'button' is not really a button,
1720 but a text edit, and the active partner is displayed there (so it can be
1721 altered). Selecting another chat partner through a button, moves that partner
1722 to the text-edit, and reshuffles the buttons. Incoming messages in a chat
1723 that is not foreground make the corresponding button color orange.
1725 2012-04-16 20:27:08 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1726 Allow chaining of single-line text-edits to top
1728 For the benefit of the chat window, a text-edit plus leading description
1729 can now also be chained to the top edge of a dialog. The chaining of the
1730 (degenerate) multi-line ICS Input Box and Move Type-In was entirely to the
1731 bottom, which has now been corrected.
1733 2012-04-12 09:30:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1734 Add logo widgets in main board window
1736 New options -logoSize and -logoDir are added. The former enables logo display,
1737 when non-zero and not too big. The latter is used by -autoLogo. The options
1738 -firstLogo and -secondLogo also work. Problem is that the clock height
1739 is larger than the logo height, and for now a nasty trick in GenericPopUp
1740 is used to position the next element (message field) w.r.t. the clocks,
1741 rather than the last element of the row above (the logo): in case of a
1742 SAME_ROW Graph element, 'last' is kept at the previous element.
1744 2012-04-19 10:48:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1745 Fix crash on time forfeit with -st option
1747 When fixed time per move was set from the command line, the time-control
1748 strings were not set. This let to a crash when an engine forfeited.
1749 The GetTimeQuota function is now made resistant to a NULL pointer here.
1751 2012-04-19 10:39:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1752 Solve WinBoard name clashes, fix zippy-analyze menu graying
1754 Some of the function names used in the refactored X11 front-end collided
1755 with Windows system names from winboard.h, or with names of internal routines
1756 in WinBoard front-end files (so they could not be declared in frontend.h).
1757 These were renamed. Some prototypes in engineoutput.h contained X11 types,
1758 and they were moved to xboard.h.
1759 In addition, two menu-item names were corrected to two-part names.
1761 2012-04-18 12:00:43 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1762 Offer primitive paging in file browser
1764 If there are more than 1000 files that would have to be displayed,
1765 the number will be limited to 999, and a 'next page' entry will appear
1766 at the bottom. Clicking that will give you the next group.
1767 This is an emergency measure only, as it interferes with sorting
1768 (grouping is based on order inside the directory, i.e. kind of arbitrary,
1769 and sorting is only done within a group.) There is no such thing for the
1770 folder list yet. There is no way to go back to a previous page, other
1771 than closing and re-opening the browser, or selecting another file type.
1773 2012-04-18 11:16:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1774 Add pixmap as file type known to browser
1776 Users can browse for a pixmap to set the board texture.
1778 2012-04-17 15:45:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1779 Fix warning about signedness
1781 Note: the promoChar in ExcludeMoves was explicitly defined to make
1782 sure the kludge promoChar = -1 for indicating best move works. But it
1783 should be equivalent to casting the promoChar to (signed char) just
1784 before the comparison.
1786 2012-04-17 15:44:15 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1787 Fix warnings about character index
1790 2012-04-17 15:37:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1791 Move ManProc to xboard.c
1793 It calls ManInner, which requires X11 data types, even if the values are NULL.
1795 2012-04-17 15:27:21 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1796 Move FileNamePopUp to dialogs.c
1799 2012-04-17 15:15:03 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1800 Fix readout of numeric combobox
1802 As currently no numeric comboboxes are used, this bug was silent.
1804 2012-04-17 15:10:54 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1805 Shuffle prototypes to correct header, or add them there
1808 2012-04-17 14:15:15 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1811 This function could crash when called with ann argument that did not
1812 contain a period, while the idea was that it should handle this as if the
1813 item is in noMenu (for user-specified key binding to non-menu funtions).
1815 2012-04-16 19:43:03 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1816 Fix click-click under-promotion animation save
1819 2012-04-17 11:02:39 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1820 Define TOPLEVEL in winboard.c
1823 2012-04-17 10:59:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1824 Add two new strings to WinBoard language file
1827 2012-04-17 10:51:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1828 Fix second-engine variant test
1830 The test whether the second engine supports the selected variant took place
1831 before the second engine was loaded, thus always coming to the conclusion
1832 that the variant was not supported, and aborting the TwoMachines command.
1833 The test is now moved to after second-engine loading (but before its
1834 initialization, where non-supporting would become a fatal error).
1836 2012-04-16 12:11:09 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1837 Fix clearing of ICS input box after send
1840 2012-04-16 19:08:10 -0700 Arun Persaud <arun@nubati.net>:
1841 enable -Wall -Wno-parentheses for all compilers that understand them
1844 2012-04-16 13:18:37 +0200 Byrial Jensen <byrial@vip.cybercity.dk>:
1845 Remove 5 unused variables from zippy code
1848 2012-04-16 13:14:06 +0200 Byrial Jensen <byrial@vip.cybercity.dk>:
1849 Remove unused static function ShowTC
1852 2012-04-16 13:10:58 +0200 Byrial Jensen <byrial@vip.cybercity.dk>:
1853 Remove unused static function MenuBarSelect
1856 2012-04-16 13:07:01 +0200 Byrial Jensen <byrial@vip.cybercity.dk>:
1857 Remove unused variable first_entry from function find_key
1860 2012-04-16 13:01:09 +0200 Byrial Jensen <byrial@vip.cybercity.dk>:
1861 Remove unused variable tm from function SaveGamePGN
1864 2012-04-16 12:56:46 +0200 Byrial Jensen <byrial@vip.cybercity.dk>:
1865 Remove unused variable delayedKing from function QuickScan
1868 2012-04-16 12:52:57 +0200 Byrial Jensen <byrial@vip.cybercity.dk>:
1869 Remove unused variable pdown from function UserMoveEvent
1872 2012-04-15 04:25:59 +0200 Byrial Jensen <byrial@vip.cybercity.dk>:
1873 Change some double literals to floats.
1875 To avoid unnecessary implicit promotions of float variables to double.
1877 2012-04-15 11:12:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1881 2012-04-14 22:43:03 +0200 Byrial Jensen <byrial@vip.cybercity.dk>:
1882 Translate "NPS" also in engine output window
1885 2012-04-14 16:19:34 -0700 Arun Persaud <arun@nubati.net>:
1886 removed unused variables (-Wunused-variable)
1889 2012-04-14 15:37:05 -0700 Arun Persaud <arun@nubati.net>:
1890 added m4 directory to search path for aclocal. As suggested by Michel Van den Bergh
1893 2012-04-14 23:21:56 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1894 Fix Eval Graph scale in drop games
1897 2012-04-14 23:16:29 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1898 Fix ArrowDamage out-of-bounds access on drop moves
1901 2012-04-14 21:33:49 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1902 Implement automatic partner observe
1904 Starting a game, or starting to observe one, now automatically issues a
1905 'pobserve' command if dual-board is switched on, so that the partner game
1906 will pop up in the secondary board (assuming it is bughouse).
1907 The secondary board now displays the players in the title. (This (lightly)
1908 breaks WinBoard again.) When the primary game ends, the secondary board
1909 closes automatically. Initial sizing of the board is repaired, and now uses
1910 the actual current board size, rather than the initial size of the main board.
1912 2012-04-14 15:43:30 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1913 Fix crash due to empty PV
1915 Reception of a stat01 command before the first PV could cause a crash,
1916 as apparently the parser cannot handle this.
1918 2012-04-14 13:27:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1919 Suppress testing for availability in bughouse drops
1921 Give up on testing legality of bughouse drop moves; this only causes problems,
1922 because the move list sent by the ICS is not accompanied by holdings updates.
1923 So XBoard parses it thinking the holdings are empty, making every drop move
1924 an ImpossibleMove. Bughouse can only be played on ICS, and we might as well
1925 trust the ICS that it will only pass us legal moves. A user should not be
1926 able to enter illegal drops; unavailable pieces cannot be grabbed from the
1927 holdings, and typing is diverted to the ICS directly (which would reject the
1928 illegal drop without XBoard even knowing about it).
1929 Also improve switching to bh/zh, based on drop move in initial board.
1931 2012-04-14 09:11:22 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1932 Fix some compile errors / warnings
1935 2012-04-13 19:06:17 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1936 Fix promotionPopDown on new move entry
1938 The promotion popup is non-modal, and old XBoard versions popped it down
1939 as soon as the user clicked the board, so he could just enter a new move
1940 to abort the promotion. This was broken in the new version, because the code
1941 to do the PopDown and abort in HandleUserMove had not been ported.
1943 2012-04-13 18:38:51 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1944 Use in-place sweep-selection for click-click under-promotion
1946 With detour under-promotion a piece cycles through all possible choices
1947 during backwards dragging. But in a click-click move there is no dragging.
1948 This used to be solved by letting the second click start a drag event of
1949 the default promotion choice, which you could accept by immediately
1950 releasing the mouse button, or drag around to change it first.
1951 The dragging in this case seemed a little unnatural, because the to-square
1952 was already indicated by the down-click. So it has been changed now to the
1953 promo choice appearing on the down-clicked to-square, followed by
1954 EditPosition-like sweep-selection on that square when one wants to under-
1955 promote. The move is always accepted no matter where the up-click takes
1956 place, except when it takes place on the from-square (which offers a last-
1957 resort abort possibiliy).
1958 Note that click-click promotion is essential in variants where it is not
1959 obvious from the from-square alone that a promotion is imminent, but where
1960 it depends on the to-square. (Such as Shogi.) There drag-drop detour under-
1961 promotion is not possible.
1963 2012-04-13 16:05:16 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1964 Improve arrow drawing
1966 The arrow is now erased together with the border highlights, by marking
1967 the damage it did, and then doing a selected redraw of the board to let
1968 the damaged square be re-drawn. Highlights of a previous move are now
1969 cleared on the down-click that selects a new piece, so there never is an
1970 arrow to infavorably interact with animation of dragging.
1972 2012-04-13 14:57:15 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1973 Also do selective redraw with showTargetSquares on
1975 The XBoard DrawPosition now also keeps track of the previous marker state,
1976 and redraws squares for which thi shas changed. As a result, the routine
1977 MarkTargetSquares does no longer have to force to complete redraw.
1980 2012-04-13 00:33:28 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1981 Fix click-click sweep promotions to empty square
1983 These did not work, because DragPieceBegin would fail on an EmptySquare.
1985 2012-04-12 23:58:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1986 Move clearing of target squares to after drag end
1988 A dragged piece that would partly overshoot its destination into a square
1989 with a marker would effectively protect that marker from erasing, when the
1990 erasing was done before the piece was released, because redrawal after the
1991 move only would draw the target square. (Unlike erasing, which forces a full
1994 2012-04-12 23:49:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1995 Fix double promotion popup
1997 Only the up-click of a click-click move gives a promotion popup now.
1999 2012-04-12 23:32:28 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2002 The new GenericPopUp did not like it if the first button had 'SAME_ROW' set.
2004 2012-04-12 17:28:32 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2005 Allow clearing of marker dots in any mode
2007 There might already be dots when you change to a mode where there should
2008 be none, and you don't want them to stay on forever in that case...
2010 2012-04-12 17:00:55 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2011 Fix redraw of secondary board on flipping view
2014 2012-04-12 10:30:21 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2015 Let clocks of secondary board count down
2017 The back-end now remembers what is the active clock, and the time left on it.
2018 This is then decremented and updated together with the clocks of your own
2019 game, using the partnerUp flag to divert the clock display to the secondary.
2021 2012-04-12 09:47:43 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2022 Fix 3 forgotten symbolic widget references
2025 2012-04-11 19:24:36 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2026 Add sound files to browser menu
2029 2012-04-11 13:04:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2030 Add New Directory button to file browser
2033 2012-04-11 09:54:51 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2034 Detect engine exit during startup
2036 The case where engine startup failure does not result in a fatal protocol
2037 message, like "No such file", but where it simply exits, is now also covered.
2039 2012-04-10 22:55:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2040 Suppress popup for fatal error after tellusererror
2042 For cooperating better with Polyglot, and allowing more to-the-point
2043 error messaging, the (awful) default message will be suppressed if the
2044 dying engine already provided an explanation for its demise to the user.
2046 2012-04-10 20:28:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2047 Fix Engine Output icon heights in international versions
2049 The text in a label option could not be an empty string, or it would be
2050 'translated' to something of enormous size. So it is set to a space now.
2052 2012-04-10 20:21:56 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2053 Fix internationalization
2055 The internationalization was broken by moving the XtSetLanguageProc
2056 to behind 'bindtextdomain'.
2058 2012-04-10 20:03:46 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2059 Make reference to board widgets symbolic
2062 2012-04-10 18:39:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2063 Don't strip path from engine name if directory given
2066 2012-04-10 17:54:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2067 Fix vertical chaining of Buttons and browser ListBoxes
2070 2012-04-10 15:53:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2073 The 'narrow search' modification had broken auto-play, because all selected
2074 games were marked as matching position 0, so that they would all start in
2075 thr opening position.
2077 2012-04-10 13:30:44 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2078 updated po/pot files
2081 2012-04-10 11:54:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2082 new version number for developer release
2085 2012-04-10 13:22:40 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2089 2012-04-10 13:21:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2090 Fix Makefile EXTRA_DIST
2093 2012-04-02 17:53:40 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2094 Use Ctrl key in EditPosition mode to copy pieces
2097 2012-03-28 23:51:28 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2098 Fix bug in FRC castling for position search
2100 In FRC it is essential that both pieces are taken off the board before
2101 any of them is put back, lest they obliterate each other.
2103 2012-03-28 12:25:20 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2104 Fix bug on loading engine
2106 A newly loaded engine was put at the end of the game, rather than at the
2107 current position, (which is required in EditGame mode).
2109 2012-04-06 17:02:21 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2110 Add 'Narrow' function to position search
2113 2012-04-06 10:52:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2114 Reorganize main() a bit
2116 The font stuff goes into a separate routine, and the X11 stuff is
2117 moved backwards as far as possible.
2119 2012-04-04 21:55:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2120 Give the dual-board option a separate board window
2122 The second board window pops up whenever an alien board is received
2123 during your game. Moves in it are highlighted by an arrow, irrespective
2124 of the 'Highlight with Arrow' setting. The clocks are displayed, but do
2127 2012-04-05 11:23:03 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2128 Port engine grouping to Match Options dialog
2131 2012-04-05 15:18:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2132 Change default directory in Load Engine to "."
2135 2012-04-05 10:49:56 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2136 Port grouping to XBoard Load Engine Add highlight to Load Engine grouping
2139 2012-04-06 17:19:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2140 Fix default file types for browse buttons
2143 2012-04-03 09:14:44 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2146 Redo file browser with GenericPopUp
2148 This had to solve quite some problems, because it wanted to use a ComboBox
2149 option while a transient dialog could be up, was a non-engine dialog
2150 while an engine dialog is up, and XRaiseWindow does not work properly.
2151 Sorting is done alphabetically, or for digit groups by numeric value.
2153 2012-04-02 14:43:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2154 Use ListBox in stead of ComboBox in Match-Options dialog
2157 2012-04-02 14:09:15 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2158 Use ListBox in stead of ComboBox in Load Engine dialog
2160 Make Load Engine listbox sensitive to double-clicking
2162 2012-03-26 17:06:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2163 Add message about enabling in New Variant dialog
2166 2012-03-31 20:27:20 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2167 Move LoadGamePopUp to menus.c
2170 2012-03-31 20:25:22 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2171 Move DisplayMessage to dialogs.c
2173 Use the wrapper SetWidgetLabel to make it back-end.
2175 2012-03-31 15:23:30 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2176 Fix switching debug option during session.
2178 Switching on debug mode during the session did not create the requested
2181 2012-03-31 15:22:57 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2182 Correct texi file for use of .Xresources
2185 2012-04-02 19:19:30 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2186 Fix recent-engines menu
2188 A new primitive to create an item in a given menu was added to do this.
2190 2012-03-31 10:54:22 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2191 Switch back two two-part menu names
2193 The menu code is again completely changed; a handle field is added
2194 to the MenuItem tables to store the widget for the item, and this info
2195 is used to alter sensitivity or marking. MenuToNr is replaced by
2196 MenuNameToItem, which looks up the two-level name directly in the
2197 menu tables. Put all currently unused MenuProcs in noMenu table,
2198 so they are available for key binding through the new method.
2200 2012-03-24 18:36:44 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2201 Redo main board window with generic popup
2203 Some of the improvements in GenericPopUp (committed earlier) were added
2204 especiall for this (menu and box Option types), and the commits that used
2205 them to make a fully functional board, listed below, were collapsed into
2208 This uses the new box and menu features of the Generic popup.
2209 Make option table shadow board consistent with refactor
2210 Do main menus in shadow board
2211 The board made by GenericPopUp now also has (functional) menus. The Expose
2212 callback now also uses the new format (passing coordinates).
2213 Use BoxEnd callback to decide about smallLayout
2214 The shadow board now dynamically decides whether it should use smallLayout
2215 positioning of the title-in-window widget, using a callback in the BoxEnd
2216 option for the menu bar: If no reasonable amount of space is left behind
2217 the menu bar, the title is forced under the clocks (smallLayout).
2218 Do some mouse handling on shadow board
2219 Only button 1 events for now. We have to keep track if the button is down!
2220 Connect button 3 to shadow board
2221 For now only for piece and PV manipulation: no context menus yet
2222 Symbolic reference in option formatting
2223 choice <-> textValue xboard.c
2224 Improve expose callback shadow board
2225 Implement context menus of shadow board
2226 This uses the new generic PopUp option
2228 Make mock-up board available through menu item
2229 Make clocks of shadow board sensitive to clicking
2230 Make button bar of shadow board operational
2231 The back-end Event functions are specified as user callbacks directly;
2232 this is not very clean, as they are parameterless, but called with an int
2233 argument. This should have no bad consequences, though.
2234 Switch to using shadow board as main board
2235 The menu marking and enabling had to b switched off for this, as it
2236 only worked on the old menus. Remove HandleUserMove.
2237 Deleting of unused shell variables, clocks to dialogs.c
2238 Move BoardPopUp to dialogs.c
2239 This required passing on fome front-end vars as parameters, and returning
2240 apointer to the option list, to make the handles available in xboard.c.
2241 Simplify InitDrawingSizes
2242 Now that all widgets of the main window are properly chained, there is
2243 no need to resize them when the board format changes: setting a new width
2244 for the shell suffices.
2245 Cleanup some unused Xt Args
2247 2012-03-31 10:53:46 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2248 Remove unnecessary menu unmarking for Edit Tags
2251 2012-03-29 19:09:34 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2252 Split sync-after options in Match dialog into checkbox + label
2254 Now the checkbox texts are highlighted on hovering, we don't want the
2255 explanatory text behind it to be highlighted with it.
2257 2012-03-26 17:12:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2258 Make variant-unsupported-by-second error non-fatal
2261 2012-03-23 20:06:15 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2262 Redo Eval Graph with generic popup
2264 The Graph option of the GenericPopUp is used to implement the Eval Graph.
2265 Compared to the previous implementation, which was drawing directly in the
2266 form widget, the new one has one extra widget layer, but that did not
2267 affect the code anywhere. Adapt eval title to width of eval graph.
2269 2012-03-23 15:17:14 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2270 Redo Engine Output window with generic popup
2272 A new file nengineoutput.c holds the X-independent code. This makes use
2273 of new capablities of GenerciPopup, for having Label widgets on same row,
2274 stacking panes after a Break, and chaining Label and Text widgets.
2276 2012-03-21 23:00:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2277 Redo Game List with generic popup
2279 Check in ngamelist.c
2280 Redo Game List with generic popup
2281 The X-independent code (i.e. almost all) is moved to a new file
2283 Make button in Game List to pop up Game List Options
2284 Fix scrolling game list
2285 Fix popup of existing Game List after loading file
2286 Wheel-scroll game list
2287 Symbolic reference game list
2289 Put format flags with listbox options
2291 2012-03-21 17:58:27 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2292 Redo Game List Options with generic popup
2295 2012-04-05 21:56:52 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2296 Add -dialogColor and -buttonColor options
2298 These only override system defaults if they are non-empty strings.
2300 2012-03-28 15:52:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2301 Add -topLevel option
2303 This persistent Boolean option determines if the auxiliary windows
2304 (Game List, Move List, Engine Output, Eval Graph, Tags and Comment)
2305 use top-level shells (with their own icon on the task bar, and
2306 independently closable). Other dialogs will always use transient shells.
2307 (Also he modal Error and Promotion dialogs, for which the modality
2308 presumably only serves to pop them down without special attention.)
2309 A control for this was added in the General Options dialog.
2311 2012-03-20 15:30:00 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2312 Redo ErrorPopUp with generic dialog
2314 <Enter> keeps popping down error popup.Multiple Error popups remeain tricky;
2315 add comment to describe problem with multiple ErrorPopUps.
2317 2012-03-20 10:22:46 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2318 Redo PromotionPopUp with generic dialog
2320 The dialog is no longer modal.
2322 2012-03-19 21:56:48 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2323 Redo AskQuestion dialog with generic popup
2326 2012-03-19 21:55:58 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2327 Major refactoring of GenericPopUp
2329 Allow more transient dialogs in GenericPopUp
2330 Remove grab from promotion popup
2331 Fix other generic popup over transient popup
2332 To use the generic dialog generator for 'asynchronous' popups (Ask Qustion
2333 or Error popup caused by engine), the currentOptions setting has to be
2334 restored for the combo and checkbox callbacks of the transient to still
2335 work after the asynchronous dialog returns. Note that only transient dialogs
2336 can have check and combo controls.
2337 Make generic calcel button suppressible
2338 Also #define some more symbols for Option.min flags,
2339 and move them to dialogs.h.
2340 Change TypeInProc to general OK handler
2341 The move type-in now has its own option list, to distinguish it from
2342 the ICS input box, and give it its own OK handler. Rather than having
2343 the translation for <Enter> on the text widget call TypeInEvent directly,
2344 we let it call GenericCallback, which calls GenericReadout, which calls
2345 the OK proc, which does the job.
2346 To be able to call GenericCallback from the TypeInProc, the recognition
2347 of OK and cancel buttons had to be changed. This because it was too difficult
2348 to arrange the calling widget had label OK or cancell. So these buttons are
2349 no longer recognized by name, but by the option number passed as client data.
2350 (This solves the problem that a user could not make buttons named 'cancel'
2352 Make Cancel button optional
2353 Fix closing multiple popups of same kind
2354 The GenericCallback figures out its own shell, so all buttons of
2355 multiple dialogs keep working. External calls to PopDown only work
2356 on the lastcreated instance of that kind, though (including those from
2357 the Delete Window button, which can do 'cross-closing'). shellUp is now
2358 a counter, and PopDowns are only prevented when it reaches 0 or the
2359 current shell does not exist. (To know this, PopDown now resets shells[n]
2360 to NULL when is shell is destroyed.
2361 Beware of double PopDowns (through OK procs); they wreck the system.
2362 Fix Delete Window button of multipe ErrorPopUps
2363 The action routine for handling the Delete Window now pays attention
2364 to the shell widget that the system passes to it, and temporarily
2365 replaces shells[n] by it to let PopDown act on the proper instance.
2366 Add ListBox dialog type to GenericPopUp
2367 Fix vert sizing of ListBox
2368 Put listbox widgets in viewport
2369 Put listbox in viewport
2370 Improved xoptions.c support for focussing and listboxes
2371 Fix OK-row button positioning
2372 Let GenericPopUp take parent and modality as arguments
2373 This makes the code a bit more explicit and less kludgy. It also becomes
2374 possible to call the same dialog (e.g. Load Options) from the main menu
2375 and from another dialog (e.g. the Game List).
2376 Support scroll function for generic popup listboxes
2378 Move HighlightWithScroll to xoptions.c
2379 Change scroll algorithm
2380 Add mouse-wheel scroll to generic list boxes
2381 Implement tabbing between text edits
2382 Implement same-row text labels in generic dialog
2383 Allow labels to specify their chaining in generic popup
2384 The opt.min variable is used to specify the chaining: 0xF0 are the bits
2385 for (left, right) chaining of the left side (0xC0) and right side (0x30).
2386 The 0xC bits determine top or bottom chaining of the entire label.
2387 Without anything spcified (0), the chaining is XtRubber.
2388 TextBox options can also specify top-chaining of their top. All this was
2389 needed to allow decent implementation of the Engine Output window with
2390 the generic popup. (Although tags and comment popup ca benefit from the
2392 Let GenericPopUp support a Graph option
2393 The Graph option results in an area where one can draw something. It is
2394 positioned / chained similar to Label options. A handler for expose events
2395 can be specified in the textValue field of the option.
2396 Implement box widgets and menu buttons in GenericPopup
2397 To enhance the capabilities of GenericPopUp such that it could create the
2398 main window, it needs to be able tha packaging of controls into a box widget
2399 (for mennu and button bar). Menu buttons are also required elements
2400 (although they do look a lot like comboboxes?) Option types BoxBegin and
2401 BoxEnd can now be used to bracket a group of controls that will be put
2402 in a box widget. (Cannot be used recursively!) The positioning of the box
2403 is similar to that of a Label, and is specified in the BogBegin option.
2404 The code to shrink the menu buttons to fit is also incorporated, to act
2405 on any box widget: if the BoxBegin option specifies a width, the elements
2406 in it are shrunk to meet the requirement. Otherwise the box just gets the
2407 size of the sum of its children (plus spacings).
2408 Label options can now specify a font, casted into their textValue field.
2409 (This is needed to get the proper size for the clock widgets.)
2410 Implement callback in BoxEnd options
2411 BoxEnd is a pseudo-option, to trigger packing the preceeding ones in
2412 an earlier-opened box widget. In the process it calculates the size of
2413 the box widget (and trims it if a size was specified for it in the
2414 corresponding BoxBegin). The Option.target field of BoxEnd is now
2415 interpreted as a callback, which can be use to take decisions based
2416 on the determined size for the remaining options in the list, before
2417 these are processed b GenericPopUp.
2419 Make a subroutine to set args shared by almost all widgets. Swap meaning
2420 of '1'-bit in option.min flag of Break option, to be consistent with
2421 SAME_ROW interpretation in other option types.
2422 Make option tables consistent with refactored GenericPopUp
2423 The flag for stacking in the Break option needed to be inverted, and
2424 the BoardPopUp needed to pass the font in another field. Better use was
2425 made of the improved chaining options too.
2426 Improve Graph-option event handling
2427 The user-supplied callback now gets 3 arguments passed: the event type
2428 (0 = pointer motion, 1...5 button press, -1...-5 release, 10 = expose),
2429 and two coordinates. For ouse events these are the pointer (x,y), while
2430 for expose events they are the window size (w,h). The callback is now
2431 specified in the option.target field of the Graph option.
2432 Store engine options in malloc'ed memory
2433 The Option.name field has been re-declared as (char*), from (char[MSG_SIZ]).
2434 There are still MSG_SIZ chars allocated irrespective of actual size, because
2435 the field is also supposed to store the textValue, which can be changed by
2436 the user. But at least it means that unused options of the generous list
2437 now don't waste much space. (And the prparated Option tables in dialogs.c
2438 will shrink by a large factor as well.)
2439 Improve GenericPopUp ComboBox handling.
2440 The dialog type is now passed to the combobox callback as well, and this is
2441 used to really figure out what option it is called for.
2442 Allow numeric comboboxes
2443 When no list of strings is given in Option.choice, the target is assumed
2444 to be (int), and the number of the slected entry is stored there. Also
2445 adapts the Label options that act as fillers to the new method for making
2446 dummies (namely NULL in the Option.name field).
2447 Put comboCallback in Option struct
2448 Rather than having a general comboCallback variable for the entire current
2449 dialog, each ComboBox option can now specify its own callback in the
2450 target field of the option: the COMBO_CALLBACK bit of Option.min indicates
2451 whether the target is a variable to be set or a callback. The callback can
2452 still fetch the choice from the values array.
2453 Allow generic CreateComboPopup also to do main menus
2454 An extra parameter to CreateComboPopup determines if the menu texts
2455 should be taken from a list of strings (the old method with engine-
2456 supplied choices), or from a menu table of MenuItems. It can now also
2457 recognize "----" as a menu break, and keeps margins (for the marking).
2458 Make subroutine for determining curren combo selection
2459 Various fixes to GenericPopUp
2460 Delete one border-width setting
2461 Fix max nr of args in GenerocPopUp
2462 Fix button release events of Graph options
2463 Fix generic Graph callback pointer motion coordinates
2464 Make all format referencing in Option tables symbolic
2465 Let Option.choice define menu texts, rather than Option.textValue
2466 This is more logical than ussing textValue for it, because choice already
2467 has the correct (char**) type, while textValue was (char*), and needed
2468 casting everywhere. Note that for engine options, the fields were the
2469 same anyway, so no back-end change was required. The textValue now
2470 contains the (casted) list of actual string values, where these are
2471 needed. (But for numeric and function menus they aren't.)
2472 Add PopUp Option type
2473 An new pseudo-Option is defined, to add a popup menu to a previous Graph
2474 option. The actual popping up is done by the expose handler.
2475 The function XUngrabPointer is the key to success here. A PopUp option
2476 specifies a callback for handling the selection from the menu, which will
2477 be called with the option number, exacty as with ComboBox options.
2478 Update option explanation in dialogs.h
2479 Make Spin and CheckBox callbacks pass dialog number
2480 No longer rely on 'currentOptions' for getting the option belonging to
2481 the callback, but get it out of the dialogOptions array indexed by dialog
2482 type. This way things cannot be messed up by an asynchrounous error popup.
2483 It also means that it is now save for non-modal dialogs to use these options.
2484 Use button widget for text behind checkbox
2485 Let listboxes use general formatting hints
2486 Let GenericPopUp option always finish last pane after Break
2487 Allow LisBox to specify select callback in Option.textValue
2488 Use double-click to trigger ListBox callback
2489 Make ListBox callback re-entrant
2490 Fix multi-line Label options
2491 Separate CreateMenuItem out from CreateComboPopup
2492 Chain checkbox texts entirely left
2493 Allow a user-specified callback to Label options
2494 This is needed to implement the clocks. Let the CheckBox callback handle
2495 it. For now ther is no distinction between different mouse buttons.
2497 2012-03-21 11:15:01 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2498 Prevent double PopDowns
2500 Some DialogOK functions ordered an early PopDown themselves. This,
2501 however, resulted in PopDown being called twice when they returned TRUE.
2502 This interfered with the new system for allowing multiple instances of
2503 the same dialog. So these functions are now fixed to suppress the
2504 standard PopDown by always returning FALSE.
2506 2012-03-20 19:10:50 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2507 Split usounds.c and usystem.c from xboard.c
2509 X-independent code was moved to separate files. The nef file usound.c
2510 contains the sound handling, which in XBoard is trivial, because it uses
2511 an external player, but could be replaced by a complex one on platforms
2512 that have to handle the sound themselves.
2513 The usystem.c file contains all non-X Unix-like stuff, such as fork,
2514 pipe, system, getenv. I also contains some color parsing for the xterm
2515 colors. This stuff could be useful on platforms that support Unix-like
2518 2012-03-26 19:03:19 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2519 Make routine to probe shift keys
2521 The code to probe Alt keys was taken out of MoveTypeInProc, and extended
2522 to probing Ctrl and Shift keys too. These are now returned in the 6 LSB
2523 of an int by ShiftKeys().
2525 2012-03-19 13:15:11 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2526 Remove one level of indirection on ICSInputBoxPopUp
2529 2012-04-10 10:26:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2532 Remove AskQuestionProc
2533 A bit of cleanup on xboard.c prototypes
2534 Remove dead file-browser code
2535 Delete vestigial jail code
2536 All the stuff about jailColor was deleted. Only one fishy thing remains:
2537 xpmJailSquare seems under some conditions used in BlankSquare to draw a
2538 'neutral' square. it is set to a copy of a light square image. But in the
2539 current design 'neutral' means blacked out between board and holdings,
2540 and even with image use, it should not resemble a light square...
2541 Remove registering of CommentPopDown and TagsPopDown
2542 Merge CopyGameSelection into CopyPositionSelection
2544 2012-03-19 11:38:17 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2545 Move some back-endish routines from xboard.c to dialogs.c
2547 Move ICS input-history handling to dialogs.c
2548 Move ICS Input Box text handling to dialogs.c
2549 Move DisplayXxxx routines to dialogs.c
2550 Move DisplayTitle to dialogs.c
2551 A wrapper SetWindowTitle remains in xboard.c.
2553 2012-03-18 20:10:35 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2554 Split back-endish part off xoptions.c, and move to dialogs.c
2556 Some MenuProcs for dialogs were also moved to dialogs.c from menus.c.
2557 MoveTypeInProc which is an event handler for the board widget,
2558 was moved to xboard.c, where it can be static.
2560 Identify dialogs by enum type
2561 A new header dialogs.h is created, which defines an enum type DialogClass
2562 that is now used to identify the various dialogs done by GenericPopUp.
2563 The prototypes for GenericPopUp/PopDown, and other globals shared by the
2564 dialogs code and other modules can go in here as well.
2565 Remove ClearTextWidget
2566 This did the same as SetWidgetText with an empty string.
2567 Split X-code from PutText
2568 Split back-end part from MoveTypeInProc
2569 Take set-title out of comment popup
2570 Sort MenuProcs in dialogs.c with their support functions
2571 Declare globals in dialogs.c with functions where they belong
2572 Add prototypes to dialogs.h
2573 Move prototypes and globals from xoptions.c to dialogs.h
2574 Make accessor DialogExists for dialog shells
2575 Add dialogs.c to makefile: compiles and runs!
2576 Combine 3 calls into front-end to InitDrawingParams
2577 Move EditCommentProc and ICSInputBoxProc to dialogs.c
2578 Pass option list as argument to GenericUpdate and GenericReadOut
2579 Shorten argument name from currentOption to opts
2580 This to prevent confusing it with the global variable of that name.
2582 2012-03-18 15:33:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2583 Declare some shared global variables in backend.h
2585 The vlobals twoBoards and partnerUp were only shared through an extern
2586 declaration in xboard.c
2588 2012-03-18 12:34:42 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2589 Split back-endish part off drawing code and move to board.c
2591 Split DrawSquare in front-end and back-end part
2592 Back-endize DrawHighlights and DrawPosition
2593 The already existing wrapper FlashDelay is used as a kludge to do an XSync.
2594 We now pass a code for the line color GC to the highight routine. New
2595 wrappers are DrawGrid() and DrawBorder().
2596 Back-endize atomic explosions
2597 Back-endize DrawArrow and DrawDragPiece
2598 DrawDragPiece now calls DrawOneSquare with argument EmptySquare in stead
2599 of the X-type referring BlankSquare. A new wrapper DrawPolygon fixes
2600 DrawArrowBetweenPoints.
2601 Move board-drawing logic to new file board.c
2602 All X-independent drawing logic (board, squares, arrows, highlights,
2603 some animation stuff) has been extracted from xboard.c, and moved to
2604 a new file board.c, which is back-end (but unshared with WinBoard).
2605 A new header board.h defines the cross-references (which of course
2606 required some functions to be no longer declared as static).
2607 A bit of code was moved from DragPieceBegin to BeginAnimation, which
2608 now has an extra argument to indicate which piece should appear from
2609 under a dragged piece. This makes DragPieceBegin free of XCopyArea calls,
2610 so it could be moved too.
2611 Make board.c truly back-end
2612 Get rid of all X data types. For this the AnimState struct had to be
2613 redefined: the GC and Pixmap was taken out and put in front-end arrays
2614 indexed by anim agent (game and player). For this indexing a new enum
2615 was defined. The XPoint type was also replaced by our own type of an
2616 int pair (which is nasty, because the int size could be different).
2617 Move more animation code to board.c
2619 2012-03-18 10:08:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2620 Contract some awful code replication
2622 The code for making an X-color was replicated 6 times, and is now made
2623 into a subroutine. The code for creating GCs was quite repetitive as well.
2625 2012-03-18 08:34:54 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2626 Move more back-endish menu-related stuff from xboard.c to menus.c
2628 Move menu enabling to menus.c
2629 Only the wrapper EnableMenuItem stays in xboard.c. A new wrapper
2630 EnableButtonBar was necessary, because Training mode wants to enable/disable
2632 Move all back-endish MenuProcs to menus.c
2633 Many if the MenuProcs that could not be eliminated by listing the
2634 corresponding back-end MenuEvent function as handler directly, are
2635 still completely plactform indpendent. (E.g. when the MenuEvent needs
2636 a parameter.) These are all moved to menus.c now.
2637 Convert all dead MenuProcs to using MarkMenuItem
2638 The MenuProcs for the option items that no longer exist were also
2639 converted for check-marking their item in the new way, because we
2640 might revive them for key binding.
2641 Move the dead MenuProcs also to menus.c
2642 Revive dead menu procs
2643 Move GreyRevert to menus.c
2644 Move ModeToWidgetName to menus.c
2645 Move initial menu marking to menus.c
2647 A new function InitMenuMarkers was split off from main() to do this.
2649 2012-03-18 08:17:53 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2650 Switch to use of short menu references
2652 The prefixes menuXxxx. for the item names are abolished. This made it
2653 necessary to also add a MarkMenuItem function that can handle short names
2654 for putting the xMarkPixmap on the items, as the names returned by
2655 ModeToWidgetName are used for both enabling and check-marking.
2656 Let MarkMenu use MarkMenuItem wrapper
2658 2012-03-17 10:47:04 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2659 Refactor menu code, and move it to menu.c
2661 Supply new method for key binding
2662 It is annoying that every menu item needs its X-specific handler routine,
2663 because this handler has to be registered to X for becoming eligible as
2664 a key binding. Another disadvantage of this method is that the user wanting
2665 to make the binding has to know the name under which the menu function
2666 is registered (e.g. FlipViewProc).
2667 A new method is now made available, which uses only a single (X-specific)
2668 routine, registered with X as "MenuItem", as generic key-binding handler.
2669 The bindings can then be made by the user specifying "MenuItem(FlipView)".
2670 This requires a new list of potential bindings, which should be filled
2671 by the menu-creation routines. (Currently only contains only a predeficed
2673 No longer register all MenuProcs with X
2674 The list with available menu procs is moved to the user-maintained
2675 menuItemList. Only QuitProc had to stay registered with X, because it is
2676 used in CatchDeleteWindow. (So it is in both lists now.) In the future,
2677 most of the list can be built automatically from the menu tables.
2678 Alter type of MenuProcs to void(void)
2679 By getting rid of the argument list with X-types, most menu procs can
2680 become back-end. In the cases of ManProc and QuitProc the original
2681 version had to be kept as well, because in ManProc the argument was
2682 actually used (with key binding), while QuitProc is used for delete window.
2683 Remove now unnecessary menu wrappers
2684 Now the MenuProc have an empty argument list, those that also call a
2685 single 'MenuEvent' without arguments have become completely redundant,
2686 and have been taken out of the loop by calling the corresponding MenuEvent
2688 Build menuItemList from menu tables
2689 Rather than having an initialized table of name-proc associations (which
2690 used to be the X registrations) for the menu items, we now build the list
2691 during menu cration from the menu tables. The menu "ref" is now used as
2692 proc name. This means the old MenuProc names used in the predefined
2693 key bindings had to be changed to conform to this. Note that the bindings
2694 would slice up names containing spaces in several parameters, so in the
2695 translations the spaces were squeezed out of the item names. This requires
2696 a hand-written comparison routine Equal() to identify the binding.
2697 Remove prototypes of deleted MenuProcs
2698 Move prototypes of platform-independent MenuProcs to menus.h
2699 Create a new header file for the menu stuff, so that we can move
2700 the corresponding handler routines out of xboard.c to a back-end file.
2701 Extract back-end code from menu creation
2702 The menu tables and code to interpret them is moved to a new file menu.c.
2703 Only basic fuctions for creating a pop-down list and for adding an item
2704 to it remain in xboard.c.
2706 2012-04-07 15:59:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2707 Remove some unused (exclude-moves) variables
2710 2012-04-07 15:57:54 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2711 Install engine within current group
2714 2012-04-07 15:53:29 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2715 Switch to using listboxes for engine-selection in WinBoard
2718 2012-04-07 15:36:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2719 Implement Narrow button in WB Game List
2722 2012-04-05 15:15:09 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2723 Silence unjust warning
2726 2012-04-04 12:18:43 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2727 Fix memory corruption through InitString and second-engine loading
2729 The InitString and ComputerString options were not swapped when replacing
2730 the second engine, so that the ChessProgramStates of the first engine
2731 could point to an invalid (already freed) init string. Also make sure
2732 that appData.directory contains its value in allocated memory, even
2733 when hand-loading engines.
2734 Some of the rare options were not swapped either, and would thus
2735 always be loaded for the first engine when -singleEngineList was true.
2736 They are now also all reset to their default, before engine load,
2737 to prevent options of one engine to linger on for a next that does
2738 not specify them. The intentional exception is -firstHost.
2740 2012-04-01 20:51:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2741 Fix PV sorting during fail low
2743 When an engine reports a fail low as thinking output, and then re-searches
2744 the same move with larger window, it now gets a lower score. This line
2745 would then be sorted below the earlier fail low, because it was mistaken
2746 for a multi-PV line for an inferior move. This patch suppresses PVs
2747 overtaking each other if they start with the same move.
2749 2012-03-30 20:09:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2750 Extend smallLayout regime up to size Medium
2752 Because of the increase number of menus, there is not enough space for a
2753 title next to the menu bar at smaller sizes. In fact it is questionable if
2754 the title should ever go on the same line as the menu bar.
2756 2012-03-30 10:38:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2757 Fix parsing crazyhouse promotions with legality testing off
2759 With legality testing off, any promotion suffixes in a move are taken
2760 'on faith'. But in crazyhouse the piece ID for normal pieces is used as
2761 promotion suffix for promoted pieces, so this would Loop Chess rather than
2762 Crazyhouse. Now attention is payed to presence of ID-less promotion pieces
2763 (indicated by ~ in the pieceToCharTable), and if there are, these prevail
2764 ovr the specified type.
2766 2012-03-30 10:07:04 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2767 Fix browsing for save file in WB
2769 The generic popup browse buttons used the wrong flavor of browser,
2770 which would only accept existing files. This was inconvenient when browsing
2771 for a save file. The other flavor of browser is now used by default (so that
2772 engine options also use it), and a new flag is added in the option.max field
2773 (which was already indicating file type) to request readonly browsing for a
2776 2012-04-02 10:18:37 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2777 Let clicking on header line exclude moves
2779 The exclude header in the Engine-Output window can now be clicked, to
2780 toggle the exlusion of the listed move. Clicking on 'none' resets all
2781 exclusions, clicking on 'best' excludes the first move of the latest PV.
2782 The pseudo-move 'tail' represents all non-listed moves.
2784 2012-04-01 22:39:55 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2785 Keep list of excluded moves in Engine Output header
2787 As long as there is still space, excluded or included moves are added
2788 to a new header line in the Engine Output window (prefixed with + or -
2789 depending on whether they are currently excluded or included). Future
2790 in/exclusions of that same move then alter the prefix.
2792 2012-03-21 23:12:20 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2793 Fix focus of Game List
2795 After focus was transferred to the filter text-edit, it was impossible
2796 to get it back on the game list (to make the arrow keys working again).
2797 A translation to left down-click is now used to assign focus, just as
2798 it would for text edits. For unknown reason this only worked if the
2799 translations were instated by Overriding, rather than Augmenting,
2800 which again required the normal translation of downclick, Set(), which
2801 selects the clicked item, to be explicitly mentioned as well.
2803 2012-03-16 22:41:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2804 Fix taking effect of some option changes
2806 This fixes a bug reported at Ubuntu: when switching off move highlighting
2807 in Two Machines mode, the last move before the switch stayed highlighted.
2808 The GeneralOptionsOK() now clears any remaining highlights when highlighing
2809 is off. Similar problems with blind-fold mode and coordinates, which require
2810 a total board redraw to take effect, are now solved by also forcing such a
2811 redraw in GeneralOptionsOK() when they change.
2813 2012-03-16 21:58:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2814 Add exclude and setscore to protocol specs
2817 2012-03-16 14:47:25 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2818 Fix clock stop after dragging
2820 DelayedDrag always cancelled the previous drag timeout event, even when
2821 this was no longer pending because it had already taken place, and the
2822 event ID was resused by some other timeout (usually a clock tick).
2824 2012-03-14 21:06:28 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2825 Implement exclude moves
2827 Dragging a piece by double-clicking it on the from-square in analysis mode
2828 will not perform the entered move, but send an exclude or include command
2829 to the engine for that move (provided the engine enabled this with
2830 feature exclude=1), depending on if the move was already excluded or not.
2831 To this end a map of excluded moves is kept, and cleared when we move to
2832 another position through moving, undo, setboard or new. The user can see
2833 whether he included or excluded the move, as exclude uses premove highlights.
2834 Commands "exclude|include all" are sent when we throw a double-clicked
2835 piece off board (vertically or horizontally, respectively), but after
2836 exclude all the most recent PV move is included again.
2837 Remaining problem is that promotions can only be excluded.
2839 2012-03-14 15:13:18 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
2840 Mark new text "Click clock to clear board" for translation
2843 2012-03-13 21:46:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2844 More thorough switch to -ncp on engine failure
2846 The ProcRef and InputSource are now also cleared, and just to be sure there
2847 are no surviving adapters, the child is killed when engine startup fails.
2849 2012-03-13 21:25:22 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2850 Install engines as ./exefile in XBoard
2852 When a path name is split into directory and filename, the latter in Linux
2853 must be preceded by ./ in order to make it executable in the directory
2854 XBoard starts it in.
2856 2012-03-13 14:11:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2857 Inform user in EditPosition mode how to clear board
2859 With -pieceMenu false the board is cleared by clicking the clock, but
2860 since this is impossible to guess, it is now printed in the message field.
2862 2012-03-13 14:06:32 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2863 Fix fall-back on -ncp mode
2865 When the requested engine could not be started, the user still had to
2866 wait for the feature timeout to expire before the UI was re-enabled,
2867 and the now-useless loading action would continue. In stead we now
2868 cancel any scheduled continuation, thaw the UI immediately, and switch
2869 the menus and gameMode to ncp straight away.
2871 2012-03-10 18:55:24 -0800 Arun Persaud <arun@nubati.net>:
2872 updated po/pot files
2875 2012-03-10 18:54:32 -0800 Arun Persaud <arun@nubati.net>:
2876 new version number for developer release
2879 2012-03-06 16:37:02 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
2880 Fix typo (seach) in string. It is already fixed in branch v4.6.x
2883 2012-03-04 14:52:34 -0800 Arun Persaud <arun@nubati.net>:
2884 added some documentation about what's need to be done for a release and a bash-release script
2887 2012-02-28 21:09:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2888 Fix suspected bug in Makefile
2893 2012-02-26 18:55:10 -0800 Arun Persaud <arun@nubati.net>:
2894 add information about our webpage and were to report bugs into the help menu
2897 2012-02-26 18:40:27 -0800 Arun Persaud <arun@nubati.net>:
2898 fixed "make install-pdf": missing target for recursive make in po directory
2901 2012-02-26 23:06:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2902 Suppress recent-engines menu items in ICS mode
2905 2012-02-26 22:45:12 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2906 Fix 50-move counter in ICS mode
2908 Marking irreversible moves in the EP_STATUS did not work in ICS mode,
2909 as ApplyMove,which did that is never executed there. Only the boards
2910 sent by ICS are displayed,especially in observing mode. Now the status is
2911 derived from the ICS mov strings (x in the SAN move, or P in the long move.
2913 2012-02-26 17:18:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2914 Fix two 64-bit warnings
2916 Passing the engine number in a pointer variable to the callback needed
2919 2012-02-26 16:53:24 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2920 Fix piece symbols on switch back to variant normal
2922 Variant switches were not properly detected, meaning the variable pieces
2923 could keep a form belonging to a previous variant. (E.g. Queen remained
2924 a Lance image after switching from shogi to normal.)
2926 2012-02-26 14:07:50 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2927 Keep XBoard windows attached on resize
2929 Windows attached to bottom or right are displaced with the size increase.
2930 Their perpendicular dimension is also scaled, to keep their edges at the same
2931 fraction of the main window, unless they stick out. In the latter case the
2932 fraction is clipped to 1, so that edge moves with the full size increase.
2934 2012-02-25 22:40:56 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2935 Implement -stickyWindows in XBoard
2937 This makes the auxiliary windows move with the main window when they were
2938 touching, as in WinBoard. A control is added in the General Options dialog.
2940 2012-02-25 21:14:03 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2941 Use more reliable X-call for getting window position
2943 XtGetValues on XtNx, XtNy is unreliable. XGetWindowAttributes seems
2944 to give more reliable results, and automatically accounts for the width
2945 of window dressing. The -frameX/Y options are no longer needed bcause
2946 of this, and were removed.
2948 2012-02-25 11:55:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2949 Make frame width configurable in XB
2951 New persistent options -frameX, -frameY now can be used to specify
2952 the amount by which Xt lies about the window coordinates.
2954 2012-02-23 20:01:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2955 Use combobox line for recent engines when available
2957 The entry made in the -recentEngineList for the startup engine was
2958 derived from the -fcp value, but this would ignore a possible nickname.
2959 In WinBoard we now use the full combobox line to derive the entry.
2961 2012-02-23 09:29:17 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2962 Fix translation of EngineOutputTitle WB
2965 2012-02-23 01:34:12 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
2966 Updated Danish translation
2969 2012-02-23 00:59:36 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
2970 One missed translation of cps->which
2973 2012-02-22 19:58:41 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2974 Undo translation of cps->which = first/second
2976 The string in cps->which should not be translated, because it goes into
2977 the debug file to label engine I/O, and many tools for processing
2978 debug files (broadcasters, PGN extractors) rely on this being "first" or
2979 "second". In all contexts where "first" and "second" need to be translated,
2980 cps->which itself is already enclosed in _().
2982 2012-02-22 18:27:40 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2983 Implement -serverFile option
2985 This writs an extra debug file with only engine communiation on it,
2986 for the benifit of programs like TLCS.
2988 2012-02-22 17:46:16 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2989 Implement -autoCopyPV
2991 This option causes automatic copying of the last position of a PV walk
2994 2012-02-16 14:58:45 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2995 Delete some load-game debug printing
2997 The debug printing in Disambiguate was no longer needed. The printing
2998 of the started process in XBoard that went to stderr is now diverted
2999 to debugFP, so it ends up in the debug file.
3001 2012-02-16 14:41:43 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3002 Move change of debug file to before game load
3004 Loading a game from -lgf is done before TwoMachinesEvent is called,
3005 but logically belongs to the game. So the code to switch to the new
3006 debug file for the game is moved to NextMatchGame now.
3008 2012-02-16 14:09:54 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3009 Fix button grab for sweep selection
3011 The piece-menu initialization limited the grab of button events to those
3012 occurring inside the board window (presumably intended to limit them to
3013 the piece menu, but that does not pop up in sweep-selection mode).
3014 This is now suppressed when -pieceMenu is off, so that selection continues
3015 outside the the board. (Which is very convenient for pieces pu close to the
3018 2012-02-16 13:16:13 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3019 Don't leave piece selected after piece menu
3021 PieceMenuEvent left the just introduced piece selected, which is almost
3022 never what one wants, as it makes it jump to the next square when selects.
3023 Which is especially annoying if it captures the piece you wanted to grab...
3025 2012-02-16 12:57:47 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3026 Fix use of middle button for position setup
3028 With sweep selection the actual drop is made on releasing the button,
3029 and this event was not caught for button 2. Button-2 motion events were
3030 also not caught by the sweep-selection handler.
3032 2012-02-16 23:53:08 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
3033 Fix one more typo in the translator comments explaning "first" and "second"
3036 2012-02-16 23:39:32 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
3037 Fix typo in translator comments explaning "first" and "second"
3040 2012-02-16 23:23:20 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
3041 Add args.h to POTFILES.in and change the interface to ExitArgError() so msg is c format string
3043 Having msg as a format string will ease translations because then
3044 badArg doesn't have to come last.
3046 2012-02-16 22:51:44 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
3047 Mark the strings "first" and "sencond" for translation.
3049 ... and assign the translated strings to cps->which in function InitEngine()
3051 2012-02-16 18:42:10 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
3052 Use ngettext() instead of gettext() for a string to allow better translation.
3055 2012-02-16 00:19:59 -0800 Arun Persaud <arun@nubati.net>:
3056 translation: updated uk.po
3059 2012-02-15 20:59:09 -0800 Arun Persaud <arun@nubati.net>:
3060 modified configure and makefile for handling mimedb update
3062 the default configure will install them using the xdg commands (if they exist on the system)
3064 2012-02-13 22:29:48 -0800 Arun Persaud <arun@nubati.net>:
3065 add configure test for xdg-programs to install mime types; can be disabled for building of e.g. rpms
3067 in case the target system doesn't have the xdg-programs available, we test for them.
3068 Distributions often have their own macros to install these, so we add an enable option to configure
3070 2012-02-13 22:05:26 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3071 Remove a debug printf
3073 The parsePV debug printf becomes extremely verbose with -fSAN, -sSAN,
3076 2012-02-12 22:18:24 -0800 Arun Persaud <arun@nubati.net>:
3077 new developer release
3080 2012-02-12 22:19:37 -0800 Arun Persaud <arun@nubati.net>:
3081 updated po/pot files
3084 2012-02-12 22:17:03 -0800 Arun Persaud <arun@nubati.net>:
3085 updated Changelog, NEWS, etc.
3088 2012-02-12 07:52:54 -0800 Arun Persaud <arun@nubati.net>:
3089 translation: updated uk.po
3092 2012-02-12 11:38:30 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3093 Leave height of row that only contains buttons free
3095 All elements of the GenericPopUp are still scaled to the text height,
3096 including buttons appended behind them (browse or color buttons).
3097 But we now make an exception for a row that only contains buttons,
3098 as there is no harm in it being a little higher (and the buttons look
3101 2012-02-12 00:01:24 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3102 Fix OK button of error popup
3104 The error dialog popped up as a child of the board window, even when
3105 DisplayError was called from a dialog. Now it checks if a transient
3106 dialog is up, and if so, it pops up as a child of that, grabs focus,
3107 and suppresses the system popdown of the transient dialog through a flag
3108 dialogError until it is popped down itself.
3110 2012-02-11 20:07:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3114 2012-02-11 10:18:02 -0800 Arun Persaud <arun@nubati.net>:
3115 added some comments for translators
3118 2012-02-11 10:08:46 -0800 Arun Persaud <arun@nubati.net>:
3119 fixed comments for translators: comments starting with TRANSLATORS: are now copied to the po file
3122 2012-02-11 19:01:49 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3123 Also configure sweep selection
3125 To make sure this feature is tested, we set -pieceMenu false in the
3126 master settings file.
3128 2012-02-11 18:26:34 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3129 Fix date in copyright notice about-box
3132 2012-02-11 17:15:11 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3133 Fix switching animation masks on variant switch
3135 The masks for variant-dependent piees (E,H in Seirawan, promoted Golds
3136 in Shogi, the Gothic Chancellor) were no longer updated in InitDrawingSizes
3137 because of the patch to reduce X-server calls.
3139 2012-02-11 16:46:58 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3140 Configure wider game list
3142 The game list was by default too small, so that there was no room for the
3143 filter field. Now a width of 500 is specified, whcih works at -size 49
3146 2012-02-11 16:29:06 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3147 Fix button chaining and combo/textbox label height
3149 Previous patches forgot to specify the height for the text labels on
3150 -combo and -text options, so they were still too high. Buttons that go
3151 on the same line as the previous element should be chained right, not rubber.
3153 2012-02-11 15:52:52 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3154 Make -pgnNumberTag option setable from menu
3156 The Save Options dialog now containes a checkbox for this.
3158 2012-02-11 15:48:52 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3159 Configure some new features switched on
3161 The master settings file switches -showTargetSquares, -sweepPromotions
3162 and -seekGraph on, so that they will get more testing.
3164 2012-02-11 14:43:53 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3165 Fix heigth of multi-line labels
3167 The previous height patch overlooked that some labels are multi-line,
3168 and need more height.
3170 2012-02-11 14:10:21 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3171 Fix popdown seekgraph on forward-event XB
3173 Only the grid was drawn when the > or >> button were operated, because
3174 a full redraw was not forced by ForwardInner. The recent patch to take
3175 the seek graph down on such events did not account for that. (BackwardInner
3176 always seems to do full redraw, however?)
3178 2012-02-11 12:59:04 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3179 Put front-end support for -recentEngines in XBoard
3181 The engines are added to the menu. Problem is still that in XBoard
3182 startup engines are given by command, rather than selected by combobox,
3183 so the command rather than the nickname ends up in the menu. If this is
3184 then selected, it cannot be found in the list. To limit the damage,
3185 Fairy-Max is now pre-installed without nickname. -recentEngines is now
3188 2012-02-11 11:53:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3189 Better solution to button-height problem
3191 In stead of adapting the height of text widgets to that of buttons,
3192 (as represented by the message widget), we now do the opposite, and
3193 adapt the button & label heights. This is made safe by obtaining textHeight
3194 from the fontSet's max_logical_extent, though an XExtendsFontSet() call.
3195 Turns out the default height of text widgets is not exactly that, but
3196 4 pixels larger for borders and margin.
3197 The parameter XtNvertDistance is now used to align the checkboxes with
3198 the following text widget, and their size is derived from textHeight as
3200 The XtNvertDistance is set to -1 for the lower spin button, so that it
3201 its border coincides with that of the upper spin button. Their height is
3202 set to textHeight/2. This makes their combined height just 1 pixel more
3203 than that of the preceeding text widget. (Uh? 2 x tw/2 -1 > tw?), so for
3204 other buttons we use that too (i.e. textHeight = font_extent + 5).
3206 2012-02-10 22:39:08 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3209 Deleting debug printing had made a variable unused.
3211 2012-02-10 22:26:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3214 The text-edit-height patch introduced a bug that did not have any consquences
3215 (yet), as the extra arg erroneously included leftover from a previous
3216 SetValues call happened to be the same as one of the intended args.
3218 2012-02-10 20:51:41 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3219 Fix unloading of first engine on tourney start
3221 Because NextTourneyGame was loading a new engine before ReserveGame was
3222 called to unload it with dummy game nr = -1), the first engine proc kept
3225 2012-02-10 18:39:09 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3226 Remove some of the most verbose debug output
3229 2012-02-10 17:46:35 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3230 Delete some unused WinBoard bitmaps
3232 There waere up-side-down knight icons that apparently hid by mistake
3233 in the bitmaps directory: they were not part of WinBoard
3235 2012-02-10 17:39:48 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3236 Cosmetic: change 4.5 to 4.6 in xboard.conf comment
3239 2012-02-10 17:35:22 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3240 Fix crash on empty combobox menu XB
3242 XBoard crashed when a combobox without items was opened, as could easily
3243 happen in the Load Engine dialogs when -firstChessProgramNames contained
3244 no items, as it would without configuring. Now the creation of the popup
3245 menu is suppressed in that case.
3247 2012-02-10 17:13:36 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3248 Fix position of checkbox XB
3250 With the large height the widget get in internationalization, the
3251 checkboxes are position way too high above the text. To shift them down
3252 a dummy borderless label widget is drawn above them (when needed).
3254 2012-02-10 15:07:35 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3255 Fix heights in Engine Output window XB
3257 The icons did not fit in the space above the memos anymore, so the height
3258 of this area is now left free.
3260 2012-02-10 14:55:48 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3261 Derive height of text-edits in dialogs from message widget
3263 With internationalization the default height of buttons has inexpliquably
3264 inreased compared to that of text-edits, messing up the layout of the
3265 GenericPopUp. The message widget is now used as a emasure of how high
3266 the widgets should be.
3268 2012-02-10 14:21:37 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3269 Configure XBoard engines and textures
3271 The new -useBoardTexture option is needed in xboard.conf, as we want to
3272 distribute with the texture on, while the compiled-in default is off.
3273 A list of 4 engines has been configured (fairymax, fruit, crafty, gnuchess),
3274 as the Load Engine and Match Options checkboxes crash XBoard when the list
3275 is empty. The -recentEngines option is set to 0 to make sure the code
3276 associated with it is never executed: the code is still experimental,
3277 and the required front-end support is only present in WinBoard anyway.
3279 2012-02-10 13:30:58 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3280 Update Dutch WinBoard translation
3283 2012-02-10 13:18:48 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3284 Create room in some WB dialogs for translations
3287 2012-02-10 13:17:30 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3288 Add 5 missing strings to WinBoard translation template
3291 2012-02-09 23:03:58 -0800 Arun Persaud <arun@nubati.net>:
3292 new developer release
3295 2012-02-09 23:04:46 -0800 Arun Persaud <arun@nubati.net>:
3299 2012-02-09 22:59:05 -0800 Arun Persaud <arun@nubati.net>:
3300 updated Changelog, NEWS, etc.
3302 2012-02-09 22:44:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3303 Fix non-bug in WinBoard
3305 The IDM_RecentEngines was not used in symbolic form everywhere.
3307 2012-02-09 18:46:08 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3308 Fix MAXENGINES in WinBoard
3310 The front-end arrays for expanding the engine list measured 1000 entries,
3311 in stead of MAXENGINES, leading them to overflow.
3313 2012-02-09 13:05:42 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3314 Implement kludge to set options through Move Type-in
3316 A leading "!!! " will cause the rest of the line to be parsed as
3317 command line. Very dangerous, as an unknown option (e.g. because of a typo)
3318 will cause a fatal error, which makes XBoard exit.
3320 2012-02-09 13:04:44 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3321 Put move number in Eval Graph title
3324 2012-02-09 13:00:09 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3325 Implement -pgnNumberTag option
3327 A new (persistent) boolean option controls if the sequence number is to
3328 be written in saved tourney games as a Number tag, to make it easier
3329 to correlate games with debug files.
3331 2012-02-09 12:55:52 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3332 Create separate debug fil for each tourney game
3334 Users can now apecify a -debugfile with %d in its name, and this will
3335 be replaced by the sequence number of the game. TwoMachinesEvent then
3336 starts by opening a new file when the name has changed, so that each
3337 game will go to a different file, with recognizable name.
3339 2012-02-09 12:51:25 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3340 Fix bug in WB combobox readout
3342 The previous patch exposed a latent bug in the readout of the generic popup.
3344 2012-02-08 23:25:31 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3345 Allow grouping of engines in engine list
3347 Lines "# GROUPNAME" and "# end" enclose a group in -firstChessProgramNames.
3349 2012-02-08 17:47:46 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3352 A trailing .exe was not removed if the engine name was quoted.
3354 2012-02-08 17:45:42 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3355 Put recently used engines in WB menu
3357 A new option -recentEngines specifies how many engines should be listed.
3358 The list of nicknames is stored in the ettings file as -recentEngineList.
3359 The engines are appended to the Engine menu.
3361 2012-02-04 19:37:51 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3362 Fix registering of EditTagsProg
3364 This was registered with X as EditCommentProc!
3366 2012-02-07 23:04:49 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3367 Increase max nr of engines to 2000
3369 Move the #define for MAXENGINES also to common.h, so that both the
3370 Load and Tourney dialog use the same maximum.
3372 2012-01-19 23:01:20 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3373 Fix fix of switch to mono-mode
3375 The previous fix had == in stead of != for testing if mono-mode had changed.
3377 2012-01-19 22:21:38 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3378 Make New Variant dialog visible in mono-mode
3380 All colored buttons did get a black background, and also black text...
3381 Use timer background color in stead, which is white.
3383 2012-01-19 20:48:37 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3384 Incease size of WB array of translated items
3386 For the BoardOptions dialog 42 items are now needed
3388 2012-01-19 17:18:25 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3389 Implement Clone Tourney button XBoard
3391 This makes use of the new GenericUpdate().
3393 2012-01-19 16:34:13 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3394 Implement GenericUpdate function
3396 This does the opposite from GenericReadout: it copies the current
3397 parameter values into the dialog.
3399 2012-01-19 12:19:27 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3400 Fix arrow damage with highlightDragging XB
3402 With highlight dragging the highlights of the previous moves are cleared
3403 when lifting the piece. Logically, this should also clear the arrow, but
3404 to do that requires a board redraw, which is not done at this stage. (And
3405 even then this would only be effective after marking the arrow damage,
3406 which is not done yet either). As a temporary fix, we repair the arrow
3408 This patch has moved marking of the arrow damage from DrawArrowHighlight
3409 to a separate routine, so a future better fix can also call that when the
3410 arrow should be erased.
3412 2012-01-18 16:01:50 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3413 Prevent unnecessary loading of engines
3415 For engines that can be reused, the unloading at the end of a pairing
3416 is in some cases wasteful, as the same engine will be used in the next
3417 pairing as well. In simple gauntlets the gauntlet engine will always
3418 stay first engine, while in multi-gauntlets the oppent engine will stay
3419 the same for an entire round. In these cases unloading is now suppressed.
3421 2012-01-17 22:22:32 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3422 Reset protocol version before loading new engine
3424 The protocol version was not reset, so if the previous engine was v1,
3425 the newly loaded engine would not be sent a protover command, so
3426 that its features would remain unknown!
3428 2012-01-17 19:33:32 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3429 Give focus to board window after ICS login
3431 toprevent that the focus remains on any popped up chat boxes, it is
3432 explicitlly set otherwise. The board window is preferred over the
3433 ICS interaction window, because you can type from there to the ICS anyway,
3434 and it makes all accelerator keys available.
3436 2012-01-16 14:37:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3437 Fix seek-graph popup and popdown
3439 Clicking outside the board area in WB (e.g.on the clocks) would also
3440 trigger seek-graph 'popup'. This is now suppressed by testing for
3441 y-coord > 0. In addition, the seek graph is automaticaly taken down
3442 when we step to another position in the current game (using buttons,
3443 arrow keys or whatever).
3445 2012-01-15 21:29:11 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3446 Suppress empty lines when observing on VICS
3448 Capture of the engine kibitzes when observing an engine game with
3449 -autoKibitz on was still leaking a linefeed on the Variant ICS
3450 (but not FICS or ICC!?).
3452 2012-01-15 21:24:12 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3453 Fix printing non-numeric kibitz with -autoKibitz
3455 Messages that were not considered kibitzed engine PV info for lack of
3456 numeric content, were kibitzed as coming from "your opponent", which
3457 is nonsense if you were iobserving, and masked the source. Fortunately
3458 star_match[0] is still holding the original name, at that point.
3460 2012-01-11 17:33:29 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3464 2012-01-11 17:00:38 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3465 Use same translation of "vs." everywhere
3468 2012-01-11 17:08:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3469 Add new translations to WB language file
3472 2012-01-11 16:20:17 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3473 Fix re-allocation of PGN-cache memory
3475 It allocated 8 times too much!
3477 2012-01-11 12:47:38 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3478 Fix height board dialog
3481 2012-01-11 12:34:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3482 Enable WB time-control dialog even when no clock mode
3484 The dialog could be called from the tournament dialog to set a TCfor
3485 the tourney even when currently in game-viewer mode, so it'd better work.
3487 2012-01-11 12:28:43 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3488 Exempt variant seirawan from -disguisePromoted inheritance
3490 This is not a variant where promoted Pawns have to be distingushed
3491 from primordial pieces, as captured pieces do not go into the holdings.
3493 2012-01-09 21:23:52 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3494 Add control for overrideLineGap in WB Board dialog
3496 Make it a checkbox to choose between 0 and -1.
3498 2012-01-09 20:56:40 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3499 Add Ctrl-D as alternative to Ctrl+Alt+F12 in WinBoard
3501 The acellerator key Ctrl+Alt+F12 seems reserved on Windows 7.
3503 2012-01-09 20:52:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3504 Fix seek graph for VICS
3506 The sought command on the open-source ICS code is ICC-like (no terminating
3507 line), although the server is FICS like. So also accept prompt as seek-graph
3510 2012-01-09 20:27:01 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3511 Open WB startup chat boxes only after logged on
3513 The init code for opening the chat boxes ismoved to DisplayIcsTitle().
3515 2012-01-07 20:31:34 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3516 Install mime types directly
3519 2012-01-07 20:29:10 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3520 Install desktop files directly
3523 2012-01-07 20:19:09 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3524 Install icons directly
3526 Rather than letting make-install copy the pixmaps to the XBoard data
3527 directory they are installed directly from the source files. The name
3528 of the TRN icon was also corrected and changed.
3530 2012-01-05 18:41:13 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3531 Update texi file and remove duplicate control
3533 Some missing option descriptions were added. The highlight-dragging
3534 control was removed from the General Options dialog, as it did the same
3535 as Show Target Squares. -highlightDragging wa changed to a volatile option
3536 with default value true, making it effectively disappear as an XBoard
3537 option. (In WinBoard it is still persistent.)
3539 2012-01-05 15:55:54 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3540 Remove the direct commands to the engines
3543 2012-01-05 21:15:11 -0800 Arun Persaud <arun@nubati.net>:
3544 forgot to list new desktop files in EXTRA_DIST section in Makefile.am
3547 2012-01-05 20:08:23 -0800 Arun Persaud <arun@nubati.net>:
3548 added some autogenerated po files to .gitignore
3551 2012-01-05 20:05:44 -0800 Arun Persaud <arun@nubati.net>:
3552 added desktop and mime-type association to autoconf install process
3554 This should install and uninstall the mime assocciation and also the icons.
3555 Also renamed the desktop files to avoid possible name collisions.
3557 2012-01-03 21:30:59 -0800 Arun Persaud <arun@nubati.net>:
3558 code cleanup: make function definition confirm to GNU coding style
3560 change everything in the main directory to
3563 funcname (int a, int b)
3567 2012-01-03 18:43:18 -0800 Arun Persaud <arun@nubati.net>:
3568 Updated copyright notice to 2012
3571 2012-01-03 21:32:04 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3572 Implement -viewerOptions
3574 A mechanism is added to allow the user to configure persistently if the
3575 game viewer that starts on clicking PGN files will use -ncp mode, or
3576 load an egine for analysis (or, in fact, do anything). This by introducing
3577 a persistent string option -viewerOptions, which will be parsed as a
3578 command line after the real command line when the option -viewer was present.
3580 2012-01-03 11:29:00 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3581 Fix crash in auto-comment
3583 Trailing linefeeds in AppendComment were not properly stripped off,
3584 leading to a mismatch between the allocted and used memory, and thus
3585 possible buffer overruns.
3587 2012-01-02 23:46:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3588 Fix crash at match end
3590 The -afterTourney option had broken old-style matches, because the ranking
3591 string that was tested for "busy" is not set there at all, and remains a
3592 NULL pointer, which strcmp doesn't like.
3594 2012-01-01 19:56:58 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3595 Add desktop files for PGN viewer and tournament player
3597 The desktop files define startup commands for handling PGN, FEN and
3598 tourney files, calling xboard with the proper command-line options.
3600 2012-01-01 19:53:02 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3601 Add xml file for defining mime types
3603 The file xboard.xml defines application/x-chess-pgn, aplication/x-chess-fen
3604 and application/x-xboard-trn as mime types for *.pgn, *.fen and *.trn files,
3605 so these files can be associated with XBoard in various modes.
3607 2012-01-01 19:41:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3608 Add icons for PGN and tourney files
3610 Icons are provided in two sizes: 32x32 and 48x48.
3612 2011-12-29 19:55:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3613 Clear square markers on new game
3615 Now that the markers can stay on after a first click, they need to be
3616 explicitly cleared when moving to another board, including a new game.
3618 2011-12-29 15:51:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3619 Abandon single-letter menus in tinyLayout
3621 Now that the items on the main menu bar are clipped, it iso longer
3622 necessary to abbreviate them.
3624 2011-12-29 15:38:46 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3625 Implement peeking previous position in WinBoard
3627 The backspace key is used to temporarily display the previous position.
3629 2011-12-29 15:32:20 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3630 Fix parsing of faulty PGN tags
3632 A closing bracket could be missed in a malformed tag
3634 2011-12-29 15:29:00 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3635 Fix parser for variant seirawan
3637 The new parser didnot understand gating suffixes with /, and did not
3638 allow any suffix at all on SAN castling moves.
3640 2011-12-28 22:32:38 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3641 Try to not confuse ICS rating adustments as shouts
3643 An explicit pattern match for the rating adjustment is added before
3644 matching the shouts.
3646 2011-12-28 22:21:54 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3647 Describe -overrideLineGap option in texi file
3650 2011-12-28 22:03:30 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3651 Use <Enter> in stead of Ctrl+. for peeking last move
3653 I commented out the explicit detection of the Ctrl key, as this
3654 is not needed when there are no 'unnatural' Ctrl keystrokes used
3657 2011-12-28 19:37:49 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3658 Next try for menu-bar sizing
3660 This time request the width needed to just fit everything, and then start
3661 shaving off pixels from the currently largest until the entire thing fits.
3663 2011-12-28 15:17:49 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3664 Clip texts on menu bar
3666 The width of the items on the main menu bar is restricted so the bar
3667 will never exceed board width.
3669 2011-12-28 14:01:53 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3670 Fix format in temporary timing printf
3673 2011-12-28 13:38:59 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3674 Don't test drops as mate evasions in variant seirawan
3677 2011-12-28 13:36:23 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3678 Fix ICS castling rights
3680 Copying the castling rights together with CopyBoard seems to have
3681 broken handling of ICS rights, where ParseBoard12 prepares a board
3682 in a local variable, an copies it before parsing the rights.
3684 2011-12-28 13:35:10 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3685 Fix initial holdings ICS seirawan games
3688 2011-12-27 18:31:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3689 Fix sending of S-Chess gating moves to ICS
3691 Normal moves did not get the gating suffix sent.
3693 2011-12-27 17:56:07 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3694 Fix menu grayout after illegal move
3696 TheThinkingEnables were not reset to user state after the engine rejected
3697 the entered move as illegal.
3699 2011-12-27 13:26:36 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3700 Allow setting of holdings with edit command
3702 For the benefit of Fairy-Max' Seirawan Chess implementation, the edit command
3703 no also sends holdings contents (if the engine sent feature xedit=1), encoded
3704 as pieceType + '@' + holdingsCount (if the count is non-zero).
3706 2011-12-24 17:54:16 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3707 Fix out-of-bounds access in check test
3709 Thepath to make the check test work with drops had broken the test
3710 after null move (both have rf<0), which led to corruption of the high
3711 word of the black clock.
3713 2011-12-24 17:51:22 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3714 Fix legality of Spartan promotion to king
3716 In the check test promotion to King is only allowed if there are not
3719 2011-12-21 22:17:01 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3720 Fix switching back from mono-mode XB
3722 Suppressing unnecesary X-server calls in InitDrawingSizes had broken
3723 switching back from monoMode, because the animVars have to be recreated
3724 for that, and this was only done when the variant changed.
3726 2011-12-21 22:09:02 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3727 Fix showTargetSquares in mono-mode XB
3729 Make the marker dots black (captures) and white, and draw a circle
3730 in the opposite color around them in monoMode.
3732 2011-12-21 22:00:26 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3733 Fix arrow highlighting in mono-mode XB
3735 Draw a line around it in darkSquare color in monoMode.
3737 2011-12-21 17:48:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3738 Fix alignment of generic browse button XBoard
3740 The width ofthe browse button is now read back after creating it,
3741 and subtracted from the preceding text edit.
3743 2011-12-21 14:41:31 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3744 Add -afterTourney option
3746 Only the instance pinting the tourney result will execute this.
3748 2011-12-22 21:01:43 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
3749 Fix buffer possible overflow when writings tags
3751 PGNTagsStatic() could overflow its buffer and is removed. PGNTags() do the work instead of calling it.
3752 It starts by calculation the required buffer size and then allocate the buffer.
3753 PrintPGNTags() now prints directly to the file without having a buffer.
3755 2011-12-22 15:01:31 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
3756 One more string marked for translation
3758 And it is moved inside the if statement that uses it.
3760 2011-12-22 14:30:08 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
3761 Fix checking of return value from snprintf()
3763 snprintf() returns the needed space excluding the trailing 0 byte, so
3764 it has truncated if the returned valued is greater than or EQUAL TO the buffersize
3766 2011-12-19 16:49:31 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
3767 Fix unportable memory initialisation
3769 Memory sat to zero by calloc() cannot safely be assumed to have the pointer value NULL
3771 2011-12-19 13:16:58 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
3772 Add 2 strings for translation
3775 2011-12-19 11:25:11 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
3776 Remove the last 2 compile warnings in gamelist.h
3779 2011-12-19 11:17:48 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
3780 Add #include "moves.h" to gamelist.c for def. of CopyBoard()
3783 2011-12-19 11:11:34 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
3784 Definition of TimeMark moved from 3 c files to backend.h
3787 2011-12-19 01:21:46 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
3788 Transfer a pointer to the promoChar from PromotionPopUp() to PromotionCallback(). Fixes #34980
3791 2011-12-18 17:24:07 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
3792 Duh! Initialise the argument to sscanf() inside the loop, so it always gets a known value when sscanf() fails.
3795 2011-12-18 17:18:12 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
3796 Give numeric options the value 0 if a non-numeric text is entered (one more place). Before the value ended up undefined.
3799 2011-12-18 17:08:46 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
3800 Give numeric options the value 0 if a non-numeric text is entered. Before the value ended up undefined.
3803 2011-12-18 15:41:46 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
3804 Fix possible crash on 64-bit systems when copying game or position
3806 The two convertproc's for X selections caused reads out of bounds on 64-bit systems.
3807 I hope that this is the right solution. I am not experienced with X stuff, but it
3808 follows that I have seen in other programs, testing shows that copying still works,
3809 and the reading out of bounds have disappearinged with this patch.
3811 2011-12-18 13:26:20 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
3812 Fix a possible crash in the file browser
3814 If the OK button was selected in the file browser when no file was selected
3815 there was a read out of bounds which could crash xboard
3817 2011-12-17 22:54:34 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
3818 Fix a memory leak in Sound Options
3821 2011-12-16 02:57:20 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
3822 Fix crash when selecting user soundfile due to free() of not malloc()'ed memory
3825 2011-12-16 02:32:37 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
3826 Make GenericPopUp() more readable by using more named flags instead of numerals
3828 Defines the flags SAME_ROW (value 1) and NO_OK (value 2) for use with buttons and endmarks.
3829 There should no functional change.
3830 Also add a code comment where a condition depends on an uninitialised value. There is no direct harm, as both
3831 branches do the same (that is nothing) when the value is uninitialised.
3833 2011-12-15 02:51:36 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
3834 Add NO_GETTEXT flag for combobox. Fix bug #34991
3836 Define NO_GETTEXT flag to avoid calling gettext() for comboboxes, and define COMBO_CALLBACK
3837 flag to call comboCallback() when an item is selected in a combobox (no new code for this,
3838 just a symbolic value instead of a number). The flags are used for the min field of struct Option.
3839 NO_GETTEXT is used for the Select engine combobixes in the Match Options and Load engine windows.
3841 2011-12-13 19:48:37 -0800 Arun Persaud <arun@nubati.net>:
3842 only translate entries in CreateComboPopup if strlen>0; fixes #34991
3845 2011-12-12 19:06:26 -0800 Byrial Jensen <byrial@vip.cybercity.dk>:
3846 fix for repeating key issue, with this allissues this bug should be closed; fixes #35000
3849 2011-12-12 18:45:05 -0800 Arun Persaud <arun@nubati.net>:
3850 also don't translate selection in ComboSelect; fixes #34991
3853 2011-12-12 18:40:23 -0800 Arun Persaud <arun@nubati.net>:
3854 make entries in CreateComboPopup not translateable; fixes #34991
3857 2011-12-10 16:06:47 -0800 Arun Persaud <arun@nubati.net>:
3858 fix translation for engine list; fixes #34991
3860 * click on browse button should be recognized in translated versions
3861 * width of button should auto-scale
3863 2011-12-10 11:04:17 -0800 Arun Persaud <arun@nubati.net>:
3864 change keybindings that don't use ctrl, make MoveTypeInProc ctrl aware; fixes #35000
3866 two keybindings were using keys without modifiers, adjusted these to use the ctrl key.
3867 Furthermore when typing in moves we need to check if ctrl was pressed and ignore those inputs.
3869 Also added documentation for these keybindings.
3871 2011-12-10 10:51:18 -0800 Arun Persaud <arun@nubati.net>:
3872 replaced unicode character for "'" in xboard.texi
3875 2011-12-10 10:08:48 -0800 Arun Persaud <arun@nubati.net>:
3876 removed Iconify function. Should be handled by the window manager.
3879 2011-12-08 20:53:13 -0800 Arun Persaud <arun@nubati.net>:
3880 marked an error messages for translation
3883 2011-12-08 20:33:29 -0800 Arun Persaud <arun@nubati.net>:
3884 translation: updated uk.po
3887 2011-12-03 17:52:23 -0800 Arun Persaud <arun@nubati.net>:
3888 fixed size of XBoard icon to 48x48
3890 the icon gets installed in the 48x48 directory, but was >200 pixel wide. This gave a warning during rpm creation.
3892 2011-12-03 08:07:32 -0800 Arun Persaud <arun@nubati.net>:
3895 marked a lot of new strings for translation
3897 2011-12-03 08:06:42 -0800 Arun Persaud <arun@nubati.net>:
3898 added new files to po/POTFILES.in
3901 2011-12-02 22:13:36 -0800 Arun Persaud <arun@nubati.net>:
3902 marked more strings for translation
3905 2011-12-02 20:08:01 -0800 Arun Persaud <arun@nubati.net>:
3906 translation: added danish translation
3909 2011-12-01 18:45:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3910 Change encoding of seirawan ICS gating-castlings
3912 In stead of using upper/lower-case promoChar, the ICS now uses
3913 RxK notation, like WinBoard writes in SAN, for better consistency.
3915 2011-11-30 15:38:21 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3916 Put promo-suffix on ICS move in variant seirawan castlings
3918 The distinction upper-case / lowercase determines gating at R / K
3920 2011-11-28 11:56:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3921 Refrain from making unnecessary resize X request
3923 The window resizing code in InitDrawingSizes is suppressed when no
3924 change is needed. Similarly, changing piece bitmaps is suppressed when
3925 we stay in the same variant (and InitDrawingSizes is called e.g. because
3926 of chaging lineGap through the Board dialog).
3928 2011-11-27 22:27:00 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3929 Fix parsing of O-O castling in variant janus
3931 The new parser did not realize it meant e1i1 rather than wild e1h1.
3933 2011-11-26 22:28:23 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3934 Show 50-move counter also when observing ICS games
3936 To not cheat 50-move display was suppressed in ICS mode,
3937 but for observing a game this made no sense.
3939 2011-11-26 22:22:07 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3940 Ignore ICS game starts when already in game
3942 The advance switching of the variant on game-start messages was
3943 disruptive for users with gin=1, which also sends such messages
3944 for other games than your own. For now fixed by only reacting on
3945 them when idle (detected by invalid game number).
3947 2011-11-11 18:16:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3948 Fix WinBoard clock-click bug
3950 Clicking on the clock in WinBoard also called the LeftClick routine
3951 for handling clicks on the board. This led to the from-square being set
3952 to some inalid value, so that the next genuine board click was interpreted
3953 as a to-click, with undesired effects, especially with legality testing off
3954 or in EditPosition mode, where weird things are accepted.
3956 2011-11-06 17:20:01 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3957 Add feature-override options
3959 A few (dangerous) options are added to allow a user to override
3960 engine features, or change their defaults, by supplying a string
3961 with feature commands (e.g. "sigint=0") which tricks XBoard into
3962 thinking the engine sent that. There is a -featureDefaults which is
3963 processed before the engine features, and -first/secondFeatures
3964 which is parsed just before engine initialization.
3965 This goes horribly wrong when the user wouldtry silly things like
3966 including 'option' or 'done' features!
3968 2011-11-05 12:32:39 -0700 Arun Persaud <arun@nubati.net>:
3969 translation: updated uk.po
3972 2011-11-04 21:58:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3973 Fix handling of -secondOptions option
3975 The -firstOptions and -secondOptions settigs were not swapped when
3976 -singleEngieList was true, so the second engine's options would never
3977 be set in that case, but used for the first engine.
3979 2011-11-04 21:55:21 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3980 Accept setup command in variant fairy even with legality testing on
3982 Variant fairy does not really have a defined opening position, but lots
3983 of pieces defined, so we might want to play with legality checking on,
3984 but still rely on the engine for the opening position
3986 2011-11-04 21:52:20 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3987 Set pieceToCharTable by setup command even when ignoring FEN
3989 When the user starts from a set-up position, the egines default
3990 openingposition has to be ignored, but the pieceToCharTable would
3993 2011-11-04 21:48:24 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3994 Change default sweep-promotion choicein queenless variants
3996 The initial scanning of the sweep piece until a defined piece is found
3997 is now in the increasing direction (still starting at Queen), so that
3998 the fairy pieces are suggested before R, B and N.
4000 2011-11-03 16:38:57 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
4001 Clear board markers when moving to other position
4003 Now the markers from -showTargetSquares would stay on after a first click
4004 for the benefit of a click-click move, they would also stay on when not
4005 finishing the move, but operating the < > buttons in stead to call up
4006 other positions. ForwardInner and BackwardInner now clear the markers,
4007 like they also cleared highlights.
4009 2011-11-01 18:30:22 -0700 Arun Persaud <arun@nubati.net>:
4010 updated Changelog, NEWS, etc.
4012 2011-10-25 15:32:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4015 2011-10-24 20:00:28 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4016 Don't adjust clock on right-click in EditGame mode WB
4018 This was a change that was already done for the left-clicks, but somehow
4019 never made it togit for the right-clicks
4021 2011-10-24 19:50:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4022 Change chase message in .lng files
4024 2011-10-24 19:31:08 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4025 Let perpetual-chase message mention square
4027 In stead of a boolean, PerpetualChase now returns the square the chased
4028 piece ends on (encoded as an int), and on adjudication it will be printed.
4030 2011-10-24 19:26:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4031 Add mechanism to translate variable messages in WinBoard
4033 A message prefixed with % in the lng file will be considered a match
4034 if it matches the start of the text to be printed, and the remaining
4035 part of the latter will remain untranslated. This was needed to allow
4036 translation of the perpetual change message, now it indicates the square
4037 of the chased piece.
4039 2011-10-24 19:20:13 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4040 Use other interpretation of Asia rules for chase detection
4042 The detection of perpetual chases now ignores pre-existing checks.
4044 2011-10-12 17:28:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4045 Fix crash on loading garbage game file
4047 The code to cache games was not resistant to moves before a valid
4048 game start, or a game filewithout any games at all.
4050 2011-10-08 20:43:52 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4051 Incorporate variant type in book hash key
4053 This prevents booksforone variant being used for another, and allows
4054 multi-variant books.
4056 2011-10-07 15:41:44 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4057 Update language.txt file
4060 2011-10-07 15:34:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4061 Update Dutch lng file
4064 2011-10-07 15:21:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4065 Fix Load Options dialog WB
4067 Defined fastkeys; reordered elements so that fastkeys focus edit they
4068 are intended for. Changed some of the more obscure texts. Corrected
4069 list of transatble dialog items, adding a few missing ones.
4071 2011-09-13 20:01:42 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4074 Prototypes were added, ormoved from backend.c to backend.h.
4076 2011-08-26 12:44:08 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4077 Put 'Load Next' button back in WB Game List
4079 The '>' button for loading the next (filtered) game is re-instated in the
4080 WinBoard GameList. The main window has now accelerator keys Ctrl+Up and
4081 Ctrl+Down for loading the previous and next filtered game.
4083 2011-08-26 12:31:59 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4084 Speed up position search and consider side to move
4086 The position search is made to pay attention to the side to move,
4087 which produces a speedup, because we only have to compare half the
4088 game positions when looking for an exact position match. An addition
4089 we now keep track of the total number of pieces, and abandon a game when
4090 it drops below the number of pieces in the position we seek.
4092 2011-08-21 23:16:15 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4093 Dynamically allocate move cache
4095 A small statically declared cache good for 250k moves (~3200 games)
4096 will be expanded in steps of a factor 8 when it overflows.
4098 2011-08-18 18:40:38 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4099 Translate search strings
4102 2011-08-17 22:55:21 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4103 Implement flipped search
4106 2011-08-16 15:29:03 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4107 Debug position search cache
4110 2011-08-15 18:44:37 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4114 2011-08-18 18:01:54 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4115 Translate search-mode strings
4118 2011-08-15 16:59:39 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4122 2011-10-23 16:04:00 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4123 Fix duplicate loading of second engine in tourneys
4125 To decide if new engines should be loaded, it was tested if first.pr
4126 equalled NoProc, assuming that ReserveGame would have left the engine
4127 loaded if the next game would need the same engines. But a reuse=0 engine
4128 could have caused termination of the first engine process anyway, while
4129 the second would still be alive. So unconditionally starting of the second
4130 engine would cause redundant engine processes to abound.
4131 Now we only start new engine processes if both engine processes are dead.
4133 2011-10-23 15:53:32 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4134 Fix PV walking with -fSAN
4136 The SAN options had broken the PV walking, because the shelving of the
4137 walked PV to create space for the conversion to SAN of an incoming PV
4138 would not be properly undone, but would add the walked PV to the game.
4140 2011-10-20 12:39:10 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4141 Refine clock adjusting
4143 Adjusting the clocks by shift-clicking them is now only allowed with
4144 autoCallFlag off, and an error-popup results when you do it otherwise.
4145 Also, swtching to Edit Game mode won't reset the clocks to the stored
4146 value anymore when you have just adjusted it.
4148 2011-10-12 17:43:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4149 Fix crash on adding items near book end
4151 When Edit Book would add so many entries near the end of an opening
4152 book that the end of the added info would surpass the old end of the
4153 file, the copying of the tail got stuck in an infinite loop, extending
4154 the file without limit with repeating info.
4156 2011-10-12 17:41:18 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4157 Print message on wrong use of Clone Tourney
4159 The user is urged to first provide the name of an existing tourney file
4160 when he presses the button without one. The button is also renamed.
4162 2011-10-12 17:38:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4163 Fix invalid combobox entry WB
4165 A combobox label that was not in the list (because the user typed
4166 it, rather than selecting one) would cause a crash.
4168 2011-10-12 17:23:57 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4169 Fix crash on loading garbage game file
4171 XBoard crashed when a game file contained a PGN game result before
4172 any valid game start, because data would be written in a game-list
4173 node that did not exist yet. This would occur frequently when garage
4174 was read; basically any asterisk in the data would do it.
4176 2011-10-11 23:31:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4177 Add control to set -discourageOwnBooks WB
4180 2011-10-11 20:53:52 -0700 Arun Persaud <arun@nubati.net>:
4181 only require 0.17 of gettext
4183 This seems to solve many build issues with older distrubtions and doesn't seem to be a problem with newer ones.
4185 2011-10-11 23:31:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4186 Add option -discourageOwnBooks
4188 This boolean option determines the default setting of the hasOwnBook
4189 option before a tourney game starts. By setting it, the hasOwnBook
4190 option is cleared, which would enable use of the GUI book, like the
4191 engine was installedwith the /firstXBook option. An explicit option
4192 on the engine install line can still overrule this, though.
4193 A control to set this option has been added in the XBoard Match dialog,
4194 and it is saved in the tourney file to force consistency.
4196 2011-10-11 22:58:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4197 Reset initString and computerString on engine load
4199 These options are typically engine specific, and must thus be
4200 reset to their default value before loading a new engine.
4202 2011-10-11 22:43:00 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4203 Add Romanian lng file
4206 2011-10-07 16:55:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4207 Reactivate Falcon Chess
4209 Now the patent for this has expired, Fairy-Max plays it again.
4210 So the XBoard support for it is now switched on, and an item for it is
4211 added to the XBoard New Variant menu dialog. (WinBoard still had that.)
4212 In the array the Lance was changed for the Falcon as a wild-card piece.
4214 2011-10-03 09:59:40 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4215 Update texi file for new features
4218 2011-10-03 10:30:30 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4219 Update texi file for position search
4221 The new items in the Load Game Options dialog are described, as well
4222 as the command-line options used to store them in the settings file.
4224 2011-10-03 09:28:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4225 Remove paragraph about .Xresources from texi file
4227 Command-line options can no longer be set through .Xresources already
4228 since version 4.5.0.
4230 2011-10-03 09:13:05 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4231 Add Dutch WinBoard translation
4234 2011-09-28 20:46:21 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4235 Prevent Edit Book window from stealing focus (WB)
4237 In WinBoard updating the book window would give it focus. Now the
4238 focus is given back to the main window, except when the Edit Book
4239 window is first created.
4241 2011-09-28 20:42:00 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4242 Make book-window update part of HistorySet
4245 2011-09-26 16:01:28 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4246 Fix position loading in tourneys
4248 In a tourney a position must be loaded when the engine is not yet
4249 started, and the old version of LoadPosition could not handle that:
4250 It would start up the engine, and send it commands unconditionally.
4252 2011-09-26 15:58:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4253 Fix resetting -fSAN on engine change
4255 There were two places for loading another engine, Load (from menu) and
4256 SetPlayer (in tourneys), and the previous patch for this missed the
4259 2011-09-26 15:51:49 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4260 Make too-long game non-fatal
4262 GameEnds is now called when the maximum number of moves is exceeded,
4263 rather than DisplayFatalError. Not sure if this properly terminates the
4264 game in all situations, but DisplayFatalError (after calling GameEnds)
4265 would also wait for the user to confirm the error popup before really
4266 exiting, so that in an unattended automatically running tourney there
4267 was not much fatal, and the entire tourney would in fact be finished.
4269 2011-09-26 15:46:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4272 Rather than opening and closing the book file on every probe, it is
4273 now only closed and opened when the name of it changed.
4275 2011-09-26 15:44:23 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4276 Suppress playing of book moves with weight 0
4278 Bookmoves with weight 0 could be played when the sum of the weights
4279 of all moves from the position was 0. So it was not possible to suppress
4280 the only move by giving it weight 0. This is now corrected.
4282 2011-10-01 15:00:47 -0700 Arun Persaud <arun@nubati.net>:
4283 added NEWS for release of 4.5.3
4286 2011-09-29 20:31:23 -0700 Arun Persaud <arun@nubati.net>:
4287 better contrast for XBoard icon on a dark background
4290 2011-10-01 13:09:59 -0700 Arun Persaud <arun@nubati.net>:
4291 translationproject.org: updated Ukrainian translation
4294 2011-09-29 20:49:42 -0700 Arun Persaud <arun@nubati.net>:
4295 updated pot file and send to translation project
4298 2011-09-22 12:09:39 +0100 Thomas Adam <thomas@fvwm.org>:
4299 (tiny change) Clarify "-name" option is Xt-only
4301 There's a set of standard options with will get used by Xt, before Xboard
4302 itself will use them. "-name" is an Xt-only option which will set the name
4303 and resource of the window to the value requested. It has nothing to do
4304 with setting opponent/player names.
4306 Signed-off-by: Thomas Adam <thomas@fvwm.org>
4308 modified slightly by Arun Persaud (renamed itemx to item and fixed option name for CMAIL)
4310 2011-09-22 17:17:16 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4311 Fix LoadGameOrPosition starting up engine
4313 When LoadGameOrPosition() is called from NextMatchGame(), the Reset() that
4314 is called in LoadPosition() when you are running from a position file
4315 would prematurely start up the engine (without waiting for features).
4316 The kludge to suppress this behavior for the explicit call to Reset()
4317 is now extended to encompass LoadGameOrPosition.
4319 2011-09-22 17:14:34 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4320 Clear fSAN option before new engine load
4322 This to prevent the new engine will inherit it from the previous one.
4323 As the command-line options an only set it, this has to be done by
4324 explicit assignment.
4326 2011-09-13 23:02:35 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4327 Fix some warnings (prototypes)
4330 2011-09-13 19:55:44 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4331 Fix write failures in concurrency
4333 In WinBoard a flood of writes by differentprocesses to the same PGN can
4334 cause a "permission denied" error in fopen. This patch causes retries after
4335 a random (5-15 msec) wait, in such cases.
4337 2011-09-13 19:52:19 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4338 Move HistorySet to back-end
4340 This existed in exact duplicates in both front-ends.
4342 2011-09-13 19:46:36 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4343 Make DoSleep front-end wrapper for msec sleep
4345 DoSleep was #defined as a macro for Sleep/ sleep, with an argument
4346 indicating msec in WinBoard, but seconds in XBoard. Nuw it universally
4347 uses msec, by defining it as a wrapperin the respective front-ends.
4348 (For XBoard itwraps FrameDelay.)
4350 2011-09-10 22:35:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4351 Fix playing sounds when -soundProgram is empty
4353 It made no sense to just send the names of the sound files to the shell.
4354 So the soundProgram isnow tested for being an empty string, and if so,
4355 PlaySound() is aborted.
4357 2011-09-10 14:01:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4358 Add -afterGame option
4360 This option specifies a command line to be executed after each game of
4361 a tournament. To execute the line, the function RunCommand() was added
4362 in the front-end. For XBoard this was a simple call to system(); for
4363 WinBoard part of the StartChildProcess code was cloned (without the pipe
4366 2011-09-10 13:52:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4367 Upgrade -serverMoves option
4369 The (undocumented) -serverMoves option was upgraded to conform to the
4370 ChessLive! protocol extension for sending SAN tags. A bug that allowed
4371 upper-case promoChar to leak through was also fixed, and code was added
4372 to write engine PVs to file. Flushing of the game result to the -serverMoves
4373 file was also fixed.
4375 2011-09-10 13:50:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4378 The joining of two comments was not performed correctly if the second
4379 one had the braces yet to be added: the closing brace was not added in
4382 2011-08-30 19:39:59 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4383 Auto-popup ICS Input Box
4385 Typing to the board made the move type-in pop up, but in ICS mode
4386 this is of course undesirable. Like in WinBoard, the ICS Input Box
4387 should pop up in stead, and accept the typed character. This is now
4388 realized. If the box already exists and has text in it, the typed
4389 character is appended to that text, and the box is given focus.
4390 Spaces now also are considered as printable.
4392 2011-08-30 18:27:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
4393 Slightly decrease sensitivity of sweep actions
4395 The sweep-selection of promotion and drop pieces, or step through the PV
4396 was so sensitive that it was difficult to reliably make the intended choice.
4397 It has now been reduced by a factor 1.5-2, and the sweep selection and
4398 PV walk now also use a different value.