Reparse ambiguous move under built-in rules
[xboard.git] / ChangeLog
1 ChangeLog for XBoard/WinBoard
2 -----------------------------
3
4 (latest entries created by git log --no-merges --pretty="%ai %an <%ae>:%n%s%n%n%b" vlast.. )
5
6 2014-01-05 12:52:46 -0800 Arun Persaud <arun@nubati.net>:
7 updated po/pot files
8
9
10 2014-01-05 12:51:50 -0800 Arun Persaud <arun@nubati.net>:
11 new version number for release 4.7.3
12
13
14 2014-01-05 10:58:48 -0800 Arun Persaud <arun@nubati.net>:
15 updated copyright to 2014 in menu.c
16
17
18 2014-01-05 10:37:56 -0800 Arun Persaud <arun@nubati.net>:
19 removed .DS_Store file from git
20
21
22 2014-01-05 10:34:08 -0800 Arun Persaud <arun@nubati.net>:
23 Updated copyright notice to 2014
24
25
26 2014-01-05 10:27:53 -0800 Arun Persaud <arun@nubati.net>:
27 cleanup some trailing whitespaces
28
29
30 2013-12-29 13:46:40 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
31 Fix crash on use of dialog Browse buttons GTK
32
33 The code to set a filter did not expect multiple extensions, and would
34 cause a buffer overrun when there were.
35
36 2013-12-27 20:12:23 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
37 Make building of Windows .hlp file optional
38
39 By using && and || operators in the build recipe, the building of WinBoard
40 with Cygwin is now not aborted whe the Help Compiler is not installed.
41
42 2014-01-05 11:47:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
43 Use __APPLE__ compile switch for OS X
44
45 It seems that on Apple machines the compiler will always define the
46 symbol __APPLE__, so this is now used instead of OSX, which had to
47 be defined with a -DOSX compiler flag. The gtkmacintegration header
48 is now using <> in stead of "" in its #include. (Strange enough both
49 were working.)
50
51 2014-01-04 12:18:30 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
52 Expand ~~/ to bundle path (OSX)
53
54 DATADIR is #defined in WinBoard as "~~" to make the expansion a no-op
55 there. Same for Linux compiles. For OS X it is #defined as a variable,
56 obtained from GTK-OSX at startup.
57
58 2013-12-29 23:27:12 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
59 Activate ManProc in GTK
60
61
62 2013-12-29 22:14:06 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
63 Remove use of strndup
64
65 The use of strndup was actually unsafe, as the length was passed using
66 an ordinary strlen. strndup was not availableon OS X 10.6, and is now
67 replaced by an ordinary strdup, which should be save enough.
68
69 2013-12-29 22:09:10 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
70 Put some OSX code into gtk version
71
72 Under control of #ifdef OSX code is added to integrate the GTK front-end
73 into OS X. This involves moving the menu bar to outside the window, and
74 catching the signal that OS X sends to running applications when opening
75 another instance was requested. Som files are renamed to conform to the
76 file tree of the OS X App package.
77
78 2013-12-27 21:47:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
79 Cure weirdness when dragging outside of board
80
81 Dragging outside the board (when people maximized the window) did not
82 properly restore background, (leaving a trail of dragged piece). Filling
83 the canvas with white when it is creatd cured this. The problem most likely
84 was that unitialized cairo surfaces had transparancy, and writing back
85 transparancy doesn't helpmuch to erase things.
86
87 2013-12-09 14:52:32 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
88 Fix sorting of lines in Engine Output
89
90 Lines tat were fail-lows or fail-ighs should get the scores on the basis
91 of wich they are sorted corrected to that of te line (for the same move)
92 superceding them, so that other moves can rise to above them, when they
93 score higher than the corrected score.
94
95 2013-12-05 20:08:35 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
96 Make filler variant button inactive
97
98
99 2013-12-05 17:50:21 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
100 Fix packing of FRC castlings
101
102 The routine for packing moves to the internal database format was not
103 working for FRC castlings, totally messing up position search for FRC
104 and CRC.
105
106 2013-12-05 16:23:53 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
107 Fix Xaw file-browser New Directory
108
109 Prevent people from using the error messages that will be printed here
110 as directory name by pressing New Directory a second time after first
111 pressing it with an empty or existing name.
112
113 2013-12-05 16:14:02 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
114 Widen Xaw text entries for larger square sizes
115
116 Presumably people will use larger fonts if they use larger board squares.
117 (And in any case te default fonts would be larger.) This means they need
118 more space to see what is the current value of text options.
119
120 2013-12-05 15:47:26 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
121 Remove width limiting of shuffle checkbox
122
123
124 2013-11-28 13:30:40 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
125 Allow castling and e.p. to be edited in opening book
126
127
128 2013-09-16 22:32:32 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
129 Repair FRC A-side castling legality testing
130
131 XBoard allowed A-side castling when a rook started on the a-file,
132 and the b-file was blocked.
133
134 2013-09-16 22:27:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
135 Repair XBoard from node-count patch
136
137 u64 was #defined in backend.h, which unfortunately was almost alwats
138 (Not sure why WinBoard did not suffer from this!) This, and related
139 definitions have now been moved to common.h (which is always #included
140 first).
141
142 2013-09-15 20:13:06 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
143 WinBoard multi-monitor support
144
145 A patch provided by Tim Kosse
146
147 2013-09-15 19:28:54 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
148 Fix node count range
149
150 The node count was still clipped to 32 bit because one of the structs
151 it passes through (FrontEndProgramStats) had the nodes field declared
152 as an unsigned long.
153
154 2013-09-15 19:12:42 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
155 Fix adjudication of Giveaway stalemates
156
157 The case where the side-to-move would win by stalemate was not treated
158 in the Adjudicate switch.
159
160 2013-08-30 17:33:59 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
161 Fix buffer overflow in parser
162
163 When a line ended with a comment, the parser had to read a line ahead
164 to check if there was a PGNresult following, without being able to
165 throw away the previous line yet. This could lead to buffer overflow
166 in a long game where every line ended in a comment. The buffer now is
167 cleansed of already parsed data when starting on a new syntactical unit.
168
169 2013-08-27 22:55:52 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
170 Fix -zippyVariants option
171
172 Due to the change of cps->variants from (char []) to (char *), copying
173 zippyVariants to it on behalf of v1 engines would no longer work. This
174 is fixed by using ASSIGN() in stead of safeStrCpy().
175
176 2013-08-26 18:25:55 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
177 Fix initial board sizing WB
178
179 The initial board size was based on the assumption the board would be 8x8.
180 This could push auxiliary windows off screen if the board was smaller,
181 after which EnsureOnScreen would undock them and park them in the upper-
182 right corner before the board assumed its true size. InitPos() is now called
183 before the initial sizing to et the board format correctly, InitDrawingSizes()
184 had to be made resitant to calling before a board size was picked for this
185 (because InitPos() might call that too).
186   ActivateTheme() now uses the new board size, not the previous one (as was
187 indicated by size -2), so that -boardSize specifications inside a theme
188 will take effect.
189   Board size petite should not be forbidden for Shogi; all pieces exist there.
190
191 2013-08-26 14:40:57 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
192 Fix grabbing of selected piece
193
194 A second static click on a selected piece should deselect it, but an attempt
195 to drag an already selected piece should not 'bounce off'. It was already
196 possible to move a selected piece to another square, but the dragging was
197 not animated. This is now fixed, by only skipping the code to start dragging
198 when the second click is part of the only-move double-click for only capture.
199 (Before it was skipped on any second click.)
200
201 2013-08-26 13:35:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
202 Allow entry of negative numbers in spin control (WB)
203
204 Windows numeric controls do not accept negative numbers, so in case the
205 range of a spin option can go negative, the style ES_NUMBER should not be
206 set on the control.
207
208 2013-08-26 11:37:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
209 Allow drops / promotions/ deferrals to be edited into book
210
211 For no real reason only NormalMove would be accepted when parsing the list
212 of book moves.
213
214 2013-08-26 11:28:54 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
215 Fix GUI book after setup position
216
217 The routine to send move to the engine would automatically append a 'go'
218 is a preious setboard had put the engine in force mode, but this should
219 not happen on a book hit, where the engine should even be put in force mode
220 if it was not yet there.
221
222 2013-07-05 18:32:46 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
223 Fix book creation
224
225 Due to duplicate use of the same file pointer variable the game file would be
226 closed before any games were read from it.
227
228 2013-05-20 11:14:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
229 Make PGN parser immune to unprotected time stamps
230
231 The parser choked on time stamps of the form dd:dd or dd:dd:dd if one
232 of the fields happened to be 00, because it wouldmistake that for a
233 non-compliant king-side castling. By excluding this interpretation when
234 the 00 is immediately preceded or followed by ':' this is now prevented.
235
236 2013-05-05 08:03:00 -0700 Arun Persaud <arun@nubati.net>:
237 updated po files for new release (make distcheck)
238
239
240 2013-05-05 07:57:22 -0700 Arun Persaud <arun@nubati.net>:
241 new version number for release 4.7.1
242
243
244 2013-05-05 07:53:54 -0700 Arun Persaud <arun@nubati.net>:
245 updated Changelog, NEWS, etc.
246
247
248 2013-05-02 22:47:44 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
249 Update zippy.README
250
251 It is explained how to generate multi-line commands for -zipyGameEnd.
252
253 2013-04-01 20:43:36 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
254 Fix Xaw file browser
255
256 The 'next page' entry of the Xaw file browser contained a \177 character
257 to keep at sorted at the bottom. This caused trouble for gettext.
258 Now the sorting range is adapted so the 'next page' is never part of it.
259   More seriously, the listbox fill code had a wrong cast when testing for
260 an empty listbox on the first element, so that it only tested the low byte
261 of the pointer, in stead of the entire pointer for NULLness. As a result
262 the contents of the listboxes could suddenly disappear when even when it
263 was non-empty, because the first filename was allocated at an unlucky address.
264
265 2013-03-22 19:23:25 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
266 Make Chat Box window obey -topLevel option
267
268 It was always popping up as a dialog of the main board, covering it.
269 One could argue it should always be to-level.
270
271 2013-03-19 13:20:24 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
272 Fix scrolling of Chat Box
273
274 Seems the problem is that scroll_to_iter does not work until after some time,
275 needed to calculate line heights. Use scroll_to_mark instead, after clumsily
276 adding a text_mark.
277
278 2013-03-17 10:33:31 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
279 Fix GTK SetInsertPos
280
281 SetInsertPos() was not yet ported to GTK, with as a result that the cursor
282 was positioned at the start of a line recalled in the ICS Input Box,
283 rather than at the end. The code also called SetInsertPos to force scrolling
284 to that point in the text (which in Xaw is an automatic side effect). So for
285 multi-line text edits this function calls ScrollToCursor(). For some reason
286 this does not work when replacing texts in the Chat Box memo, when switching
287 chat, although it does work in the same memo when a line is added to the
288 existing text.
289
290 2013-03-07 21:38:43 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
291 Print score of final position in Analyze Game
292
293 The score/depth of the final position of the analyed game is added
294 (as an explicit comment) behind the PV of the forelast position.
295 To make this work, a new 'addBraces' mode (3) had to be added to
296 AppendComment, which suppresses stripping of the score/depth from
297 the comment.
298
299 2013-03-12 18:50:08 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
300 Fix horrible bug in reading scores from PGN
301
302 Reading scores like -0.94 flipped the sign, because the integer part
303 -0 would read as 0, and thus was no reason for sign flipping.
304
305 2013-03-10 12:43:59 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
306 Fix disappearence of pieces that were moved illegally
307
308 Dragging damages the from-square, but it is not marked as such, because
309 selective board redraws to update highlights and such would draw the piece
310 that is really still there, making it flash on the from-square before
311 the position after the move is drawn. This, however, backfires when the
312 move was illegal, as then there is no draw of a new position, and the
313 from-square stays empty. For now this is solved by making DisplayMoveError()
314 order a total redraw. (As this is rare, only done in case of an error,
315 and might even throw up a pop-up, the performance cost of this is acceptable.)
316
317 2013-03-20 17:50:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
318 Fix quoting of book name in tourney file
319
320 The argument of -polyglotBook was written to the tourney file unquoted,
321 which effectively made it disappear if it was an empty or blank string.
322
323 2013-03-07 18:11:31 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
324 Provide compatibility with Alien Edition setup command
325
326 The setup command of the Alien Edition has a board-size specifier
327 (possibly as prefix on a parent-variant name) between pieceToCharTable
328 and FEN. The regular version would choke on that, precluding engines
329 designed for the Alien protocol extension to have their setup processed
330 when running under regular XBoard. This patch makes it skip the extra info.
331
332 2013-03-07 17:52:02 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
333 Fix saving of analyzed game
334
335 Anotated games after batch-mode Analyze Game were not auto-saved,
336 because the GameEnds() call supposed to do that was called with a NULL
337 argument for resultDetails. Now it is called with the resultDetails as
338 pre-existing in the gameInfo, or an empty string if none exist. This bug
339 was masked by the fact that in standard game ends (mate, etc.) the
340 analyzing engine would declare game end and supply a message.
341  Also makes a distinction between Analyze Game and regular Analyze mode
342 when resuming analysis after loading a game; only the former now would
343 trigger a batch analysis.
344
345 2013-03-07 17:48:45 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
346 Fix spurious popup after batch-mode Analyze Game
347
348 A batch analysis of games was not properly terminated, because the game
349 mode was tested after it had already been changed. No oldGameMode is
350 tested in stead.
351
352 2013-03-02 22:21:29 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
353 Let XBoard -autoBox option also affect move type-in
354
355
356 2013-03-02 22:17:31 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
357 Fix GTK box popup
358
359 Key values > 255 are used for PgUp, PgDown etc., so to pop up only on
360 printables needs a two-sided test.
361
362 2013-03-01 12:50:06 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
363 Fix fatal error on unsupported board size
364
365 When a board size unsupported by the engine was requested through the
366 New Variant dialog, this was discovered while the dialog was still up,
367 causing the error message to pop up as a child of the New Variant dialog,
368 so that it would immediately be taken down as the latter closed.
369 As a result it could not be confirmed, so that XBoard would not exit, and
370 was left in a pathologic state (ignoring window-close). This is fixed
371 by performing Reset (which detects the error) after PopDown of New Variant.
372
373 2013-03-01 12:39:40 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
374 Accept setup command for non-standard board size
375
376 The code to test if board-size is standard for the current variant
377 has been moved to a subroutine, to allow its calling when receiving
378 a "setup" command from the engine.
379
380 2013-03-01 11:57:01 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
381 Fix buffer overflow in feature parsing
382
383 String features (variants, egt, myname and option) relied on a buf[MSG_SIZ]
384 for processing their value. The Nebiyu engine had combobox options that
385 required more than that. All string features are now stored in allocated
386 memory rather than in static arrays, and StringFeature allocates a buffer
387 of sufficient size for them. Only limitation now is the low-level input
388 buffer in the InputSource threads, whih is a static buffer of 4096
389 (=INPUT_SOURCE_BUF_SIZE) characters.
390
391 2013-02-27 23:44:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
392 Fix vertical sizing of GTK board
393
394 The clipping of the boad at the bottom was due to resizing of the clock
395 height when we first write it with a big font. This patch delays calculation
396 of the final size until after the clock height changes.
397
398 2013-02-26 21:13:32 -0800 Arun Persaud <arun@nubati.net>:
399 Updated German translation
400
401
402 2013-02-26 20:27:24 -0800 Arun Persaud <arun@nubati.net>:
403 Updated Ukrainian translations
404
405
406 2013-02-26 17:59:43 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
407 Fix of argument error
408
409 Oops. Pevious patch for skipping unknown multi-line arguments
410 was still buggy.
411
412 2013-02-26 17:44:10 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
413 Let popping up of WinBoard chatbox for channel open it
414
415 WinBoard now issues a +ch command for a channel when you pop up a chatbox
416 for that channel. A work-around is added for the fact that the public
417 FICS seems to ignore the first such command.
418
419 2013-02-26 17:27:59 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
420 Make skipping of unknown option smarter
421
422 To make XBoard better resistant to the presence of disbanded or future
423 options in its settings file, encountering those is no longer a fatal error.
424 But the error recovery only consisted of skipping the rest of the line.
425 This fails badly on string options with a multi-line value, which is
426 enclosed by {braces}. We now detect that case, to skip to } instead.
427
428 2013-02-26 17:15:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
429 Add -backupSettingsFile option
430
431 For better configurability of WinBoard, an option is added to optionally
432 read a settings file, namely if no other settings file (other than the
433 master file) was read so far. This can be used to import settings from
434 a previous version, without destroying its settings file.
435
436 2013-02-26 16:55:20 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
437 Repair WinBoard compile error
438
439 __GITVERSION was not defined in WinBoard, as it was only defined with a
440 compiler flag by ./configure, which WinBoard does not use.
441
442 2013-02-26 16:47:58 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
443 Work-around for Xt selection bug
444
445 In some Xt implementations calling extend-end with 0 params causes a crash,
446 although the mmanual specifies this should default to a call with 'PRIMARY'.
447 The default selection is now explicitly mentioned in all extend-end calls.
448
449 2013-02-24 09:31:57 -0800 Christoph Moench-Tegeder <cmt@burggraben.net>:
450 fix bug #38401: xboard.texi doesn't build with texinfo-5.0 (tiny change)
451
452 xboard-4.7.0's documentation is not buildable with texinfo-5.0, it fails with a lot of error messages from makeinfo like
453 ./xboard.texi:1026: @itemx must follow @item
454 makeinfo seems right, @itemx is not used as described in the texinfo manual.
455 Attached patch puts each item of the "Options" menu in it's own @subsection and formats the description of each item as a @table as neccessary. This way, xboard builds again and the manual doesn't look too bad.
456
457 2013-02-24 09:09:54 -0800 Arun Persaud <arun@nubati.net>:
458 updated po/pot files
459
460
461 2013-02-24 09:04:48 -0800 Arun Persaud <arun@nubati.net>:
462 new version number for developer release
463
464
465 2013-02-20 21:28:36 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
466 Try to make life more bearable in Xaw menus
467
468 The alignment still sucks, but not as much as before.
469
470 2013-02-20 19:26:17 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
471 Fix -topLevel option
472
473 This option was copletely ignored, after the refactorig.
474
475 2013-02-20 18:16:00 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
476 Fix testing for valid window placement Xaw
477
478
479 2013-02-20 12:15:08 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
480 Suppress printing of status line in dual-board mode
481
482
483 2013-02-20 11:56:12 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
484 Fix sizing of slave board GTK
485
486 For lack of a known method to specify a default size for Graph widgets,
487 we have to use the same system as for the main board: create with 0x0 size,
488 and measure the size of the outer window to determine margins.
489 After every popup we then resize to the required board size plus these
490 margins. (Awful...)
491
492 2013-02-20 10:08:09 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
493 Better handling of undefined window parameters
494
495 Repositioning and resizing a newly created dialog was based on the width
496 parameter of the stored sizing info being valid. Now it is separately
497 tested if the position is valid, so that sizing and moving can be done
498 independently. This allows us to store position info, but not size info
499 for the slave board, so that it automatically will use the size of the
500 main board when first opened.
501
502 2013-02-19 19:14:49 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
503 Limit debug print to debug mode
504
505
506 2013-02-19 19:14:00 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
507 Fix repositioning of GTK windows
508
509 After 'hide' and 'show' GTK would not position the window in the same place,
510 but center it on the parent. Now we reposition the window after 'show' based
511 on the WindowPlacement data (if available).
512
513 2013-02-19 18:52:41 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
514 Remember window params of slave board
515
516 The slave board now has been assigned a WindowPlacement, which is also
517 saved in the settings file, through new options -slaveX/Y/W/H.
518
519 2013-02-19 17:48:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
520 Fix repairing of arrow damage
521
522 The '2' bit in damage[][] to indicate the arrow was erroneously cleared,
523 rather than kept.
524
525 2013-02-18 19:55:20 -0800 Arun Persaud <arun@nubati.net>:
526 fix OK-response in gtk dialogs, see c7f8df124
527
528 the fix in c7f8df124 needs to be applied to both of those if cases
529
530 2013-02-18 17:11:32 -0800 Arun Persaud <arun@nubati.net>:
531 removed two more translations from debug output
532
533
534 2013-02-18 17:09:30 -0800 Arun Persaud <arun@nubati.net>:
535 fixed segfault of g_markup_printf_escaped which needs utf-8 strings
536
537 defined text-domain as utf-8 solved this
538
539 2013-02-18 13:38:51 -0800 Arun Persaud <arun@nubati.net>:
540 fixed gtk-warning
541
542
543 2013-02-18 10:06:36 -0800 Arun Persaud <arun@nubati.net>:
544 removed some translation calls for messages in the debug log
545
546
547 2013-02-18 09:46:53 -0800 Arun Persaud <arun@nubati.net>:
548 add keyboard shortcuts back into Xaw version
549
550
551 2013-02-17 14:13:30 -0800 Arun Persaud <arun@nubati.net>:
552 in debug mode also print the git-version if available during build
553
554
555 2013-02-18 21:19:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
556 Print game-list timing messages only in debug mode
557
558
559 2013-02-18 21:01:35 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
560 Fix title of top-level windows
561
562
563 2013-02-18 18:51:44 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
564 Cure GTK warning in top-level windows
565
566 There is no OK button in top-level windows, so the 'response' signal is
567 not defined, and should not be connected.
568
569 2013-02-18 18:33:34 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
570 Fix graying of Revert menu item
571
572 The new code was checkmarking it in stead of enabling it!
573
574 2013-02-18 11:38:29 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
575 Add -onlyOwnGames option
576
577 This suppresses auto-saving of ICS observed games.
578
579 2013-02-18 11:17:16 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
580 Allow display of 50-move counter in zippy mode
581
582 No chance it could be considered cheating there.
583
584 2013-02-18 10:48:53 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
585 Add new vertical pixel fudge
586
587 With the new GTK window type the board is 13 pixels too small.
588
589 2013-02-18 10:29:17 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
590 Don't add PV moves on board clicking in AnalyzeMode
591
592 Playing PV moves by right-clicking the PV was only intended for clicks
593 in the engine Output window, selecting from multi-PV analysis output,
594 where by default it plays only the first move. PV walkig by right-clicking
595 the board, however, would start the walk at the end even in AnalyzeMode,
596 and thus add the entire PV. Which is probably not useful. So adding moves
597 in that case has now completely been suppressed, so it can be used for
598 harmless viewing of the latest PV.
599  The behavior has also been made subject to a persistent Boolean option
600 -appendPV, configured to true, with a checkbox in General Options.
601  A checkbox has also been added there for controlling the -variations option,
602 which is now also configured to true.
603
604 2013-02-18 10:25:40 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
605 Remove checkbox for 'Move Sound'
606
607 This function is better controlled from the Sounds dialog.
608
609 2013-02-18 09:59:48 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
610 Make switching between board windows absolute
611
612 Selecting the window in which to draw the board when the slave board for
613 -dualBoard was up was done by a toggle. For unknown reason this could cause
614 a situation where the drawing took place in the other window than the
615 intended one. The code is made more robust by explicitly specifying which
616 window to draw in, based on the partnerUp flag.
617
618 2013-02-18 09:50:48 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
619 Warn about experimental nature of dual board
620
621 The message field, which for now is unused, now contains a warning message.
622
623 2013-02-17 10:49:21 -0800 Arun Persaud <arun@nubati.net>:
624 add close buttons to gtk windows
625
626 use windows instead of dialogs for toplevel elements
627
628 2013-02-16 19:02:52 -0800 Arun Persaud <arun@nubati.net>:
629 keyboard accelerators for both front ends.
630
631 moved them out of the string definition, so that gtk can add them automatically.
632 Also wrote a function that loads them for X11.
633
634 TODO: add them again when creating X11 menu names
635
636 2013-02-15 11:03:02 -0800 Arun Persaud <arun@nubati.net>:
637 added rotated shogi pieces for -flipback option and moved them to the themes directory
638
639
640 2013-02-14 17:27:27 -0800 Arun Persaud <arun@nubati.net>:
641 add test for pkg-config
642
643 exit configure in case we can't find it.
644
645 2013-02-14 13:02:08 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
646 Only perform e.p. capture if there are rights
647
648 The heuristic for e.p. capture was such that any non-forward move with
649 a Pawn to an empty square would delete the piece behind its new location
650 (Xiangqi exempted). This is now limited to cases where EP_STATUS indicates
651 that the deleted piece was a Pawn that performed a double-push on the
652 previous move. (Or if there is unknown EP_STATUS.)
653  This makes XBoard more generally suitable for use with variants that have
654 non-conventional Pawn moves (with legality testing off). To guarantee this
655 will not have any unexpected effects in normal Chess, this patch will only
656 be active if legality testing is off.
657
658 2013-02-11 16:25:09 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
659 Unreserve tourney game on exit during engine load
660
661 While waiting for the feature timeout we are not yet in TwoMachines mode,
662 so quitting XBoard at that stage would not unreserve the upcoming game.
663 A global flag 'startingEngine' similar to 'waitingForGame' now signals
664 this condition.
665
666 2013-02-10 13:40:10 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
667 Better fix of feature timeout
668
669 The previous fix of the 2nd engine's done=1 aborting the 1st engine's
670 feature timeout by starting the game caused problems with v1 engines,
671 or other engines that would never send done=1. It is now fixed by
672 explicitly testing for a pending feature timeout after resurrecting
673 the 1st engine, rather than having TwoMachinesEventIfReady wait for
674 initDone to be set by reception of done=1.
675  Also refrain from freezing the UI between match games, as in TwoMachines
676 mode the UI is mostly disabled anyway.
677
678 2013-02-08 16:24:23 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
679 Connect Ctrl key in WinBoard
680
681 The Control key is now checked during move entry, for excluding moves
682 during analysis, or for copying pieces when editing a positions. But the
683 WB front-end did not read it out yet!
684
685 2013-02-08 16:23:58 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
686 Fix Makefile for install of Xiangqi pieces
687
688
689 2013-02-08 15:35:44 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
690 Add Xiangqi piece images to project
691
692 Let the images install in themes/xiangqi.
693
694 2013-02-08 15:14:43 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
695 Revive -flipBlack option
696
697 The -flipBlack option in the cairo version is now implemented the same
698 way as it was in XBoard, swapping white and black pieces in filpView mode.
699 This requires a set black piece images that are the upside-down versions
700 of the white ones.
701
702 2013-02-07 13:55:59 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
703 Remove empty-square SVG images from project
704
705
706 2013-02-06 19:00:35 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
707 Add desktop stuff for .xop MIME type.
708
709 Icons and desktop file were missing, as was the automake code to package them.
710
711 2013-02-06 16:48:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
712 Update NEWS file
713
714
715 2013-02-06 14:48:27 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
716 Add boolean -autoBox option
717
718 This option controls the automatic popup of the ICS Input Box on typing
719 a printable character, which was annoing to some. The option can be
720 set from the ICS Options dialog.
721
722 2013-02-06 10:56:20 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
723 Draw both coords in a1
724
725 The lower-left board square needed two inscriptions, but DrawOneSquare()
726 only allowed one, so that the file ID would not be written. Now two strings
727 can be passed, and when align > 1 to indicate the alignment of the top
728 string, it is still checked if a bottom string is present as well, which
729 then is drawn with alignment 1 (= bottom right).
730  The rank coord or piece count can now also be double digit.
731
732 2013-02-05 23:03:42 -0800 Arun Persaud <arun@nubati.net>:
733 updated po files for new release (make distcheck)
734
735 2013-02-05 23:02:07 -0800 Arun Persaud <arun@nubati.net>:
736 updated Changelog, NEWS, etc.
737
738 2013-02-05 22:52:42 -0800 Arun Persaud <arun@nubati.net>:
739 new version number for release of 4.7.0
740
741 2013-02-05 11:56:10 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
742 Let initial setting of Twice checkbox reflect current state
743
744 The Twice checkbox in the Tournament dialog of WinBoard was by default
745 starting unticked. It is more convenient to have it preserve the current
746 state, however, based on the -lpi or -lgi value. Like the auto-incremet
747 checkbox already did.
748
749 2013-02-04 22:07:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
750 Put GTK warning in about-box
751
752
753 2013-02-04 21:59:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
754 Fix warnings of build server
755
756
757 2013-02-02 15:58:04 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
758 Fix GTK error auto-raising board
759
760 The variable mainwindow is not set in the gtk2 version. Unfortunately
761 it is still used to determine default board size...
762
763 2013-02-01 19:42:12 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
764 Update Dutch WB translation
765
766
767 2013-02-01 19:37:06 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
768 Add some new strings to WB translation template
769
770
771 2013-02-01 19:34:32 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
772 Assign shortcut char to WB menu item
773
774 The new Save games as Book item did not have a shortcut yet.
775
776 2013-02-01 19:31:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
777 Let WinBoard start in its installation folder
778
779 The current directory in WinBoard was not automatically the same as the
780 installDir returned by SearchPath. Especially not if used without shortcut
781 by file association.
782
783 2013-02-01 19:29:26 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
784 Fix warning in WinBoard
785
786
787 2013-01-30 14:25:57 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
788 Fix expose of to-square with grid off
789
790 The code relied on drawHighlight to request an expose evet for the entire
791 square, but when lineGap = 0, drawHighlight is a no-op.
792
793 2013-01-29 08:39:30 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
794 Fix library order
795
796 On OS X dialog windows could not get focus if -lXaw appeared after
797 -lX11 -lXt in the linker command. This was cured by moving
798 @FRONTEND_FLAGS@ (which expands to -lXaw) first in the LDADD parameter
799 of the automake file.
800
801 2013-01-28 17:38:26 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
802 Preserve PGN tags when loading engine
803
804 Switching to EditGame mode would normally erase the tags, but when analyzing
805 a loaded game this would be undesirable. When the engine is playing, keeping
806 the tags is dubious, but it is not obvious what to put in a new name tag,
807 so we leave that for now.
808
809 2013-01-28 17:23:47 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
810 Preserve mode on engine loading (sometimes)
811
812 That the mode always switched to EditGame after engine loading was
813 particularly annoying at the start of a game (where leaving BeginningOfGame
814 mode would disablethe Time Control dialog, and the engine would not
815 automatically reply if you start playing) and AnalyzeMode. These two
816 modes are now preserved, BeginningOfGame by refraining from calling
817 EditGameEvent() and sending 'force' to the new engine, and AnalyzeMode
818 be calling AnalyzeModeEvent() after the engine is loaded and repositioned.
819
820 2013-01-28 14:14:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
821 Catch unknown engine in tourney games
822
823 When an XBoard instance is playing on a tourney it can happen that it is
824 using a settings file with an engine list not yet containing a certain
825 participant, because that participant was just installed in the instance
826 that created the tourney file, but it did not save those modifications yet.
827 This error is now caught, and leads to an error popup and stopping of the
828 tourney play. This error was made non-fatal to allow the user to decide
829 if he wants to quit with or without saving the settings (which, after all,
830 does not seem up-to-date).
831
832 2013-01-26 18:08:37 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
833 Adjudicate pawn-drop mate as loss in Shogi
834
835 Mating with a Pawn drop is illegal in Shogi, but rather than burdoning
836 the legality-testing by this complex rule, we simply invert the result
837 for such a mate. After all, Shogi customs are such that everything illegal
838 leads to an immediate loss.
839
840 2013-01-25 10:05:44 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
841 Adjudicate perpetual checks as loss also in Shogi
842
843 The Xiangqi code for recognizing perpetual checks is now also activated for
844 Shogi, but in this case we bail out before checking for perpetual chases.
845 The mini-Shogi case is then recognized as a win for gote.
846
847 2013-01-25 09:55:56 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
848 Stalemate is a win in Shogi
849
850 In regular Shogi this never occurs, but in the mini variants it happens
851 often enough.
852
853 2013-01-22 20:49:34 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
854 Fix engine timeout problem in match mode
855
856 Reload of a reuse=0 engine would cause a done=1 event which would be
857 abort the feature timeout of the other engine in the first game.
858
859 2013-01-22 20:32:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
860 Enforce -popupMoveErrors
861
862 One move error was using DisplayError(), in stead of DisplayMoveError(),
863 and thus did not obey the -popupMoveErrors option.
864
865 2013-01-21 15:30:29 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
866 Update texi file
867
868
869 2013-01-21 10:26:20 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
870 Fix some warnings
871
872
873 2013-01-20 19:09:05 -0800 Arun Persaud <arun@nubati.net>:
874 Updated German translation
875
876
877 2013-01-19 17:54:59 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
878 Do delayed board draw also with -stickyWindows false
879
880 Only CoDrag needs to be suppressed on a configure event with
881 -stickyWindows false, not the board redraw.
882
883 2013-01-18 11:11:48 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
884 Let tellothers command add comment to PGN in local mode
885
886
887 2012-12-30 15:19:57 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
888 Allow use of ~ in pieceToChar for shadow pieces in any variant
889
890 The use of shadow-pieces for promoted Pawns was limited to Crazyhouse and
891 Bughouse. But this is not necessary, and in fact undesirable, as it made
892 it impossible to implement Crazyhouse960, which combines shadow promotions
893 with Fischer castling (only available in variant fischerandom)s, and thus
894 has to be played as 8x8+5_fischerandom, using the Crazyhouse -pieceToChaTable.
895
896 2012-12-30 15:06:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
897 Resend engine-defined options after reuse=0 reload
898
899 When the engine process is re-spawned for a new game under -xreuse setting,
900 any alteration of engine settings brought about through the Engine Settings
901 dialogs would be lost, and revert to the engine's default. This is now fixed
902 by re-sending all options (known from the previous load of the same engine)
903 with the current settings immediately after "protover 2", and ignoring the
904 engine's option features. Rather than clearing the option list, and
905 redefining it from the option features.
906
907 2012-12-30 14:58:16 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
908 Implement aborting of games on engine request.
909
910 A new game-end command is added. For bakward compatibility it is disguised
911 as an old one, namely "1/2-1/2 {Engine Abort Request}". These resultDetails
912 are recognized as special, and rather than ending the game in a draw (which
913 GUIs not implementing this), the game will be completely 'expunged' from
914 the match or tourney it is part of, leaving no trace in the saveGameFile.
915
916 2012-12-30 14:54:43 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
917 Store some more tourney params in tourney file
918
919 The hash and threads settings, as well as ponder and book options are now
920 also saved in the tourney file, so that tournaments can be played in
921 parallel where these parameters differ, and no mess up can occur on
922 restarting a touney after doing something else.
923
924 2012-12-23 11:26:31 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
925 Do not automatically save aborted games in tourney PGN
926
927 When the game result is 'unfinished', we prompt for a filename rather
928 then using the specified saveGameFile if a tourney is in progress.
929
930 2013-01-19 08:35:52 -0800 Arun Persaud <arun@nubati.net>:
931 fix configure bug that showed up on OS X (couldn't find X11/Dialog.h)
932
933 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.
934
935 2013-01-18 22:26:13 -0800 Arun Persaud <arun@nubati.net>:
936 Updated Ukrainian translations
937
938
939 2013-01-09 07:57:43 -0800 Arun Persaud <arun@nubati.net>:
940 removed trailing whitespace
941
942
943 2013-01-09 07:49:20 -0800 Arun Persaud <arun@nubati.net>:
944 Updated copyright notice to 2013
945
946
947 2012-12-22 22:46:21 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
948 Do not move to forwadMostMove when unpausing AnalyzeMode
949
950
951 2012-12-22 22:44:50 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
952 Use Ctrl key in AnalyzeMode to exclude entered move
953
954
955 2012-12-22 20:40:26 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
956 Implement insufficient mating material for Knightmate
957
958 KBK is draw with Royal Knight. With exo-pieces also KNK and KFK.
959
960 2012-12-22 20:25:51 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
961 Fix rep-draw detection in drop games
962
963 In games like Crazyhouse every move is reversible, as captured pieces
964 can eventually change sides again, and be dropped back on the board.
965 So we have to search back a full 100 ply for repetitions, passing captures
966 and Pawn moves.
967
968 2012-12-11 22:33:07 -0800 Arun Persaud <arun@nubati.net>:
969 updated po/pot files
970
971
972 2012-12-11 22:18:05 -0800 Arun Persaud <arun@nubati.net>:
973 new version number for developer release
974
975
976 2012-12-10 14:48:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
977 Prefer pause mode on pondering engine over 'easy'
978
979 If the thinking engine is stopped after its move because it does not
980 support pause, is is still better to use pause on the pondering engine
981 than to switch of its pondering with 'easy', as the latter might not
982 be instantaneous. Also switch off pondering in the thinking engine before
983 it gives the move, just in case it does not respond immediately to
984 easy / hard.
985
986 2012-12-10 13:40:47 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
987 Update WinBoard translation template
988
989
990 2012-12-10 13:35:41 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
991 Fix min-Shogi promotion zone
992
993 In integer arithmetic N*2/3 is not the same as N - N/3, with as a result
994 that the white promotion zone was 2 ranks deep on 5x5 boards. This only
995 happened in LegalityTest, but because this would classify all moves to
996 4th rank an non-promotions, they would be printed with a faulty
997 deferral (=) sign as promochar in SAN.
998
999 2012-12-10 13:32:49 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1000 Do not clear PGN tags on Analyze File
1001
1002
1003 2012-12-10 13:28:37 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1004 Fix -fSAN in AnalyzeFile mode
1005
1006 The exception that a PV relates to currentMove rather than forwardMostMove
1007 applies not oly in AnalyzeMode, but also in AnalyzeFile. Furthermore,
1008 PvToSan did not properly restore the pushed game tail in this case.
1009
1010 2012-12-08 16:02:09 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1011 Improve scaling of border bitmap (WB)
1012
1013 The StretchBlt mode is set from dither to delete.
1014
1015 2012-12-05 16:34:58 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1016 Implement use of pause / resume protocol commands
1017
1018 Engines that implement feature pause=1 will be paused during their move
1019 on a pause event; pondering engines will be controlled either through
1020 'pause' or (if they don't support that) 'easy', which both should work
1021 instantaneously. If the thinking engine does not support 'pause', the pausing
1022 will be deferred to when it produces its move, and is implemented by not
1023 relaying the move, and switch off pondering for both.
1024
1025 2012-12-03 12:58:36 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1026 Fix Loop-Chess promotions
1027
1028 Loop Chess is not a supported variant, but hould be playable as Crazyhouse
1029 with an altered pieceToCharTable, not defining the shadow promotion pieces.
1030 But with legality testing on promotion to shadow piece would take place
1031 even if the shadow piece was not defined.
1032
1033 2012-12-02 22:44:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1034 Fix move highlighting with animation off
1035
1036 In WB the moving of SetHighlights to after the animation had broken the
1037 highlighting of engine moves, because it was also moved after DrawPosition.
1038 While it is DrawPosition that actually draws the highlights. Now it has been
1039 moved to just before DrawPosition.
1040
1041 2012-12-02 11:09:14 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1042 Start browsing in currently-selected folder (WB)
1043
1044 The folder-browse dialog always started at My Computer, while file browsing
1045 started in the globally last-used folder (which might not be related at all
1046 to the file entry we are now browsing for).
1047
1048 2012-11-29 23:38:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1049 Implement book-creation functions
1050
1051 A new menu item triggers conversion of the currently loaded PGN file
1052 to a Polyglot book, saved with the GUI-book filename. A (volatile) option
1053 -mcBookMode alters the probing algorithm to build a book from scratch by
1054 playing games (and using a form of learning).
1055
1056 2012-11-29 22:23:44 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1057 Use colors in Board-Options dialog also for font pieces (WB)
1058
1059 The piece color settings now control the pieceColor or fontPieceColor
1060 settings, depending on the setting of -usePieceFont.
1061
1062 2012-11-29 22:14:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1063 Implement auto-creation of ICS logon file
1064
1065 Under control of the new option -autoCreateLogon (which can be set from
1066 the ICS Options dialog) the first two lines in response to the ICS "login:"
1067 pompt will be saved on a newly created logon file (if logon from such
1068 an existing file failed).
1069
1070 2012-11-29 21:56:02 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1071 Add Themes dialog (WB)
1072
1073 This dialog, done by the generic popup, contains controls for many settings
1074 that so far could only be controlled by options. It also introduces the
1075 concept of 'themes', sets of options stored in the multi-line option
1076 -themeNames.
1077   Add some dummy routines to suppress compile errors in functions that
1078 cannot be called yet in XBoard.
1079
1080 2012-11-29 21:32:03 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1081 Allow external piece bitmaps and board border (WB)
1082
1083 The -pieceImageDirectory is now also used for WinBoard, to indicate
1084 a directory of .bmp files, used to replace the built-ins. The outline
1085 and solid bitmaps can be full-color. This allows winBoard to use the
1086 WinBoard-zeta graphics. A new option -border can indicate a bitmap file
1087 used to draw a half-square-wide border around the board.
1088   A white background has to be drawn underneath the black pieces, to avoid
1089 color-interference with the board, just like happens for the white pieces.
1090 These backgrounds now always use bright white, rather than -withePieceColor.
1091
1092 We still have to work on the scaling of the zeta (600x600) bitmaps to
1093 the actual board size, as for some bitmaps the stratchblt is ugly.
1094
1095 2012-11-29 21:05:15 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1096 Add 'Continue Later' button in Tournament dialog (WB)
1097
1098 This button makes it possible to accept the values specified in the
1099 dialog without immediately starting the tournament (as OK does),
1100 so you can re-open the dialog later, and OK it then.
1101
1102 2012-11-29 20:25:35 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1103 Load opponent logo based on handle in ICS play (WB)
1104
1105 The logos for handles on FICS are sought in folder logos\freeches.org\*.bmp,
1106 etc. If no logo for the handle is found there, the logo of the ICS is
1107 displayed as usual.
1108
1109 2012-11-19 20:35:05 -0800 Daniel Dugovic <dandydand@gmail.com>:
1110 Fix configure script for --enable-zippy  (tiny change)
1111
1112 reported and patch by Daniel.
1113
1114 edited by Arun Persaud:
1115 - also fixed #ifndef ZIPPY -> #if !ZIPPY
1116 - didn't change #if -> #ifdef
1117
1118 2012-11-10 00:12:34 -0800 Arun Persaud <arun@nubati.net>:
1119 don't define X_LIBS when using gtk-frontend
1120
1121
1122 2012-11-07 22:16:09 -0800 Arun Persaud <arun@nubati.net>:
1123 updated po/pot files; added new frontend files
1124
1125
1126 2012-11-07 22:14:20 -0800 Arun Persaud <arun@nubati.net>:
1127 fix configure script for --with-Xaw and --with-gtk
1128
1129 made Xaw the default and included xaw or gtk sources as extras
1130 in case the other frontend is selected for make distcheck
1131
1132 2012-11-07 21:13:38 -0800 Arun Persaud <arun@nubati.net>:
1133 new version number for developer release
1134
1135
1136 2012-10-31 09:55:02 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1137 Draw frames around memos and listboxes
1138
1139
1140 2012-10-30 17:39:59 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1141 Adapt lineGap during sizing
1142
1143
1144 2012-10-30 15:04:32 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1145 Fix clock highlighting
1146
1147
1148 2012-10-30 10:59:45 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1149 Fix Chat Box
1150
1151 The genric TypeInProc is re-instated, and replaces ICSKeyEvent as primary
1152 handler for special keys in one-liner text edits.
1153
1154 2012-10-29 19:46:27 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1155 Pay attention to NO_CANCEL dialog flag
1156
1157
1158 2012-10-29 14:18:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1159 Fix clock clicking with GtkEventBox
1160
1161 Like in WinBoard the button-3 case is now handled in the primary
1162 event handler (and communicated to it in a kludgy way). It would be
1163 better if this was absorbed in ClockClick().
1164
1165 2012-10-28 22:25:22 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1166 Fix logo placement
1167
1168 Graphs were not recognized as possible SAME_ROW elements. A Graph requesting
1169 FIXED_H (which only the logos did) is now packed into a (borderless) aspect
1170 frame.
1171
1172 2012-10-25 23:04:42 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1173 Add window positioning
1174
1175 Sticky windows now sort of works, but needs unexplained fudge factors.
1176 Reopening a persistent dialog centers it on the board, and disobeys
1177 the positioning command. The WindowPlacement of the BoardWindow was
1178 again added (it was commented out during development).
1179
1180 2012-10-22 22:41:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1181 Make board sizing work through subtracting fixed height
1182
1183 There is now no attempt to give a size to the board drawing area, so it
1184 can later be sized as small as we want. The frame width is determined
1185 by subtracting the nominal board size from the actual window size,
1186 (because the clocks will have that width, and the board will startas 1x1),
1187 while the vertical margin is determined as the difference between the
1188 bactual window height, the drawing-area height minus a fudge of 25 pixels
1189 to compesate for the erroneously allocated blank space below the board.
1190
1191 2012-10-22 21:09:51 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1192 Fix warnings
1193
1194 The highTextStart/End are now declared in engineoutput.h, shared between
1195 nengineoutput.c and xengineoutput.c. Unused variables were removed.
1196 Also fix warnings in xboard.c and xoptions.c.
1197
1198 2012-10-22 17:40:08 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1199 Delete emptied front-end files, and move rest to gtk directory
1200
1201 Remove #ifdeffed-out Xt code that has GTK implementation. The xgamelist
1202 and xhistory have been completely cleared off content, and were removed.
1203
1204 2012-10-27 00:12:42 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1205 Add copy-paste
1206
1207 The code from gtk-xt could be used with almost no modification.
1208
1209 2012-10-21 09:09:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1210 Some experimenting with sizing
1211
1212 Does not work as intended yet.
1213
1214 2012-10-21 23:04:49 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1215 Add task-bar icon
1216
1217 Funny enough it was necessary to swap the two svg icons to make this work!
1218
1219 2012-10-20 10:29:37 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1220 Make some tall dialogs multi-column
1221
1222 A dummy button was added to the last row of New Variant to make the
1223 number even. A legality-test warning as put in the New Variant dialog
1224 Fix width of tourney-file in Match dialog
1225
1226 2012-10-20 21:14:33 -0700 Arun Persaud <arun@nubati.net>:
1227 updated some icons to SVG
1228
1229
1230 2012-10-20 19:57:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1231 Add displaying of icons
1232
1233 A new Option type, 'Icon', was added for this as in GTK Icons and Labels
1234 need different types of widget. The icons are now svg, so we could
1235 remove the icon pixmaps.
1236
1237 2012-10-20 14:25:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1238 Fix button bar
1239
1240
1241 2012-10-20 14:03:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1242 Add BarBegin, BarEnd options
1243
1244 This makes the button bar display correctly. Also fix v-sizing of menu bar.
1245
1246 2012-10-20 10:01:35 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1247 Add listbox double-click callback
1248
1249 This function was formerly performed by WheelProc.
1250
1251 2012-10-19 17:29:40 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1252 Add hiding / showing second Engine Output pane
1253
1254 The handle of the GTK table for the second engine is stored in the
1255 EndMark handle by GenericPopUp, so it can be used later to hise/show
1256 that table.
1257
1258 2012-10-19 17:15:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1259 Use different tables for different dialog columns
1260
1261 Making the same table wider (in steps of 3) to get multiple columns
1262 does not work, because it forces options to align vertically. This
1263 wrecks dialogs like Load Engine, where one column contains a very
1264 high option (listbox). Now differnt tables are created for each column,
1265 packed in a new itermediate hbox. In case of the Engine Output window,
1266 a vbox is used instead to cause vertical stacking.
1267   Only multi-line text-edits and listboxes are now allowed to take up
1268 vertical space changes, while only the middle colum of the table
1269 can take up horizontal size changes. Within packing boxes space is
1270 equally distributed.
1271   The labels above the particiant-selection widgets had not the same width
1272 as the textview / listbox, leading to misplacement of the second label.
1273   For Engine Settings the spontaneous breaking into columns did not
1274 involve a SAME_ROW flag, so the 'columns' were stacked vertically.
1275 In addition the columns were too tall for GTK. They are now 20 options max.
1276
1277 2012-10-19 13:46:37 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1278 Deselect first char in Move Type-in and ICS Input Box
1279
1280 After popup the Move Type-In had the typed character in it, but it was
1281 selected, so that typing a second character would erase it again.
1282 Same for the ICS Input Box. A prototype for CursorAtEnd is now also added.
1283
1284 2012-10-19 13:33:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1285 Close Move Type-in on Enter
1286
1287 The code is squeezed into the ICSKeyEvent callback.
1288
1289 2012-10-18 21:57:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1290 Add access routines to checkboxes and FocusOnWidget
1291
1292 The <Enter> handler of the filter field needs it to return focus to
1293 the listbox.
1294
1295 2012-10-18 21:42:49 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1296 Add game-list callbacks
1297
1298 The callbacks for listbox and filter text are treated by the same callback,
1299 which does both key presses and button double-clicks.
1300 Giving focus back to the listbox after filtering does not yet work!
1301
1302 2012-10-18 16:27:57 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1303 Add optional callback to Label Options
1304
1305 For some reason this does not work. The callback isn't called!
1306
1307 2012-10-18 13:40:55 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1308 Add type-in event to board for popping up box
1309
1310
1311 2012-10-18 13:12:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1312 Add Shift detection
1313
1314 The state of Shift and Ctrl was only probed on button clicks, so it
1315 is now read out of the button-event struct in the relevant button handlers.
1316 For backwad compatibility, they store it in a global, so the routine
1317 ShiftKeys can take them from there.
1318
1319 2012-10-18 12:35:20 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1320 Remove some unneeded low-level X11 code
1321
1322 Things like tabbing between controls, mouse-wheel scolling etc. are all
1323 automatic in GTK, and thuse don't need to be ported.
1324
1325 2012-10-18 10:12:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1326 Add file browser
1327
1328 The gtk-xt code for browsing in response to menu items rather than dialog
1329 browse buttons) was grafted. It seems desirable to merge the two browsing
1330 functions, though. Pass extra params used by Xaw to FileNamePopUpGTK.
1331 The code was altered to use DelayedLoad.
1332
1333 2012-10-18 09:54:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1334 Fix ListBox, and add some support routines
1335
1336 The srolled-window for the listbox used a uninitialized variable for its
1337 width, causing a crash. Now it pays attention to the Option.max and .value
1338 size hints. The access routines were copied from gtk-xt. HighlightWithScroll
1339 could just a wrapper for HighlightListBoxItem, as GTK auto-scrolls.
1340
1341 2012-10-17 20:01:37 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1342 Connect CommentClick handler
1343
1344 This can make use of generic memo callback, so it could be entirely
1345 backend. Therefore it was moved to dialogs.h. As it shared a global with
1346 some other back-end popup routines to remember the current move, these
1347 could now be moved out of xboard.c too. (Well, not so for the X11 front-end,
1348 so it has now been put in a header. :-( )
1349
1350 2012-10-17 19:41:11 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1351 Fix animation
1352
1353 Because FrameDelay does block the event loop, even though it releaes the
1354 CPU, expose events start to lag behind the actual drawing. By combining
1355 expose events for overlapping squares, rather than decompose them into
1356 3 rectangles, this problem seems to go away. But only if there is an
1357 extra exposure on the squares to be drawn also non-overlapping frames
1358 will be properly drawn (?!).
1359
1360 2012-10-17 14:40:59 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1361 Implement highlighting in engine output by through generic method
1362
1363 HighlightMove was made generally available for all text. It is now just a
1364 wrapper for the generic HighlightText, and could be moved to the back-end.
1365 (This requires the initialization to be widget specific, and the flag
1366 indicating it has been done is now stored in the Option.min field.)
1367
1368 2012-10-17 14:33:28 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1369 Let engine-output memos use new generic callback
1370
1371
1372 2012-10-17 13:53:03 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1373 Add scrolling of Move History
1374
1375 To have access to the textview, its handle is now stored in the
1376 Option.textValue field.
1377
1378 2012-10-17 13:11:23 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1379 Add highlighting in move list
1380
1381 For now it is assumed the normal background will be white (for clearing
1382 the highlight).
1383
1384 2012-10-16 19:44:40 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1385 Make generic memo-event handler, and connect history callback
1386
1387 Large text widgets can now define a user handler in their Option.choice
1388 field. If they do, agneric callback is added tothem, which catches mouse
1389 events. Button release and pointer motion pass their coordinate and type
1390 to the specified user routine. Button presses in addition retrieve
1391 the text from the widget, set the cursor in it to the clicked point,
1392 and convert it to a character position, also passed to the user.
1393   The user is responsible for ignoring events he is not interested in.
1394
1395 2012-10-16 15:58:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1396 Add key-handler for ICS Input Box
1397
1398 In contrast to the X11 code, all intercepted keys are now treated by
1399 the same callback. The ICS Input Box callback triggers on Up, Down and
1400 Return key, and refers to these symbolically.
1401
1402 2012-10-16 15:05:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1403 Highlight Pause button
1404
1405
1406 2012-10-16 13:52:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1407 Better cleansing of xboard.c from X11 types
1408
1409 The #includes for X11 files were still in there.
1410
1411 2012-10-16 13:28:32 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1412 Add text insertion in engine-output memos
1413
1414
1415 2012-10-16 09:34:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1416 Append recent engines to engine menu
1417
1418 This is now entirely moved to the back-end, by doing it in the table
1419 from which the menus are later generated. The special callback for engine
1420 items is abandoned, and the euProc for such items is left NULL to flag
1421 that RecentEngineEvent should be invoked with the applicable engine number.
1422 To calculate the latter a global variable firstEngineItem is dynamically
1423 set to the length of the regular engine menu.
1424
1425 2012-10-15 22:17:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1426 Transfer more gtk-xt code, and add some new
1427
1428 Add input-source handling
1429 Graft color picker (<Enter> callbeack in the text field is still missing!)
1430 Handle contents of label widgets (store handles in Option for access)
1431 Add printing of clocks
1432 Add printing of window title
1433 Pay attention to BORDER attribute of Label Options (pack in frame)
1434 Delete ReadBitmap code (also remove #including of bitmap files for icons)
1435 Fix layout of textviews (adapt to newer Option format, incl. wrap, scroll)
1436 Support vertical stacking in Break Option (no table widening when !SAME_ROW)
1437 Make default horizontal scroll policy automatic (for engine-output window)
1438 Fix disabling of unused spinners in TC dialog
1439
1440 2012-10-15 20:47:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1441 Connect dialog Browse buttons to GTK browser
1442
1443
1444 2012-10-15 19:52:17 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1445 Implement menu checkmarking and enabling
1446
1447 odes in the (later over-written) handle field specify which items
1448 are to be checkmarked, and by what style button.
1449
1450 2012-10-15 16:18:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1451 Attach expose handler and connect to mouse events
1452
1453 The GraphExposeProc is conected to the Graph widgets. A gdk draw routine
1454 is used to copy the buffer bitmap to the display. It is also connected
1455 to button and motion-notify events.
1456   In this version the board can be fully operated with the mouse.
1457
1458 2012-10-14 22:00:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1459 Transfer most available gtk-xt code to xoptions.c
1460
1461 GenericPopUp and PopDown are grafted from gtk-xt into gtk2.
1462 The version compiles, but segfaults before doing anything, with error
1463 messages about unexpected cases in GenericPopup for Graph and PopUp Options
1464 of the main board. The spin options need special treatment in GetWidgtText.
1465
1466 2012-10-15 11:41:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1467 Give LoadListBox two extra parameters
1468
1469 It often occurs that we just want to swap two elements, and reloading
1470 the entire listbox would be a very inefficient way to do this in widget
1471 sets that allow access to a single element.
1472
1473 2012-10-14 20:36:34 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1474 Remove all X11 code by #ifdeffing it out
1475
1476 With #ifdef TODO_GTK we disable all X11 code, in order to get a compiling
1477 X11-free version. The disabled sections can then be replaced by code
1478 for another widget set, the X11 version still showing what it was supposed
1479 to do.
1480
1481 2012-10-14 17:37:18 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1482 Move timer functions to new file xtimer.c
1483
1484 The timers for the clocks, periodic analysis events and ScheduleDelayedEvent
1485 go into a separate file.
1486
1487 2012-10-14 15:31:56 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1488 Make xevalgraph.c backend
1489
1490 The only front-end stuff left in xevalgraph.c was an unnecessary reading
1491 of the window size (which could be obtained from the WindowPlaceent struct),
1492 and drawing (all cairo now). The drawing was moved to draw.c, and the
1493 remaining part renamed nevalgraph.c.
1494
1495 An attempt to list them in a less chaotic way.
1496
1497 2012-10-14 14:34:09 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1498 Cleanse back-end code of all references to X11 types
1499
1500 When compiling for X11, common.h #included X11/Intrinsics.h so that
1501 X11-specific data types could still be used throughout the back-end part
1502 not shared with WinBoard. By temporarily disabling this, error messages
1503 could be generated on all such occurrences, and were then solved. This
1504 included the following:
1505   The InputSource struct is not uses in usystem.c at all, and its definition
1506 could be moved to xboard.c. InputSourceRef, which logically should heve been
1507 defined as (InputSource *), is in reality (void *), so the back-end can
1508 pass it around.
1509   Some non-platform-dependent stuff of general interest had prototypes
1510 (or external vars) in xboard.h. This is now moved to a new header xboard2.h,
1511 to allow it to be shared without bringing in X11 dependence.
1512   The EngineOutputProc was defined inconsistently, but the header was not
1513 sufficiently shared to flag this error. This has been repaired now, by moving
1514 the template to menus.h.
1515
1516 2012-10-14 13:39:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1517 Remove xedittags.c, .h from project
1518
1519 The tiny bit of code that was left was absorbed in dialogs.c, the one
1520 prototype to menus.h.
1521
1522 2012-10-14 12:53:20 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1523 Remove inclusion of frontend.h from backendz.h
1524
1525 This did not seem to serve any purpose at all.
1526
1527 2012-10-14 12:49:28 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1528 Split xhistory.c in front-end and middle-end part
1529
1530
1531 2012-10-14 12:21:09 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1532 Move MarkMenuItem to xoptions.c
1533
1534 This to make xoptions.c completely independent from the inclusion of
1535 frontend.h. The prototype is moved to menus.h.
1536   Loose end: DrawPosition in board.c does not see the prototype.
1537 Very suspect that it wants to see it. Why would it have to correct the
1538 flipView setting??? Better se to it that it is correct to start with!
1539
1540 2012-10-14 12:14:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1541 move testing for no options to back-end
1542
1543 The test if an engine has options and display a note instead of
1544 the Engine Settings dialog when this is not the case is moved
1545 to outside of GenericPopUp, to make the later independent of calling
1546 other routines.
1547
1548 2012-10-14 11:20:16 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1549 Remove some unnecessary header includes
1550
1551
1552 2012-10-14 10:47:21 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1553 Move ICS-engine analyze and AnalyzeGame code to shared back-end
1554
1555 This code was still duplicated between WB and XB in the front-ends.
1556 Because of its incorporation in AnalyzeModeEvent the 'middle-end'
1557 function AnalyzeModeProc could be eliminated. AnalyzeModeEvent was made
1558 to return an int to flag its success, and keep the JAWS code based
1559 on it out of XBoard.
1560  The AnalyzeGame code  is now incorporated in AnalyzeFileEvent().
1561
1562 2012-10-26 10:28:59 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1563 Add configure switches for Xaw vs GTK.
1564
1565 This patch is an adapted version of the one Arun made at the end of the
1566 gtk2 branch. It uses the exact same version of his configure.ac, but the
1567 Makefile.am is adapted to the situation in master at the beginning of it,
1568 after duplication of the X11 front-end files in the xaw directory for
1569 preserving them, while the versions that will be modified to GTK front-end
1570 are still in the xboard directory.
1571
1572 2012-10-25 11:12:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1573 Prepare xoptions.c for middle-end changes
1574
1575 Some changes that can be pre-empted, such as the splitting of Label
1576 into Label and Icon Option type, and some dummy wrappers are already
1577 implemented, so they can be used when needed by GTK.
1578
1579 2012-10-25 09:20:03 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1580 Preserve copies of the X11 front-end in xboard directory
1581
1582 The X11 front-end has been moved to the xaw directory, but copies
1583 are retained for modifying them to gtk versions.
1584
1585 2012-10-24 08:55:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1586 Move X11 front-end to directory xaw
1587
1588
1589 2012-10-31 18:18:02 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1590 Fix initial enables in TC dialog
1591
1592
1593 2012-10-30 14:47:24 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1594 Fix image extension used for browsing to .pgn
1595
1596
1597 2012-10-28 21:39:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1598 Fix WinBoard compile error on enum PEN
1599
1600
1601 2012-10-30 11:20:54 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1602 Fix crash in promotion popup
1603
1604 There were not enough entries for Capablanca Chess with legality-testing off,
1605 where King is also presented as a choice.
1606
1607 2012-10-28 18:19:23 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1608 Fix message in New Variant dialog
1609
1610 Even in -ncp mode the message was referring to the 'current engine'.
1611
1612 2012-10-28 18:16:20 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
1613 Fix crash on animation after resizing
1614
1615 The animate buffers were still holding pointers to a discarded cairo surface.
1616
1617 2012-10-21 14:49:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1618 Fix variant-dependent pieces
1619
1620 The code to select the actually used piece images from the available ones
1621 (from InitDrawingSizes) is now made into a subroutine, and also called
1622 after resizing the pieces.
1623
1624 2012-10-26 10:18:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1625 Replace marble texture pixmaps by png
1626
1627
1628 2012-10-26 10:13:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1629 Replace xiangqi board pixmaps by png images
1630
1631
1632 2012-10-26 10:08:44 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1633 Remove the texture pixmaps from project
1634
1635 These were already replaced by png textures.
1636
1637 2012-10-23 15:02:56 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1638 Fix re-rendering of svg on resize
1639
1640 The previously prepared bitmaps were retained if we resized, rather then
1641 rendering the svg atthe new size.
1642
1643 2012-10-21 15:48:30 -0700 Arun Persaud <arun@nubati.net>:
1644 update po/pot files
1645
1646
1647 2012-10-21 15:47:12 -0700 Arun Persaud <arun@nubati.net>:
1648 new version number for developer release
1649
1650
1651 2012-10-21 11:10:36 -0700 Arun Persaud <arun@nubati.net>:
1652 we still need a few bitmaps, so the directory needs to be included in Makefile.am
1653
1654 make distcheck complained about this
1655
1656 2012-10-21 15:56:43 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1657 Rename svg shogi pieces, so they become usable
1658
1659 Only white pieces are present. For black they would have to be flipped.
1660
1661 2012-10-21 15:54:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1662 Fix bug in resizing on variant switch
1663
1664 The fix of the garbage pixels had unfortunately broken this.
1665
1666 2012-10-21 15:15:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1667 Fix bug in fallback mechanism
1668
1669 After failure to load a piece from a specified -pieceImageDirectory
1670 the default theme was not tried, because the cairo function to load
1671 from a pgn file returns a valid handle even if the file does not exist.
1672
1673 2012-10-21 14:58:42 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1674 Get svg error message
1675
1676
1677 2012-10-21 14:49:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1678 Fix variant-dependent pieces
1679
1680 The code to select the actually used piece images from the available ones
1681 (from InitDrawingSizes) is now made into a subroutine, and also called
1682 after resizing the pieces.
1683
1684 2012-10-16 12:08:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1685 Remove caveat on available pieces fromNew Variant dialog
1686
1687 In the cairo version all pieces are available at all board sizes.
1688
1689 2012-10-21 11:41:11 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1690 Remove some unused images from png directory
1691
1692 Currently only the three board texture files are used. But the piece
1693 images are still left, because they might be useful if we ever want
1694 to mae XBoard configurable for not using librsvg.
1695
1696 2012-10-21 10:40:37 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1697 Fix bug in resizing
1698
1699 The nominal size of the window was not set in the correct Option struct.
1700
1701 2012-10-21 09:58:23 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1702 Prevent odd-width line shift in length direction
1703
1704
1705 2012-10-21 09:48:29 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1706 Print missing-pieces error message to console
1707
1708 The GUI might not yet be up at this point.In addition, suppress
1709 the rest of the code, because it could give segfaults.
1710
1711 2012-10-21 09:30:26 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1712 Fix garbage pixels on the right of the board
1713
1714 The extra pixel that is requested in sizing the board window back to
1715 an available size because we ofte get one less pixel than we ask for
1716 can lead to a line of garbage pixels next to the board. This is combatted
1717 by limiting expose events to the true board area, remembering that in the
1718 Graph Option rather than the actual window size, and suppressing resizing
1719 when the latter only exceeds the stored width by more than 1 pixel.
1720
1721 2012-10-15 10:27:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1722 Trim board-window size
1723
1724 The board window will sometimes be a pixel larger than requested.
1725 The ReSize routine will now reset the size values in the Graph Option
1726 to what they were supposed to be, to prevent expose events will
1727 draw nonsense in the extra space.
1728
1729 2012-10-13 23:26:10 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1730 Adapt docs for svg/png in stead of bitmap/pixmap
1731
1732
1733 2012-10-13 09:35:31 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1734 Spontaeous changes in gettext stuff
1735
1736
1737 2012-10-13 08:03:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1738 Move Shogi svg pieces to own directory
1739
1740
1741 2012-10-13 07:57:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1742 Remove unnecessary Xt colors and call to MakeColors
1743
1744
1745 2012-10-13 07:50:56 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1746 Code cleanup: move expose redraw to draw.c
1747
1748
1749 2012-10-13 07:37:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1750 Suppress warning for InitDrawingHandle
1751
1752
1753 2012-10-13 07:33:15 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1754 Make fallbackPieceImageDirectory hardcoded
1755
1756
1757 2012-10-13 07:18:23 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1758 Increase drag delay too 200 msec
1759
1760 On my slow laptop it can take more than 100 msec to reallocate bitmaps
1761 in the generic expose, with as a consequence that the DelayedDrag event
1762 is not processed before the timeout expires. The timeout event then triggers
1763 a redraw, which again takes so long that the timeout expires before the
1764 event to reset the timer could be processed, and this just perpetuates
1765 itself, leading to a large series of queued redraws, and a long waiting time
1766 for an image to appear after the sizing stops.
1767
1768 2012-10-13 07:01:05 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1769 Fix segfault on faulty command-line option
1770
1771
1772 2012-10-12 14:42:26 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1773 Suppress anti-aliasing in -monoMode
1774
1775 In the color-substitution code, always use bi-level alpha and color.
1776
1777 2012-10-12 13:34:04 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1778 Remove piece pixmaps from project
1779
1780
1781 2012-10-12 11:47:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1782 Implement proper fallback cascade
1783
1784 Try in order cached svg, cached bitmap, user png, user svg, default svg.
1785
1786 2012-10-12 11:06:06 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1787 Cache svg handles
1788
1789
1790 2012-10-12 10:45:29 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1791 Install svg pieces in themes/default
1792
1793 The svg pieces are installed with the XBoard data in the directory
1794 .../xboard/themes/default . A new option -fallbackPieceImageDirectory
1795 is added, and is configured in the master settings file to point to
1796 these pieces. This options, which replaces -svgDirectory, is volatile,
1797 and the menu control to set it is removed. The -pngDirectory option
1798 is renamed to -pieceImageDirectory (-pid).
1799
1800 2012-10-12 10:02:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1801 Remove bitmaps from project
1802
1803
1804 2012-10-12 09:55:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1805 Install the wood textures as png
1806
1807 The xboard.conf has to be edited to set these as default textures,
1808 in stead of the .xpm files.
1809
1810 2012-10-12 09:50:31 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1811 Add hatched board texture
1812
1813 A png file with hatching is added, so it can be used for dark squares
1814 in a monochrome theme. It is installed in a new data directory
1815 .../xboard/themes/textures.
1816
1817 2012-10-11 22:21:06 -0700 Arun Persaud <arun@nubati.net>:
1818 added a black and white theme to replace the mono option
1819
1820
1821 2012-10-11 20:56:42 -0700 Arun Persaud <arun@nubati.net>:
1822 added SVGs to dist files in automake
1823
1824
1825 2012-10-11 19:44:22 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1826 Fix exposure of atomic captures
1827
1828 The grid lines had to be repaired too, so damage marker 2 had to be used.
1829
1830 2012-10-11 19:13:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1831 Fix animation with textures off
1832
1833 The blank square was not shifted to (0,0) when drawing the animation buffer.
1834
1835 2012-10-11 19:08:49 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1836 Fix 1-pixel offset of grid lines on some cairo implementations
1837
1838
1839 2012-10-11 09:51:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1840 Solve odd lineGap problem
1841
1842 Not all cairo versions seem to round the same when an odd-width line
1843 is to be drawn at integer coordinates. So now we explicitly ask it
1844 to be drawn centered on half-odd-integer coordinates.
1845
1846 2012-10-09 18:52:43 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1847 Add -trueColors option
1848
1849
1850 2012-10-09 14:56:16 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1851 Always render svg pieces anew on size change
1852
1853 The svg pieces are now unconditionally rendered to supply the pngPieceImage
1854 master source otherwise read from png file. This is then fed into the
1855 original png code (so that if for some reason it fails, we fall back on png
1856 pieces, and finally on built-in pixmaps).
1857
1858 2012-10-09 14:06:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1859 Fix rsvg version in configure.ac
1860
1861
1862 2012-10-08 19:54:19 -0700 Arun Persaud <arun@nubati.net>:
1863 initial svg rendering
1864
1865
1866 2012-10-08 18:34:05 -0700 Arun Persaud <arun@nubati.net>:
1867 added cairo and librsvg to configure process
1868
1869
1870 2012-10-08 18:32:55 -0700 Arun Persaud <arun@nubati.net>:
1871 added SVGs
1872
1873 converted from inkscape SVG to plain SVG before adding
1874
1875 2012-10-10 21:19:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1876 Adapt Eval Graph code to new drawing system
1877
1878 The eval graph now triggers an expose after drawing, and gets its size
1879 from the Option fields.
1880
1881 2012-10-10 20:37:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1882 Fix expose requests seek graph
1883
1884
1885 2012-10-10 20:07:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1886 Make draw handle for board globally available
1887
1888
1889 2012-10-10 19:45:39 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1890 Let expose requests pay proper attenton to widget
1891
1892 So far, expose requests were always assumed to be for the board widget,
1893 preventing display of the labels.
1894
1895 2012-10-10 18:45:59 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1896 Fix initial display of logos
1897
1898 The logos were selected and printed during the initialization,
1899 before the main event loop was started. So the expose events during
1900 widget creation, which created the drawing surfaces, were only processed
1901 after the initial drawing of logos, so that there was nothing to draw on!
1902
1903 2012-10-10 17:25:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1904 Fix alignment of highlight expose
1905
1906
1907 2012-10-10 17:19:52 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1908 remove NewSurfaces
1909
1910
1911 2012-10-09 13:57:40 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1912 Make expose handler generic
1913
1914 The Graph Option now returns two handles in hitherto unused fields of its
1915 Option struct: Option.choice is a cairo handle of a memory buffer the user
1916 must draw to, while Option.textValue is the handle to the widget.
1917 Expose events copy the memory buffer to the display for the exposed area.
1918 A routine DrawExpose() is supplied to let the user generate expose events.
1919
1920 2012-10-06 21:30:59 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1921 Reload piece images when pngDirectory is changed
1922
1923 The OK function of the board options dialog now tests for a change
1924 in pngDirectory and passes a parameter to InitDrawingParams to tell
1925 it to destroy the old images. This cause a reload on scaling the pieces.
1926
1927 2012-10-06 20:16:54 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1928 Suppress redraw during sizing
1929
1930
1931 2012-10-06 20:10:18 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1932 Fix bug in resize trigger
1933
1934 Even if the square size does not change, the window has to be shrunk
1935 back to fit the board.
1936
1937 2012-10-06 19:54:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1938 Make Piececolor options work on png pieces
1939
1940 The scaled, antialiased bitmaps are now colored according to the option
1941 settings. This is done by decomposing every pixel in a white, black and
1942 transparency component, which is possible because the opacity is
1943 directly give in the alpha channel, and black originally was a hard zero.
1944 So what you se in the red channel must be white (as the original white
1945 was #FFFFCC), and the rest of the opacity must be due to black.
1946   The color to be replaced (white for the white pieces, black for the black
1947 pieces) is then replaced by the original weight of this color times the
1948 color from the option.
1949
1950 2012-10-06 17:53:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1951 Plug resource leak on rezising with pixmaps
1952
1953
1954 2012-10-06 16:19:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1955 Fall back on built-in pixmaps if png pieces unreadable
1956
1957
1958 2012-10-06 14:21:11 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1959 Do coordinate text alignment with cairo
1960
1961
1962 2012-10-06 13:40:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1963 Some cleanup
1964
1965
1966 2012-10-06 12:14:16 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1967 Clean up drawing code
1968
1969 Now all routines only draw through cairo, the destination surface can
1970 be passed to them, making it possible to do the duplicate drawing
1971 to the memory board image in a cleaner way.
1972
1973 2012-10-06 11:37:20 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1974 Check in draw.c, draw.h
1975
1976
1977 2012-10-06 11:26:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1978 Remove all bitmap & pixmap drawing
1979
1980 All Xt code for drawing the board is now removed, as are the
1981 -pixmapDirectory and -bitmapdirectory option. This version is now
1982 completely dependent on cairo for handling of all graphics anywhere.
1983 (The build-in pixmaps are still left, though, for later use as an
1984 alterative cairo source when no png files are found.)
1985
1986 2012-10-06 10:29:06 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1987 Separate off drawing routines from xboard.c
1988
1989 A new source file draw.c is created to hold all code associated with
1990 board drawing. The routines for loading bitmaps and creating colors
1991 were left in xboard.c, though, as they are also used for handling
1992 icons and colors of widgets.
1993
1994 2012-10-05 19:53:04 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
1995 Fix erasing dots in seek graph
1996
1997 The cairo dots were just a little bit bigger than the old ones, so they
1998 were not properly erased, but left a remnant.
1999
2000 2012-10-05 19:25:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2001 Cleanup CairoOverlayPiece
2002
2003
2004 2012-10-05 19:22:34 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2005 Draw arrow also on backup image
2006
2007
2008 2012-10-05 19:16:30 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2009 Fix highlight clearing
2010
2011
2012 2012-10-05 18:59:30 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2013 Remove acceleration trick
2014
2015
2016 2012-10-05 18:54:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2017 Implement variant-dependent png piece symbols
2018
2019
2020 2012-10-05 18:42:51 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2021 Fix clearing of markers dots with promo popup
2022
2023
2024 2012-10-05 18:32:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2025 Also render coordinates to backup board
2026
2027
2028 2012-10-05 18:30:35 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2029 Remove debug print
2030
2031
2032 2012-10-05 18:29:13 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2033 Let cairo also do evenly colored squares.
2034
2035
2036 2012-10-05 17:56:43 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2037 Make dragged piece for excluding moves transparent
2038
2039
2040 2012-10-05 17:42:18 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2041 Fix DrawSeekText
2042
2043
2044 2012-10-05 17:40:55 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2045 Redo coordinate / piece-count printing ith cairo
2046
2047
2048 2012-10-05 15:40:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2049 Also use cairo on slave board
2050
2051 With dual-board observing the drawing should be redirected to the
2052 slave board, so SwitchWindow should also switch the xlib-surface to
2053 one for the slave window.
2054
2055 2012-10-05 15:12:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2056 Cure flashing of piece on from-square
2057
2058 In a drag-drop move the piece was flashed on the from square after the
2059 user dropped it on the to-square, because highlights were set before the
2060 move had updated the board. And highlighting with arrow can cause a redraw
2061 of the last board. Same with setting or clearing marker dots.
2062
2063 2012-10-05 14:20:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2064 Specify proper condition for using cairo animation
2065
2066
2067 2012-10-05 14:07:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2068 Allow resizing of board window
2069
2070 In full png mode the size of the board window is no longer locked.
2071 After resizing, the square size is calculated as the largest one that
2072 would fit the window, and the window is then shrunk around it. To prevent
2073 excessive redrawing during sizing, the redraw is delayed by putting it
2074 in DragProc.
2075
2076 2012-10-05 10:41:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2077 Switch to using 64x64 png images
2078
2079 The bitmap scaling works better when the needed factors are not too large,
2080 as the svg rendering's anti-aliasing did not blur more than 1 pixel.
2081 So after shrinking too much the images are not effectively anti-aliased
2082 anymore.
2083
2084 2012-10-05 10:16:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2085 Maintain in-memory copy of the board image
2086
2087 As reading back from the xlib-surface proves incredibly slow (cairo probably
2088 converts the entire image from Xt format to cairo format when we set it
2089 as a source, even though we only want to read a few dozen pixels), we now
2090 keep an exact copy of the board image as a cairo bitmap in memory. This
2091 restores the speed of the animation, but unfortunately leads to awful code.
2092
2093 2012-10-04 22:15:05 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2094 Do animation with cairo
2095
2096 Unfortunately this is incredibly slow.
2097
2098 2012-10-04 18:36:08 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2099 Allow back-texture files to be PNG, (drawn with cairo)
2100
2101
2102 2012-10-04 15:10:37 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2103 Add png pieces
2104
2105 A new directory with 256x256 png piece images is added to the source tree.
2106
2107 2012-10-04 15:01:05 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2108 Add mode to draw PNG piece images through cairo
2109
2110 The PNG images have to be supplied as files in a -pngDirectory (a new
2111 option) with a 256x256 bitmap. They are then scaled by cairo to the
2112 desired square size. This does not work very well for the smaller sizes.
2113
2114 2012-10-03 14:45:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2115 Redo marker dots with cairo
2116
2117
2118 2012-10-03 14:27:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2119 Redo highlights with cairo
2120
2121
2122 2012-10-03 14:07:37 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2123 Make convenience routine SetPen globally available
2124
2125 The routine to set a pen as specified by  a color string that was used
2126 in xevalgraph is moved to xboard.c, where there also is lots of demand
2127 for it. The arrow drawing now uses it for setting the highlightSquareColor.
2128
2129 2012-10-03 12:28:30 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2130 Redo grid with cairo
2131
2132
2133 2012-10-03 12:00:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2134 Redo arrow highlighting with cairo
2135
2136
2137 2012-10-03 11:20:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2138 Redo seek graph with cairo
2139
2140 New front-end services DrawSeekOpen() and DrawSeekClose() have been
2141 added, and are called from the back-end to enclose any drawing activity.
2142 In WinBoard these had to be defined as dummies.
2143
2144 2012-10-02 15:31:26 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2145 Redo logos with cairo
2146
2147 The logos must now be .png files, and are internally handled as their
2148 filenames. (So no preparation of a drawable from it at startup.)
2149 Cairo allows them to be scaled to the requested logoSize.
2150
2151 2012-10-02 14:02:23 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2152 Fix Eval Graph resolution problems
2153
2154 Anti-aliasing had to be switched off to get a crisp graph. A second problem
2155 was that the dashed lines were drawn in both directions, with interfering
2156 dashes.
2157
2158 2012-10-02 10:54:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2159 Redo Eval Graph drawing with cairo
2160
2161
2162 2012-10-21 10:21:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2163 Fix button-border-width bug in monoMode
2164
2165 The kludge of signalling we are dealing wih a button rather than a label
2166 was wrongly implemented in case of momoMode.
2167
2168 2012-10-21 10:14:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2169 Reserve more space for button bar
2170
2171 In some board sizes the button bar was wider than the code guessed,
2172 so the window width would be determined by the message + buttons row rather
2173 than the board.
2174
2175 2012-10-21 11:24:18 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2176 Fix WinBoard compile errors
2177
2178
2179 2012-10-13 09:33:39 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2180 Fix non-NLS compile error for XFontStruct
2181
2182
2183 2012-10-12 12:04:17 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2184 Fix browsing for path
2185
2186 A pathname was still prefixed with the cuurent directory.
2187
2188 2012-10-07 21:00:10 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2189 Use Pause state in AnalyzeMode to imply move exclusion
2190
2191 The pause state was not used in AnalyzeMode so far. Now it is used to
2192 imply all entered moves are for exclusion/inclusion.
2193
2194 2012-09-30 18:55:13 -0700 Arun Persaud <arun@nubati.net>:
2195 new version number for developer release
2196
2197
2198 2012-09-30 22:16:14 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2199 Fix broken -ics and -cp options
2200
2201 The patch to specify engines and ICS by nickame broke the use of the
2202 regular options to do this, because they could also reset them. Now
2203 this is fixed by only setting them (through |= in stead of =).
2204
2205 2012-09-30 22:01:52 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2206 Update texi file
2207
2208 The description of exclude-moves, multi-game ananalysis and duo-analysis
2209 is added.
2210
2211 2012-09-30 10:07:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2212 Resolve conflict between -mps and -inc options
2213
2214 The age-old problem that a persistent valid -inc value will cause -mps
2215 to be ignored is solved by the kludge of storing these two as a single
2216 option (-mps) in the settings file, and declaring the other (-inc) volatile.
2217 The range of negative numbers (invalid as -mps value) was available for
2218 that, and now is used to store the negated value of -inc in msec.
2219 For backward compatibility, specification of -inc causes interpretation
2220 of -mps in the old way. The forcing of -inc to -1 in the master settings file
2221 could be safely removed because of this change, so that the time increment
2222 now is a persistent option.
2223
2224 2012-09-29 23:13:04 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2225 Allow entry of fractional increment in WB time-control dialog
2226
2227 The numeric edit is changed to a general text edit, and code is added
2228 to convert the text it contains to and from float, with proper error check.
2229
2230 2012-09-29 23:05:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2231 Preconfigure -icsNames in xboard.conf
2232
2233 Although XBoard has no startup dialog with an ICS combobox, the -icsNames
2234 option is now used to select lines from with the -is option, and in
2235 interpretation of positional arguments. The most common ICS are configured
2236 together with a short nickname, so that commands like "xboard fics" will work.
2237
2238 2012-09-29 22:58:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2239 Allow ICS nickname as positional argument
2240
2241 If an argument is encountered that is not preceded by an option name,
2242 it is now first checked if it corresponds to the nickname of an ICS
2243 in -icsNames. If so, it is assumed to be the value of an -is option,
2244 selecting -ics mode with that ICS and all the options installed with it.
2245
2246 2012-09-28 20:28:05 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2247 Cure some sick behavior in XBoard Engine Output right-clicks
2248
2249 When a PV-walk is in progress, the PV is highlighted by selecting it,
2250 and this focuses the attention of the scroll bar on it, so it remains in
2251 view. But after release, that line was kept in view, rather than scrolling
2252 back to the top of the window (where the header line bust be available
2253 for clicking)
2254
2255 2012-09-28 13:28:17 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2256 Allow Analyze Game to auto-step through entire game file
2257
2258 If the game index is set to auto-increment (-lgi -1), the Analyze Game
2259 function will automatically load the next game of the current game file
2260 (starting to auto-play/annotate that) when the end of the current game is
2261 reached. This flushes the annotated game if auto-saving was set,
2262 so that eventually all games in the file will be annotatd and saved.
2263   The game index is automatically set to auto-increment when we load
2264 a file while in Analyze Game mode, but switching this mode on while a game
2265 is already loaded will stop at the end of that game, as usual (if -lgi was
2266 not explicitly set).
2267
2268 2012-09-28 13:24:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2269 Let second engine move in lockstep during dual analysis
2270
2271 When the second engine is also analysing (as indicated by its stat variable
2272 second.analyzing), we send all moves / undos / positions /  in&excludes that
2273 go to the first engine also to second.
2274
2275 2012-09-27 19:07:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2276 Allow second engine to analyze too
2277
2278 Clicking the Analysis menu when analysis is already in progress will
2279 now toggle the secon engine to analyze the same position. For now,
2280 this lasts only until the position changes (or you leave analyze mode),
2281 after which the second engine is always switched off, and the Engine
2282 Output window returns to single pane. Each pane now has its own header
2283 line; the exclude header is suppressed in the second pane.
2284
2285 2012-09-27 18:11:23 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2286 Add options -fe, -se, -is to load installed engines/ics from list
2287
2288 The volatile string options -fe, -se ('first/second engine') load the first
2289 and second engine of the given nickname in the -firstChessProgramNames list,
2290 including all options that were installed with it (similar to when in
2291 WinBoard the that engine line had been selected through the Startup Dialog's
2292 combobox). The option -is is similarly used to retrieve the line for an
2293 ICS in the -icsNames list.
2294
2295 2012-09-27 18:02:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2296 Add check on validity of tourney participants
2297
2298 Before allowing OK of the Tournament Options dialog, it is now checked
2299 whether all participants (which are given as nicknames) can be found
2300 in the list of installed engines, so that no problems will occurr with
2301 non-existing engines during the tourney (if typos crept in after hand-
2302 editing the list).
2303
2304 2012-09-25 16:21:42 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2305 Implement --help option
2306
2307 The list of options is printed before exiting. Some attempt is made
2308 to do it in a nice way.
2309
2310 2012-09-23 20:10:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2311 Implement variant seirawan in -serverMoves option
2312
2313 Write the gating moves such that the ChessLive! viewer will understand them.
2314
2315 2012-09-23 20:05:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2316 Workaround for FICS bug
2317
2318 FICS does not properly understand SAN, and thinks bxc3 can be a Bishop move.
2319 This broke 'Upload to examine', because that uploaded in SAN. In case the
2320 SAN starts with Bx or bx, it now uses long algebraic (with = before the
2321 promo char).
2322
2323 2012-09-20 18:17:55 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2324 Define XOP mime type for XBoard
2325
2326 Supply a white-knight icon for this mime type, called application/x-xboard-opt,
2327 and a sesktop file to associate it with running XBoard with this settings file.
2328
2329 2012-09-20 17:24:29 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2330 Pay attention to extension of 'positional' arguments
2331
2332 An argument without preceding option name was assumed to be an -lgf argument.
2333 This patch still does that by default, but if the argument ends in .fen, .epd,
2334 .trn, .ini or .xop it is considered an -lpf, -tf or -opt argument.
2335   In addition, an implied -lpf or -lgf argument also imply the option -viewer,
2336 which inserts the -viewerOptions string into the command line, and proesses it
2337 as options. A new option -tourneyOptions is similarly inserted for an implied
2338 -tf argument. These strings should contain all options needed to start XBoard
2339 fully configured as game viewer or tourney playing agent on the mentioned file.
2340
2341 2012-09-20 15:29:42 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2342 Let windows stick to right display edge (WB)
2343
2344 Auxiliary windows docked to the board window from below or to the right, which are
2345 pushed out of view when the board window resizes, will be trimmed to just touch the
2346 diplay edge (if sufficient width or height remains). When the board window shrinks,
2347 auxiliary windows touching the edge will be resized so they remain touching it.
2348
2349 2012-09-20 15:20:36 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2350 Round board size to one where piece images available (WB)
2351
2352 When using built-in bitmaps, in sizes where unorthodox pieces are needed, but not
2353 available, the size is temporarily rounded to one of the sizes where they are.
2354
2355 2012-07-03 17:21:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2356 Fix bug in Edit Position
2357
2358 Due to = in stead of == the variant was always set to S-Chess in
2359 EditPositionDone().
2360
2361 2012-08-28 21:24:51 -0700 Daniel Macks <dmacks@netspace.org>:
2362 bug #37210: Mishandling of X11 -I flags (tiny change)
2363
2364 AP: applied patch from bugtracker and added one missing 'save_cppflags="$CPPFLAGS"'
2365
2366 2012-06-02 14:31:18 -0700 Arun Persaud <arun@nubati.net>:
2367 bug #36229: changed ICS_* from define to enum
2368
2369
2370 2012-05-28 13:58:00 -0700 Arun Persaud <arun@nubati.net>:
2371 bug #36229: changed STATE_* from define to enum
2372
2373 enabling better compiler checks
2374
2375 2012-05-28 13:50:50 -0700 Arun Persaud <arun@nubati.net>:
2376 bug #36229: changed PEN_* from define to enum
2377
2378 This should allow better checks by the compiler
2379
2380 2012-05-28 13:01:15 -0700 Arun Persaud <arun@nubati.net>:
2381 fix bug #36228: reserved identifier violation
2382
2383 variables and macro names beginning with _ are renamed to XB_. More consistent naming of include guards.
2384 See link in bug report.
2385
2386 2012-05-28 12:36:37 -0700 Arun Persaud <arun@nubati.net>:
2387 Updated German translation
2388
2389
2390 2012-04-30 20:06:00 -0700 Arun Persaud <arun@nubati.net>:
2391 new version number for developer release
2392
2393
2394 2012-04-24 11:23:04 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2395 Decapitalize promoChar in move parser
2396
2397
2398 2012-04-23 14:12:10 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2399 Keep track of virginity of back-rank pieces in variant seirawan
2400
2401 The forelast rank of the Board array is now used in VariantSChess to
2402 contain flags that indicate virginity of the back-rank pieces, one bit
2403 for white, the other for black. Legality checking of gatings now makes
2404 use of this info. FENs mention all virgin pieces not implied by castling
2405 rights in the castling field, by printing the corresponding file IDs,
2406 as long as holdings are non-empty. The FEN reader now also understands
2407 this format. EditPositionDone fakes virginity for all pieces that are
2408 on their starting square.
2409
2410 2012-04-17 19:49:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2411 Suppress clear-board message after pasting FEN
2412
2413 The message field is now always cleared when you leave EditPosition mode.
2414
2415 2012-04-17 19:45:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2416 Fix faking of castling rights after editing position with holdings
2417
2418 The queen-side rook was always imagined at X=0, which is in the holdings
2419 when these exist, so that Q-side castling in such games was never allowed
2420 after EditPosition.
2421
2422 2012-04-20 10:29:36 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2423 Fix WB Engine Settings window
2424
2425 The listbox patch has broken this window, by making it only list the
2426 first option of the engine, by switching to the next column based on a >=
2427 test rather than == test. Fixed by using 1000 as invalid value for the
2428 break point, rather than -1.
2429
2430 2012-04-20 00:01:08 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2431 Fix key binding of DebugProc
2432
2433 The name used for binding was DebugProc, while the ite was named Debug.
2434
2435 2012-04-16 20:51:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2436 Fix ICS Text Menu popup
2437
2438 The space for the option names needed to be allocated.
2439
2440 2012-04-16 20:37:06 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2441 Fix disabling of Load Engine menu
2442
2443
2444 2012-04-15 22:53:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2445 Port chat boxes to XBoard
2446
2447 A new menu item Open Chat Window is added to the View menu. It opens a
2448 window that can handle 5 chats. A row of buttons on top selects which is
2449 the foreground chat partner, to which we type, and whose incoming messages
2450 will be displayed in the memo. The leftmost 'button' is not really a button,
2451 but a text edit, and the active partner is displayed there (so it can be
2452 altered). Selecting another chat partner through a button, moves that partner
2453 to the text-edit, and reshuffles the buttons. Incoming messages in a chat
2454 that is not foreground make the corresponding button color orange.
2455
2456 2012-04-16 20:27:08 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2457 Allow chaining of single-line text-edits to top
2458
2459 For the benefit of the chat window, a text-edit plus leading description
2460 can now also be chained to the top edge of a dialog. The chaining of the
2461 (degenerate) multi-line ICS Input Box and Move Type-In was entirely to the
2462 bottom, which has now been corrected.
2463
2464 2012-04-12 09:30:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2465 Add logo widgets in main board window
2466
2467 New options -logoSize and -logoDir are added. The former enables logo display,
2468 when non-zero and not too big. The latter is used by -autoLogo. The options
2469  -firstLogo and -secondLogo also work. Problem is that the clock height
2470 is larger than the logo height, and for now a nasty trick in GenericPopUp
2471 is used to position the next element (message field) w.r.t. the clocks,
2472 rather than the last element of the row above (the logo): in case of a
2473 SAME_ROW Graph element, 'last' is kept at the previous element.
2474
2475 2012-04-19 10:48:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2476 Fix crash on time forfeit with -st option
2477
2478 When fixed time per move was set from the command line, the time-control
2479 strings were not set. This let to a crash when an engine forfeited.
2480 The GetTimeQuota function is now made resistant to a NULL pointer here.
2481
2482 2012-04-19 10:39:12 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2483 Solve WinBoard name clashes, fix zippy-analyze menu graying
2484
2485 Some of the function names used in the refactored X11 front-end collided
2486 with Windows system names from winboard.h, or with names of internal routines
2487 in WinBoard front-end files (so they could not be declared in frontend.h).
2488 These were renamed. Some prototypes in engineoutput.h contained X11 types,
2489 and they were moved to xboard.h.
2490   In addition, two menu-item names were corrected to two-part names.
2491
2492 2012-04-18 12:00:43 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2493 Offer primitive paging in file browser
2494
2495 If there are more than 1000 files that would have to be displayed,
2496 the number will be limited to 999, and a 'next page' entry will appear
2497 at the bottom. Clicking that will give you the next group.
2498  This is an emergency measure only, as it interferes with sorting
2499 (grouping is based on order inside the directory, i.e. kind of arbitrary,
2500 and sorting is only done within a group.) There is no such thing for the
2501 folder list yet. There is no way to go back to a previous page, other
2502 than closing and re-opening the browser, or selecting another file type.
2503
2504 2012-04-18 11:16:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2505 Add pixmap as file type known to browser
2506
2507 Users can browse for a pixmap to set the board texture.
2508
2509 2012-04-17 15:45:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2510 Fix warning about signedness
2511
2512 Note: the promoChar in ExcludeMoves was explicitly defined to make
2513 sure the kludge promoChar = -1 for indicating best move works. But it
2514 should be equivalent to casting the promoChar to (signed char) just
2515 before the comparison.
2516
2517 2012-04-17 15:44:15 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2518 Fix warnings about character index
2519
2520
2521 2012-04-17 15:37:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2522 Move ManProc to xboard.c
2523
2524 It calls ManInner, which requires X11 data types, even if the values are NULL.
2525
2526 2012-04-17 15:27:21 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2527 Move FileNamePopUp to dialogs.c
2528
2529
2530 2012-04-17 15:15:03 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2531 Fix readout of numeric combobox
2532
2533 As currently no numeric comboboxes are used, this bug was silent.
2534
2535 2012-04-17 15:10:54 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2536 Shuffle prototypes to correct header, or add them there
2537
2538
2539 2012-04-17 14:15:15 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2540 Fix MenuNameToItem
2541
2542 This function could crash when called with ann argument that did not
2543 contain a period, while the idea was that it should handle this as if the
2544 item is in noMenu (for user-specified key binding to non-menu funtions).
2545
2546 2012-04-16 19:43:03 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2547 Fix click-click under-promotion animation save
2548
2549
2550 2012-04-17 11:02:39 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2551 Define TOPLEVEL in winboard.c
2552
2553
2554 2012-04-17 10:59:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2555 Add two new strings to WinBoard language file
2556
2557
2558 2012-04-17 10:51:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2559 Fix second-engine variant test
2560
2561 The test whether the second engine supports the selected variant took place
2562 before the second engine was loaded, thus always coming to the conclusion
2563 that the variant was not supported, and aborting the TwoMachines command.
2564 The test is now moved to after second-engine loading (but before its
2565 initialization, where non-supporting would become a fatal error).
2566
2567 2012-04-16 12:11:09 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2568 Fix clearing of ICS input box after send
2569
2570
2571 2012-04-16 19:08:10 -0700 Arun Persaud <arun@nubati.net>:
2572 enable -Wall -Wno-parentheses for all compilers that understand them
2573
2574
2575 2012-04-16 13:18:37 +0200 Byrial Jensen <byrial@vip.cybercity.dk>:
2576 Remove 5 unused variables from zippy code
2577
2578
2579 2012-04-16 13:14:06 +0200 Byrial Jensen <byrial@vip.cybercity.dk>:
2580 Remove unused static function ShowTC
2581
2582
2583 2012-04-16 13:10:58 +0200 Byrial Jensen <byrial@vip.cybercity.dk>:
2584 Remove unused static function MenuBarSelect
2585
2586
2587 2012-04-16 13:07:01 +0200 Byrial Jensen <byrial@vip.cybercity.dk>:
2588 Remove unused variable first_entry from function find_key
2589
2590
2591 2012-04-16 13:01:09 +0200 Byrial Jensen <byrial@vip.cybercity.dk>:
2592 Remove unused variable tm from function SaveGamePGN
2593
2594
2595 2012-04-16 12:56:46 +0200 Byrial Jensen <byrial@vip.cybercity.dk>:
2596 Remove unused variable delayedKing from function QuickScan
2597
2598
2599 2012-04-16 12:52:57 +0200 Byrial Jensen <byrial@vip.cybercity.dk>:
2600 Remove unused variable pdown from function UserMoveEvent
2601
2602
2603 2012-04-15 04:25:59 +0200 Byrial Jensen <byrial@vip.cybercity.dk>:
2604 Change some double literals to floats.
2605
2606 To avoid unnecessary implicit promotions of float variables to double.
2607
2608 2012-04-15 11:12:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2609 Remove debug printf
2610
2611
2612 2012-04-14 22:43:03 +0200 Byrial Jensen <byrial@vip.cybercity.dk>:
2613 Translate "NPS" also in engine output window
2614
2615
2616 2012-04-14 16:19:34 -0700 Arun Persaud <arun@nubati.net>:
2617 removed unused variables (-Wunused-variable)
2618
2619
2620 2012-04-14 15:37:05 -0700 Arun Persaud <arun@nubati.net>:
2621 added m4 directory to search path for aclocal. As suggested by Michel Van den Bergh
2622
2623
2624 2012-04-14 23:21:56 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2625 Fix Eval Graph scale in drop games
2626
2627
2628 2012-04-14 23:16:29 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2629 Fix ArrowDamage out-of-bounds access on drop moves
2630
2631
2632 2012-04-14 21:33:49 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2633 Implement automatic partner observe
2634
2635 Starting a game, or starting to observe one, now automatically issues a
2636 'pobserve' command if dual-board is switched on, so that the partner game
2637 will pop up in the secondary board (assuming it is bughouse).
2638  The secondary board now displays the players in the title. (This (lightly)
2639 breaks WinBoard again.) When the primary game ends, the secondary board
2640 closes automatically. Initial sizing of the board is repaired, and now uses
2641 the actual current board size, rather than the initial size of the main board.
2642
2643 2012-04-14 15:43:30 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2644 Fix crash due to empty PV
2645
2646 Reception of a stat01 command before the first PV could cause a crash,
2647 as apparently the parser cannot handle this.
2648
2649 2012-04-14 13:27:48 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2650 Suppress testing for availability in bughouse drops
2651
2652 Give up on testing legality of bughouse drop moves; this only causes problems,
2653 because the move list sent by the ICS is not accompanied by holdings updates.
2654 So XBoard parses it thinking the holdings are empty, making every drop move
2655 an ImpossibleMove. Bughouse can only be played on ICS, and we might as well
2656 trust the ICS that it will only pass us legal moves. A user should not be
2657 able to enter illegal drops; unavailable pieces cannot be grabbed from the
2658 holdings, and typing is diverted to the ICS directly (which would reject the
2659 illegal drop without XBoard even knowing about it).
2660   Also improve switching to bh/zh, based on drop move in initial board.
2661
2662 2012-04-14 09:11:22 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2663 Fix some compile errors / warnings
2664
2665
2666 2012-04-13 19:06:17 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2667 Fix promotionPopDown on new move entry
2668
2669 The promotion popup is non-modal, and old XBoard versions popped it down
2670 as soon as the user clicked the board, so he could just enter a new move
2671 to abort the promotion. This was broken in the new version, because the code
2672 to do the PopDown and abort in HandleUserMove had not been ported.
2673
2674 2012-04-13 18:38:51 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2675 Use in-place sweep-selection for click-click under-promotion
2676
2677 With detour under-promotion a piece cycles through all possible choices
2678 during backwards dragging. But in a click-click move there is no dragging.
2679 This used to be solved by letting the second click start a drag event of
2680 the default promotion choice, which you could accept by immediately
2681 releasing the mouse button, or drag around to change it first.
2682  The dragging in this case seemed a little unnatural, because the to-square
2683 was already indicated by the down-click. So it has been changed now to the
2684 promo choice appearing on the down-clicked to-square, followed by
2685 EditPosition-like sweep-selection on that square when one wants to under-
2686 promote. The move is always accepted no matter where the up-click takes
2687 place, except when it takes place on the from-square (which offers a last-
2688 resort abort possibiliy).
2689  Note that click-click promotion is essential in variants where it is not
2690 obvious from the from-square alone that a promotion is imminent, but where
2691 it depends on the to-square. (Such as Shogi.) There drag-drop detour under-
2692 promotion is not possible.
2693
2694 2012-04-13 16:05:16 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2695 Improve arrow drawing
2696
2697 The arrow is now erased together with the border highlights, by marking
2698 the damage it did, and then doing a selected redraw of the board to let
2699 the damaged square be re-drawn. Highlights of a previous move are now
2700 cleared on the down-click that selects a new piece, so there never is an
2701 arrow to infavorably interact with animation of dragging.
2702
2703 2012-04-13 14:57:15 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2704 Also do selective redraw with showTargetSquares on
2705
2706 The XBoard DrawPosition now also keeps track of the previous marker state,
2707 and redraws squares for which thi shas changed. As a result, the routine
2708 MarkTargetSquares does no longer have to force to complete redraw.
2709 (Breaks WinBoard?)
2710
2711 2012-04-13 00:33:28 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2712 Fix click-click sweep promotions to empty square
2713
2714 These did not work, because DragPieceBegin would fail on an EmptySquare.
2715
2716 2012-04-12 23:58:41 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2717 Move clearing of target squares to after drag end
2718
2719 A dragged piece that would partly overshoot its destination into a square
2720 with a marker would effectively protect that marker from erasing, when the
2721 erasing was done before the piece was released, because redrawal after the
2722 move only would draw the target square. (Unlike erasing, which forces a full
2723 redraw.)
2724
2725 2012-04-12 23:49:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2726 Fix double promotion popup
2727
2728 Only the up-click of a click-click move gives a promotion popup now.
2729
2730 2012-04-12 23:32:28 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2731 Fix promotion popup
2732
2733 The new GenericPopUp did not like it if the first button had 'SAME_ROW' set.
2734
2735 2012-04-12 17:28:32 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2736 Allow clearing of marker dots in any mode
2737
2738 There might already be dots when you change to a mode where there should
2739 be none, and you don't want them to stay on forever in that case...
2740
2741 2012-04-12 17:00:55 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2742 Fix redraw of secondary board on flipping view
2743
2744
2745 2012-04-12 10:30:21 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2746 Let clocks of secondary board count down
2747
2748 The back-end now remembers what is the active clock, and the time left on it.
2749 This is then decremented and updated together with the clocks of your own
2750 game, using the partnerUp flag to divert the clock display to the secondary.
2751
2752 2012-04-12 09:47:43 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2753 Fix 3 forgotten symbolic widget references
2754
2755
2756 2012-04-11 19:24:36 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2757 Add sound files to browser menu
2758
2759
2760 2012-04-11 13:04:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2761 Add New Directory button to file browser
2762
2763
2764 2012-04-11 09:54:51 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2765 Detect engine exit during startup
2766
2767 The case where engine startup failure does not result in a fatal protocol
2768 message, like "No such file", but where it simply exits, is now also covered.
2769
2770 2012-04-10 22:55:07 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2771 Suppress popup for fatal error after tellusererror
2772
2773 For cooperating better with Polyglot, and allowing more to-the-point
2774 error messaging, the (awful) default message will be suppressed if the
2775 dying engine already provided an explanation for its demise to the user.
2776
2777 2012-04-10 20:28:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2778 Fix Engine Output icon heights in international versions
2779
2780 The text in a label option could not be an empty string, or it would be
2781 'translated' to something of enormous size. So it is set to a space now.
2782
2783 2012-04-10 20:21:56 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2784 Fix internationalization
2785
2786 The internationalization was broken by moving the XtSetLanguageProc
2787 to behind 'bindtextdomain'.
2788
2789 2012-04-10 20:03:46 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2790 Make reference to board widgets symbolic
2791
2792
2793 2012-04-10 18:39:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2794 Don't strip path from engine name if directory given
2795
2796
2797 2012-04-10 17:54:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2798 Fix vertical chaining of Buttons and browser ListBoxes
2799
2800
2801 2012-04-10 15:53:47 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2802 Fix auto-play
2803
2804 The 'narrow search' modification had broken auto-play, because all selected
2805 games were marked as matching position 0, so that they would all start in
2806 thr opening position.
2807
2808 2012-04-10 13:30:44 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2809 updated po/pot files
2810
2811
2812 2012-04-10 11:54:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2813 new version number for developer release
2814
2815
2816 2012-04-10 13:22:40 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2817 Update POTFILES.in
2818
2819
2820 2012-04-10 13:21:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2821 Fix Makefile EXTRA_DIST
2822
2823
2824 2012-04-02 17:53:40 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2825 Use Ctrl key in EditPosition mode to copy pieces
2826
2827
2828 2012-03-28 23:51:28 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2829 Fix bug in FRC castling for position search
2830
2831 In FRC it is essential that both pieces are taken off the board before
2832 any of them is put back, lest they obliterate each other.
2833
2834 2012-03-28 12:25:20 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2835 Fix bug on loading engine
2836
2837 A newly loaded engine was put at the end of the game, rather than at the
2838 current position, (which is required in EditGame mode).
2839
2840 2012-04-06 17:02:21 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2841 Add 'Narrow' function to position search
2842
2843
2844 2012-04-06 10:52:45 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2845 Reorganize main() a bit
2846
2847 The font stuff goes into a separate routine, and the X11 stuff is
2848 moved backwards as far as possible.
2849
2850 2012-04-04 21:55:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2851 Give the dual-board option a separate board window
2852
2853 The second board window pops up whenever an alien board is received
2854 during your game. Moves in it are highlighted by an arrow, irrespective
2855 of the 'Highlight with Arrow' setting. The clocks are displayed, but do
2856 not count down.
2857
2858 2012-04-05 11:23:03 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2859 Port engine grouping to Match Options dialog
2860
2861
2862 2012-04-05 15:18:25 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2863 Change default directory in Load Engine to "."
2864
2865
2866 2012-04-05 10:49:56 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2867 Port grouping to XBoard Load Engine Add highlight to Load Engine grouping
2868
2869
2870 2012-04-06 17:19:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2871 Fix default file types for browse buttons
2872
2873
2874 2012-04-03 09:14:44 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2875 New browser
2876
2877 Redo file browser with GenericPopUp
2878
2879 This had to solve quite some problems, because it wanted to use a ComboBox
2880 option while a transient dialog could be up, was a non-engine dialog
2881 while an engine dialog is up, and XRaiseWindow does not work properly.
2882   Sorting is done alphabetically, or for digit groups by numeric value.
2883
2884 2012-04-02 14:43:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2885 Use ListBox in stead of ComboBox in Match-Options dialog
2886
2887
2888 2012-04-02 14:09:15 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2889 Use ListBox in stead of ComboBox in Load Engine dialog
2890
2891 Make Load Engine listbox sensitive to double-clicking
2892
2893 2012-03-26 17:06:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2894 Add message about enabling in New Variant dialog
2895
2896
2897 2012-03-31 20:27:20 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2898 Move LoadGamePopUp to menus.c
2899
2900
2901 2012-03-31 20:25:22 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2902 Move DisplayMessage to dialogs.c
2903
2904 Use the wrapper SetWidgetLabel to make it back-end.
2905
2906 2012-03-31 15:23:30 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2907 Fix switching debug option during session.
2908
2909 Switching on debug mode during the session did not create the requested
2910 debug file.
2911
2912 2012-03-31 15:22:57 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2913 Correct texi file for use of .Xresources
2914
2915
2916 2012-04-02 19:19:30 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2917 Fix recent-engines menu
2918
2919 A new primitive to create an item in a given menu was added to do this.
2920
2921 2012-03-31 10:54:22 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2922 Switch back two two-part menu names
2923
2924 The menu code is again completely changed; a handle field is added
2925 to the MenuItem tables to store the widget for the item, and this info
2926 is used to alter sensitivity or marking. MenuToNr is replaced by
2927 MenuNameToItem, which looks up the two-level name directly in the
2928 menu tables. Put all currently unused MenuProcs in noMenu table,
2929 so they are available for key binding through the new method.
2930
2931 2012-03-24 18:36:44 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2932 Redo main board window with generic popup
2933
2934 Some of the improvements in GenericPopUp (committed earlier) were added
2935 especiall for this (menu and box Option types), and the commits that used
2936 them to make a fully functional board, listed below, were collapsed into
2937 this one.
2938
2939 This uses the new box and menu features of the Generic popup.
2940 Make option table shadow board consistent with refactor
2941 Do main menus in shadow board
2942  The board made by GenericPopUp now also has (functional) menus. The Expose
2943  callback now also uses the new format (passing coordinates).
2944 Use BoxEnd callback to decide about smallLayout
2945  The shadow board now dynamically decides whether it should use smallLayout
2946  positioning of the title-in-window widget, using a callback in the BoxEnd
2947  option for the menu bar: If no reasonable amount of space is left behind
2948  the menu bar, the title is forced under the clocks (smallLayout).
2949 Do some mouse handling on shadow board
2950  Only button 1 events for now. We have to keep track if the button is down!
2951 Connect button 3 to shadow board
2952  For now only for piece and PV manipulation: no context menus yet
2953 Symbolic reference in option formatting
2954 choice <-> textValue xboard.c
2955 Improve expose callback shadow board
2956 Implement context menus of shadow board
2957  This uses the new generic PopUp option
2958 TopLevel xboard.c
2959 Make mock-up board available through menu item
2960 Make clocks of shadow board sensitive to clicking
2961 Make button bar of shadow board operational
2962  The back-end Event functions are specified as user callbacks directly;
2963  this is not very clean, as they are parameterless, but called with an int
2964  argument. This should have no bad consequences, though.
2965 Switch to using shadow board as main board
2966  The menu marking and enabling had to b switched off for this, as it
2967  only worked on the old menus. Remove HandleUserMove.
2968 Deleting of unused shell variables, clocks to dialogs.c
2969 Move BoardPopUp to dialogs.c
2970  This required passing on fome front-end vars as parameters, and returning
2971  apointer to the option list, to make the handles available in xboard.c.
2972 Simplify InitDrawingSizes
2973  Now that all widgets of the main window are properly chained, there is
2974  no need to resize them when the board format changes: setting a new width
2975  for the shell suffices.
2976 Cleanup some unused Xt Args
2977
2978 2012-03-31 10:53:46 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2979 Remove unnecessary menu unmarking for Edit Tags
2980
2981
2982 2012-03-29 19:09:34 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2983 Split sync-after options in Match dialog into checkbox + label
2984
2985 Now the checkbox texts are highlighted on hovering, we don't want the
2986 explanatory text behind it to be highlighted with it.
2987
2988 2012-03-26 17:12:33 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
2989 Make variant-unsupported-by-second error non-fatal
2990
2991
2992 2012-03-23 20:06:15 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
2993 Redo Eval Graph with generic popup
2994
2995 The Graph option of the GenericPopUp is used to implement the Eval Graph.
2996 Compared to the previous implementation, which was drawing directly in the
2997 form widget, the new one has one extra widget layer, but that did not
2998 affect the code anywhere. Adapt eval title to width of eval graph.
2999
3000 2012-03-23 15:17:14 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3001 Redo Engine Output window with generic popup
3002
3003 A new file nengineoutput.c holds the X-independent code. This makes use
3004 of new capablities of GenerciPopup, for having Label widgets on same row,
3005 stacking panes after a Break, and chaining Label and Text widgets.
3006
3007 2012-03-21 23:00:05 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3008 Redo Game List with generic popup
3009
3010 Check in ngamelist.c
3011 Redo Game List with generic popup
3012  The X-independent code (i.e. almost all) is moved to a new file
3013  ngamelist.c.
3014 Make button in Game List to pop up Game List Options
3015 Fix scrolling game list
3016 Fix popup of existing Game List after loading file
3017 Wheel-scroll game list
3018 Symbolic reference game list
3019 TopLevel game list
3020 Put format flags with listbox options
3021
3022 2012-03-21 17:58:27 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3023 Redo Game List Options with generic popup
3024
3025
3026 2012-04-05 21:56:52 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3027 Add -dialogColor and -buttonColor options
3028
3029 These only override system defaults if they are non-empty strings.
3030
3031 2012-03-28 15:52:01 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3032 Add -topLevel option
3033
3034 This persistent Boolean option determines if the auxiliary windows
3035 (Game List, Move List, Engine Output, Eval Graph, Tags and Comment)
3036 use top-level shells (with their own icon on the task bar, and
3037 independently closable). Other dialogs will always use transient shells.
3038 (Also he modal Error and Promotion dialogs, for which the modality
3039 presumably only serves to pop them down without special attention.)
3040 A control for this was added in the General Options dialog.
3041
3042 2012-03-20 15:30:00 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3043 Redo ErrorPopUp with generic dialog
3044
3045 <Enter> keeps popping down error popup.Multiple Error popups remeain tricky;
3046 add comment to describe problem with multiple ErrorPopUps.
3047
3048 2012-03-20 10:22:46 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3049 Redo PromotionPopUp with generic dialog
3050
3051 The dialog is no longer modal.
3052
3053 2012-03-19 21:56:48 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3054 Redo AskQuestion dialog with generic popup
3055
3056
3057 2012-03-19 21:55:58 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3058 Major refactoring of GenericPopUp
3059
3060 Allow more transient dialogs in GenericPopUp
3061 Remove grab from promotion popup
3062 Fix other generic popup over transient popup
3063  To use the generic dialog generator for 'asynchronous' popups (Ask Qustion
3064  or Error popup caused by engine), the currentOptions setting has to be
3065  restored for the combo and checkbox callbacks of the transient to still
3066  work after the asynchronous dialog returns. Note that only transient dialogs
3067  can have check and combo controls.
3068 Make generic calcel button suppressible
3069  Also #define some more symbols for Option.min flags,
3070  and move them to dialogs.h.
3071 Change TypeInProc to general OK handler
3072  The move type-in now has its own option list, to distinguish it from
3073  the ICS input box, and give it its own OK handler. Rather than having
3074  the translation for <Enter> on the text widget call TypeInEvent directly,
3075  we let it call GenericCallback, which calls GenericReadout, which calls
3076  the OK proc, which does the job.
3077   To be able to call GenericCallback from the TypeInProc, the recognition
3078  of OK and cancel buttons had to be changed. This because it was too difficult
3079  to arrange the calling widget had label OK or cancell. So these buttons are
3080  no longer recognized by name, but by the option number passed as client data.
3081  (This solves the problem that a user could not make buttons named 'cancel'
3082  or 'OK'.)
3083 Make Cancel button optional
3084 Fix closing multiple popups of same kind
3085  The GenericCallback figures out its own shell, so all buttons of
3086  multiple dialogs keep working. External calls to PopDown only work
3087  on the lastcreated instance of that kind, though (including those from
3088  the Delete Window button, which can do 'cross-closing'). shellUp is now
3089  a counter, and PopDowns are only prevented when it reaches 0 or the
3090  current shell does not exist. (To know this, PopDown now resets shells[n]
3091  to NULL when is shell is destroyed.
3092   Beware of double PopDowns (through OK procs); they wreck the system.
3093 Fix Delete Window button of multipe ErrorPopUps
3094  The action routine for handling the Delete Window now pays attention
3095  to the shell widget that the system passes to it, and temporarily
3096  replaces shells[n] by it to let PopDown act on the proper instance.
3097 Add ListBox dialog type to GenericPopUp
3098 Fix vert sizing of ListBox
3099 Put listbox widgets in viewport
3100 Put listbox in viewport
3101 Improved xoptions.c support for focussing and listboxes
3102 Fix OK-row button positioning
3103 Let GenericPopUp take parent and modality as arguments
3104  This makes the code a bit more explicit and less kludgy. It also becomes
3105  possible to call the same dialog (e.g. Load Options) from the main menu
3106  and from another dialog (e.g. the Game List).
3107 Support scroll function for generic popup listboxes
3108 Fix scrolling
3109 Move HighlightWithScroll to xoptions.c
3110 Change scroll algorithm
3111 Add mouse-wheel scroll to generic list boxes
3112 Implement tabbing between text edits
3113 Implement same-row text labels in generic dialog
3114 Allow labels to specify their chaining in generic popup
3115  The opt.min variable is used to specify the chaining: 0xF0 are the bits
3116  for (left, right) chaining of the left side (0xC0) and right side (0x30).
3117  The 0xC bits determine top or bottom chaining of the entire label.
3118  Without anything spcified (0), the chaining is XtRubber.
3119  TextBox options can also specify top-chaining of their top. All this was
3120  needed to allow decent implementation of the Engine Output window with
3121  the generic popup. (Although tags and comment popup ca benefit from the
3122  latter feature.)
3123 Let GenericPopUp support a Graph option
3124  The Graph option results in an area where one can draw something. It is
3125  positioned / chained similar to Label options. A handler for expose events
3126  can be specified in the textValue field of the option.
3127 Implement box widgets and menu buttons in GenericPopup
3128  To enhance the capabilities of GenericPopUp such that it could create the
3129  main window, it needs to be able tha packaging of controls into a box widget
3130  (for mennu and button bar). Menu buttons are also required elements
3131  (although they do look a lot like comboboxes?) Option types BoxBegin and
3132  BoxEnd can now be used to bracket a group of controls that will be put
3133  in a box widget. (Cannot be used recursively!) The positioning of the box
3134  is similar to that of a Label, and is specified in the BogBegin option.
3135   The code to shrink the menu buttons to fit is also incorporated, to act
3136  on any box widget: if the BoxBegin option specifies a width, the elements
3137  in it are shrunk to meet the requirement. Otherwise the box just gets the
3138  size of the sum of its children (plus spacings).
3139   Label options can now specify a font, casted into their textValue field.
3140  (This is needed to get the proper size for the clock widgets.)
3141 Implement callback in BoxEnd options
3142  BoxEnd is a pseudo-option, to trigger packing the preceeding ones in
3143  an earlier-opened box widget. In the process it calculates the size of
3144  the box widget (and trims it if a size was specified for it in the
3145  corresponding BoxBegin). The Option.target field of BoxEnd is now
3146  interpreted as a callback, which can be use to take decisions based
3147  on the determined size for the remaining options in the list, before
3148  these are processed b GenericPopUp.
3149 Refactor xoptions.c
3150  Make a subroutine to set args shared by almost all widgets. Swap meaning
3151  of '1'-bit in option.min flag of Break option, to be consistent with
3152  SAME_ROW interpretation in other option types.
3153 Make option tables consistent with refactored GenericPopUp
3154  The flag for stacking in the Break option needed to be inverted, and
3155  the BoardPopUp needed to pass the font in another field. Better use was
3156  made of the improved chaining options too.
3157 Improve Graph-option event handling
3158  The user-supplied callback now gets 3 arguments passed: the event type
3159  (0 = pointer motion, 1...5 button press, -1...-5 release, 10 = expose),
3160  and two coordinates. For ouse events these are the pointer (x,y), while
3161  for expose events they are the window size (w,h). The callback is now
3162  specified in the option.target field of the Graph option.
3163 Store engine options in malloc'ed memory
3164  The Option.name field has been re-declared as (char*),  from (char[MSG_SIZ]).
3165  There are still MSG_SIZ chars allocated irrespective of actual size, because
3166  the field is also supposed to store the textValue, which can be changed by
3167  the user. But at least it means that unused options of the generous list
3168  now don't waste much space. (And the prparated Option tables in dialogs.c
3169  will shrink by a large factor as well.)
3170 Improve GenericPopUp ComboBox handling.
3171  The dialog type is now passed to the combobox callback as well, and this is
3172  used to really figure out what option it is called for.
3173 Allow numeric comboboxes
3174  When no list of strings is given in Option.choice, the target is assumed
3175  to be (int), and the number of the slected entry is stored there. Also
3176  adapts the Label options that act as fillers to the new method for making
3177  dummies (namely NULL in the Option.name field).
3178 Put comboCallback in Option struct
3179  Rather than having a general comboCallback variable for the entire current
3180  dialog, each ComboBox option can now specify its own callback in the
3181  target field of the option: the COMBO_CALLBACK bit of Option.min indicates
3182  whether the target is a variable to be set or a callback. The callback can
3183  still fetch the choice from the values array.
3184 Allow generic CreateComboPopup also to do main menus
3185  An extra parameter to CreateComboPopup determines if the menu texts
3186  should be taken from a list of strings (the old method with engine-
3187  supplied choices), or from a menu table of MenuItems. It can now also
3188  recognize "----" as a menu break, and keeps margins (for the marking).
3189 Make subroutine for determining curren combo selection
3190 Various fixes to GenericPopUp
3191 Delete one border-width setting
3192 Fix max nr of args in GenerocPopUp
3193 Fix button release events of Graph options
3194 Fix generic Graph callback pointer motion coordinates
3195 Make all format referencing in Option tables symbolic
3196 Let Option.choice define menu texts, rather than Option.textValue
3197  This is more logical than ussing textValue for it, because choice already
3198  has the correct (char**) type, while textValue was (char*), and needed
3199  casting everywhere. Note that for engine options, the fields were the
3200  same anyway, so no back-end change was required. The textValue now
3201  contains the (casted) list of actual string values, where these are
3202  needed. (But for numeric and function menus they aren't.)
3203 Add PopUp Option type
3204  An new pseudo-Option is defined, to add a popup menu to a previous Graph
3205  option. The actual popping up is done by the expose handler.
3206  The function XUngrabPointer is the key to success here. A PopUp option
3207  specifies a callback for handling the selection from the menu, which will
3208  be called with the option number, exacty as with ComboBox options.
3209 Update option explanation in dialogs.h
3210 Make Spin and CheckBox callbacks pass dialog number
3211  No longer rely on 'currentOptions' for getting the option belonging to
3212  the callback, but get it out of the dialogOptions array indexed by dialog
3213  type. This way things cannot be messed up by an asynchrounous error popup.
3214  It also means that it is now save for non-modal dialogs to use these options.
3215 Use button widget for text behind checkbox
3216 Let listboxes use general formatting hints
3217 Let GenericPopUp option always finish last pane after Break
3218 Allow LisBox to specify select callback in Option.textValue
3219 Use double-click to trigger ListBox callback
3220 Make ListBox callback re-entrant
3221 Fix multi-line Label options
3222 Separate CreateMenuItem out from CreateComboPopup
3223 Chain checkbox texts entirely left
3224 Allow a user-specified callback to Label options
3225  This is needed to implement the clocks. Let the CheckBox callback handle
3226  it. For now ther is no distinction between different mouse buttons.
3227
3228 2012-03-21 11:15:01 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3229 Prevent double PopDowns
3230
3231 Some DialogOK functions ordered an early PopDown themselves. This,
3232 however, resulted in PopDown being called twice when they returned TRUE.
3233 This interfered with the new system for allowing multiple instances of
3234 the same dialog. So these functions are now fixed to suppress the
3235 standard PopDown by always returning FALSE.
3236
3237 2012-03-20 19:10:50 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3238 Split usounds.c and usystem.c from xboard.c
3239
3240 X-independent code was moved to separate files. The nef file usound.c
3241 contains the sound handling, which in XBoard is trivial, because it uses
3242 an external player, but could be replaced by a complex one on platforms
3243 that have to handle the sound themselves.
3244   The usystem.c file contains all non-X Unix-like stuff, such as fork,
3245 pipe, system, getenv. I also contains some color parsing for the xterm
3246 colors. This stuff could be useful on platforms that support Unix-like
3247 system calls.
3248
3249 2012-03-26 19:03:19 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3250 Make routine to probe shift keys
3251
3252 The code to probe Alt keys was taken out of MoveTypeInProc, and extended
3253 to probing Ctrl and Shift keys too. These are now returned in the 6 LSB
3254 of an int by ShiftKeys().
3255
3256 2012-03-19 13:15:11 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3257 Remove one level of indirection on ICSInputBoxPopUp
3258
3259
3260 2012-04-10 10:26:24 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3261 Cleanup of xboard.c
3262
3263 Remove AskQuestionProc
3264 A bit of cleanup on xboard.c prototypes
3265 Remove dead file-browser code
3266 Delete vestigial jail code
3267  All the stuff about jailColor was deleted. Only one fishy thing remains:
3268  xpmJailSquare seems under some conditions used in BlankSquare to draw a
3269  'neutral' square. it is set to a copy of a light square image. But in the
3270  current design 'neutral' means blacked out between board and holdings,
3271  and even with image use, it should not resemble a light square...
3272 Remove registering of CommentPopDown and TagsPopDown
3273 Merge CopyGameSelection into CopyPositionSelection
3274
3275 2012-03-19 11:38:17 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3276 Move some back-endish routines from xboard.c to dialogs.c
3277
3278 Move ICS input-history handling to dialogs.c
3279 Move ICS Input Box text handling to dialogs.c
3280 Move DisplayXxxx routines to dialogs.c
3281 Move DisplayTitle to dialogs.c
3282  A wrapper SetWindowTitle remains in xboard.c.
3283
3284 2012-03-18 20:10:35 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3285 Split back-endish part off xoptions.c, and move to dialogs.c
3286
3287 Some MenuProcs for dialogs were also moved to dialogs.c from menus.c.
3288 MoveTypeInProc which is an event handler for the board widget,
3289 was moved to xboard.c, where it can be static.
3290
3291 Identify dialogs by enum type
3292  A new header dialogs.h is created, which defines an enum type DialogClass
3293  that is now used to identify the various dialogs done by GenericPopUp.
3294  The prototypes for GenericPopUp/PopDown, and other globals shared by the
3295  dialogs code and other modules can go in here as well.
3296 Remove ClearTextWidget
3297  This did the same as SetWidgetText with an empty string.
3298 Split X-code from PutText
3299 Split back-end part from MoveTypeInProc
3300 Take set-title out of comment popup
3301 Sort MenuProcs in dialogs.c with their support functions
3302 Declare globals in dialogs.c with functions where they belong
3303 Add prototypes to dialogs.h
3304 Move prototypes and globals from xoptions.c to dialogs.h
3305 Make accessor DialogExists for dialog shells
3306 Add dialogs.c to makefile: compiles and runs!
3307 Combine 3 calls into front-end to InitDrawingParams
3308 Move EditCommentProc and ICSInputBoxProc to dialogs.c
3309 Pass option list as argument to GenericUpdate and GenericReadOut
3310 Shorten argument name from currentOption to opts
3311  This to prevent confusing it with the global variable of that name.
3312
3313 2012-03-18 15:33:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3314 Declare some shared global variables in backend.h
3315
3316 The vlobals twoBoards and partnerUp were only shared through an extern
3317 declaration in xboard.c
3318
3319 2012-03-18 12:34:42 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3320 Split back-endish part off drawing code and move to board.c
3321
3322 Split DrawSquare in front-end and back-end part
3323 Back-endize DrawHighlights and DrawPosition
3324  The already existing wrapper FlashDelay is used as a kludge to do an XSync.
3325  We now pass a code for the line color GC to the highight routine. New
3326  wrappers are DrawGrid() and DrawBorder().
3327 Back-endize atomic explosions
3328 Back-endize DrawArrow and DrawDragPiece
3329  DrawDragPiece now calls DrawOneSquare with argument EmptySquare in stead
3330  of the X-type referring BlankSquare. A new wrapper DrawPolygon fixes
3331  DrawArrowBetweenPoints.
3332 Move board-drawing logic to new file board.c
3333  All X-independent drawing logic (board, squares, arrows, highlights,
3334  some animation stuff) has been extracted from xboard.c, and moved to
3335  a new file board.c, which is back-end (but unshared with WinBoard).
3336  A new header board.h defines the cross-references (which of course
3337  required some functions to be no longer declared as static).
3338   A bit of code was moved from DragPieceBegin to BeginAnimation, which
3339  now has an extra argument to indicate which piece should appear from
3340  under a dragged piece. This makes DragPieceBegin free of XCopyArea calls,
3341  so it could be moved too.
3342 Make board.c truly back-end
3343  Get rid of all X data types. For this the AnimState struct had to be
3344  redefined: the GC and Pixmap was taken out and put in front-end arrays
3345  indexed by anim agent (game and player). For this indexing a new enum
3346  was defined. The XPoint type was also replaced by our own type of an
3347  int pair (which is nasty, because the int size could be different).
3348 Move more animation code to board.c
3349
3350 2012-03-18 10:08:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3351 Contract some awful code replication
3352
3353 The code for making an X-color was replicated 6 times, and is now made
3354 into a subroutine. The code for creating GCs was quite repetitive as well.
3355
3356 2012-03-18 08:34:54 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3357 Move more back-endish menu-related stuff from xboard.c to menus.c
3358
3359 Move menu enabling to menus.c
3360  Only the wrapper EnableMenuItem stays in xboard.c. A new wrapper
3361  EnableButtonBar was necessary, because Training mode wants to enable/disable
3362  that too.
3363 Move all back-endish MenuProcs to menus.c
3364  Many if the MenuProcs that could not be eliminated by listing the
3365  corresponding back-end MenuEvent function as handler directly, are
3366  still completely plactform indpendent. (E.g. when the MenuEvent needs
3367  a parameter.) These are all moved to menus.c now.
3368 Convert all dead MenuProcs to using MarkMenuItem
3369  The MenuProcs for the option items that no longer exist were also
3370  converted for check-marking their item in the new way, because we
3371  might revive them for key binding.
3372 Move the dead MenuProcs also to menus.c
3373 Revive dead menu procs
3374 Move GreyRevert to menus.c
3375 Move ModeToWidgetName to menus.c
3376 Move initial menu marking to menus.c
3377
3378 A new function InitMenuMarkers was split off from main() to do this.
3379
3380 2012-03-18 08:17:53 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3381 Switch to use of short menu references
3382
3383 The prefixes menuXxxx. for the item names are abolished. This made it
3384 necessary to also add a MarkMenuItem function that can handle short names
3385 for putting the xMarkPixmap on the items, as the names returned by
3386 ModeToWidgetName are used for both enabling and check-marking.
3387 Let MarkMenu use MarkMenuItem wrapper
3388
3389 2012-03-17 10:47:04 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3390 Refactor menu code, and move it to menu.c
3391
3392 Supply new method for key binding
3393  It is annoying that every menu item needs its X-specific handler routine,
3394  because this handler has to be registered to X for becoming eligible as
3395  a key binding. Another disadvantage of this method is that the user wanting
3396  to make the binding has to know the name under which the menu function
3397  is registered (e.g. FlipViewProc).
3398   A new method is now made available, which uses only a single (X-specific)
3399  routine, registered with X as "MenuItem", as generic key-binding handler.
3400  The bindings can then be made by the user specifying "MenuItem(FlipView)".
3401  This requires a new list of potential bindings, which should be filled
3402  by the menu-creation routines. (Currently only contains only a predeficed
3403  example.)
3404 No longer register all MenuProcs with X
3405  The list with available menu procs is moved to the user-maintained
3406  menuItemList. Only QuitProc had to stay registered with X, because it is
3407  used in CatchDeleteWindow. (So it is in both lists now.) In the future,
3408  most of the list can be built automatically from the menu tables.
3409 Alter type of MenuProcs to void(void)
3410  By getting rid of the argument list with X-types, most menu procs can
3411  become back-end. In the cases of ManProc and QuitProc the original
3412  version had to be kept as well, because in ManProc the argument was
3413  actually used (with key binding), while QuitProc is used for delete window.
3414 Remove now unnecessary menu wrappers
3415  Now the MenuProc have an empty argument list, those that also call a
3416  single 'MenuEvent' without arguments have become completely redundant,
3417  and have been taken out of the loop by calling the corresponding MenuEvent
3418  directly.
3419 Build menuItemList from menu tables
3420  Rather than having an initialized table of name-proc associations (which
3421  used to be the X registrations) for the menu items, we now build the list
3422  during menu cration from the menu tables. The menu "ref" is now used as
3423  proc name. This means the old MenuProc names used in the predefined
3424  key bindings had to be changed to conform to this. Note that the bindings
3425  would slice up names containing spaces in several parameters, so in the
3426  translations the spaces were squeezed out of the item names. This requires
3427  a hand-written comparison routine Equal() to identify the binding.
3428 Remove prototypes of deleted MenuProcs
3429 Move prototypes of platform-independent MenuProcs to menus.h
3430  Create a new header file for the menu stuff, so that we can move
3431  the corresponding handler routines out of xboard.c to a back-end file.
3432 Extract back-end code from menu creation
3433  The menu tables and code to interpret them is moved to a new file menu.c.
3434  Only basic fuctions for creating a pop-down list and for adding an item
3435  to it remain in xboard.c.
3436
3437 2012-04-07 15:59:50 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3438 Remove some unused (exclude-moves) variables
3439
3440
3441 2012-04-07 15:57:54 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3442 Install engine within current group
3443
3444
3445 2012-04-07 15:53:29 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3446 Switch to using listboxes for engine-selection in WinBoard
3447
3448
3449 2012-04-07 15:36:02 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3450 Implement Narrow button in WB Game List
3451
3452
3453 2012-04-05 15:15:09 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3454 Silence unjust warning
3455
3456
3457 2012-04-04 12:18:43 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3458 Fix memory corruption through InitString and second-engine loading
3459
3460 The InitString and ComputerString options were not swapped when replacing
3461 the second engine, so that the ChessProgramStates of the first engine
3462 could point to an invalid (already freed) init string. Also make sure
3463 that appData.directory contains its value in allocated memory, even
3464 when hand-loading engines.
3465   Some of the rare options were not swapped either, and would thus
3466 always be loaded for the first engine when -singleEngineList was true.
3467 They are now also all reset to their default, before engine load,
3468 to prevent options of one engine to linger on for a next that does
3469 not specify them. The intentional exception is -firstHost.
3470
3471 2012-04-01 20:51:53 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3472 Fix PV sorting during fail low
3473
3474 When an engine reports a fail low as thinking output, and then re-searches
3475 the same move with larger window, it now gets a lower score. This line
3476 would then be sorted below the earlier fail low, because it was mistaken
3477 for a multi-PV line for an inferior move. This patch suppresses PVs
3478 overtaking each other if they start with the same move.
3479
3480 2012-03-30 20:09:58 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3481 Extend smallLayout regime up to size Medium
3482
3483 Because of the increase number of menus, there is not enough space for a
3484 title next to the menu bar at smaller sizes. In fact it is questionable if
3485 the title should ever go on the same line as the menu bar.
3486
3487 2012-03-30 10:38:27 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3488 Fix parsing crazyhouse promotions with legality testing off
3489
3490 With legality testing off, any promotion suffixes in a move are taken
3491 'on faith'. But in crazyhouse the piece ID for normal pieces is used as
3492 promotion suffix for promoted pieces, so this would Loop Chess rather than
3493 Crazyhouse. Now attention is payed to presence of ID-less promotion pieces
3494 (indicated by ~ in the pieceToCharTable), and if there are, these prevail
3495 ovr the specified type.
3496
3497 2012-03-30 10:07:04 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3498 Fix browsing for save file in WB
3499
3500 The generic popup browse buttons used the wrong flavor of browser,
3501 which would only accept existing files. This was inconvenient when browsing
3502 for a save file. The other flavor of browser is now used by default (so that
3503 engine options also use it), and a new flag is added in the option.max field
3504 (which was already indicating file type) to request readonly browsing for a
3505 save file.
3506
3507 2012-04-02 10:18:37 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3508 Let clicking on header line exclude moves
3509
3510 The exclude header in the Engine-Output window can now be clicked, to
3511 toggle the exlusion of the listed move. Clicking on 'none' resets all
3512 exclusions, clicking on 'best' excludes the first move of the latest PV.
3513 The pseudo-move 'tail' represents all non-listed moves.
3514
3515 2012-04-01 22:39:55 +0200 H.G. Muller <h.g.muller@hccnet.nl>:
3516 Keep list of excluded moves in Engine Output header
3517
3518 As long as there is still space, excluded or included moves are added
3519 to a new header line in the Engine Output window (prefixed with + or -
3520 depending on whether they are currently excluded or included). Future
3521 in/exclusions of that same move then alter the prefix.
3522
3523 2012-03-21 23:12:20 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3524 Fix focus of Game List
3525
3526 After focus was transferred to the filter text-edit, it was impossible
3527 to get it back on the game list (to make the arrow keys working again).
3528 A translation to left down-click is now used to assign focus, just as
3529 it would for text edits. For unknown reason this only worked if the
3530 translations were instated by Overriding, rather than Augmenting,
3531 which again required the normal translation of downclick, Set(), which
3532 selects the clicked item, to be explicitly mentioned as well.
3533
3534 2012-03-16 22:41:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3535 Fix taking effect of some option changes
3536
3537 This fixes a bug reported at Ubuntu: when switching off move highlighting
3538 in Two Machines mode, the last move before the switch stayed highlighted.
3539 The GeneralOptionsOK() now clears any remaining highlights when highlighing
3540 is off. Similar problems with blind-fold mode and coordinates, which require
3541 a total board redraw to take effect, are now solved by also forcing such a
3542 redraw in GeneralOptionsOK() when they change.
3543
3544 2012-03-16 21:58:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3545 Add exclude and setscore to protocol specs
3546
3547
3548 2012-03-16 14:47:25 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3549 Fix clock stop after dragging
3550
3551 DelayedDrag always cancelled the previous drag timeout event, even when
3552 this was no longer pending because it had already taken place, and the
3553 event ID was resused by some other timeout (usually a clock tick).
3554
3555 2012-03-14 21:06:28 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3556 Implement exclude moves
3557
3558 Dragging a piece by double-clicking it on the from-square in analysis mode
3559 will not perform the entered move, but send an exclude or include command
3560 to the engine for that move (provided the engine enabled this with
3561 feature exclude=1), depending on if the move was already excluded or not.
3562 To this end a map of excluded moves is kept, and cleared when we move to
3563 another position through moving, undo, setboard or new. The user can see
3564 whether he included or excluded the move, as exclude uses premove highlights.
3565   Commands "exclude|include all" are sent when we throw a double-clicked
3566 piece off board (vertically or horizontally, respectively), but after
3567 exclude all the most recent PV move is included again.
3568   Remaining problem is that promotions can only be excluded.
3569
3570 2012-03-14 15:13:18 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
3571 Mark new text "Click clock to clear board" for translation
3572
3573
3574 2012-03-13 21:46:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3575 More thorough switch to -ncp on engine failure
3576
3577 The ProcRef and InputSource are now also cleared, and just to be sure there
3578 are no surviving adapters, the child is killed when engine startup fails.
3579
3580 2012-03-13 21:25:22 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3581 Install engines as ./exefile in XBoard
3582
3583 When a path name is split into directory and filename, the latter in Linux
3584 must be preceded by ./ in order to make it executable in the directory
3585 XBoard starts it in.
3586
3587 2012-03-13 14:11:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3588 Inform user in EditPosition mode how to clear board
3589
3590 With -pieceMenu false the board is cleared by clicking the clock, but
3591 since this is impossible to guess, it is now printed in the message field.
3592
3593 2012-03-13 14:06:32 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3594 Fix fall-back on -ncp mode
3595
3596 When the requested engine could not be started, the user still had to
3597 wait for the feature timeout to expire before the UI was re-enabled,
3598 and the now-useless loading action would continue. In stead we now
3599 cancel any scheduled continuation, thaw the UI immediately, and switch
3600 the menus and gameMode to ncp straight away.
3601
3602 2012-03-10 18:55:24 -0800 Arun Persaud <arun@nubati.net>:
3603 updated po/pot files
3604
3605
3606 2012-03-10 18:54:32 -0800 Arun Persaud <arun@nubati.net>:
3607 new version number for developer release
3608
3609
3610 2012-03-06 16:37:02 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
3611 Fix typo (seach) in string. It is already fixed in branch v4.6.x
3612
3613
3614 2012-03-04 14:52:34 -0800 Arun Persaud <arun@nubati.net>:
3615 added some documentation about what's need to be done for a release and a bash-release script
3616
3617
3618 2012-02-28 21:09:18 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3619 Fix suspected bug in Makefile
3620
3621
3622
3623
3624 2012-02-26 18:55:10 -0800 Arun Persaud <arun@nubati.net>:
3625 add information about our webpage and were to report bugs into the help menu
3626
3627
3628 2012-02-26 18:40:27 -0800 Arun Persaud <arun@nubati.net>:
3629 fixed "make install-pdf": missing target for recursive make in po directory
3630
3631
3632 2012-02-26 23:06:33 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3633 Suppress recent-engines menu items in ICS mode
3634
3635
3636 2012-02-26 22:45:12 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3637 Fix 50-move counter in ICS mode
3638
3639 Marking irreversible moves in the EP_STATUS did not work in ICS mode,
3640 as ApplyMove,which did that is never executed there. Only the boards
3641 sent by ICS are displayed,especially in observing mode. Now the status is
3642 derived from the ICS mov strings (x in the SAN move, or P in the long move.
3643
3644 2012-02-26 17:18:39 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3645 Fix two 64-bit warnings
3646
3647 Passing the engine number in a pointer variable to the callback needed
3648 a two-step cast.
3649
3650 2012-02-26 16:53:24 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3651 Fix piece symbols on switch back to variant normal
3652
3653 Variant switches were not properly detected, meaning the variable pieces
3654 could keep a form belonging to a previous variant. (E.g. Queen remained
3655 a Lance image after switching from shogi to normal.)
3656
3657 2012-02-26 14:07:50 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3658 Keep XBoard windows attached on resize
3659
3660 Windows attached to bottom or right are displaced with the size increase.
3661 Their perpendicular dimension is also scaled, to keep their edges at the same
3662 fraction of the main window, unless they stick out. In the latter case the
3663 fraction is clipped to 1, so that edge moves with the full size increase.
3664
3665 2012-02-25 22:40:56 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3666 Implement -stickyWindows in XBoard
3667
3668 This makes the auxiliary windows  move with the main window when they were
3669 touching, as in WinBoard. A control is added in the General Options dialog.
3670
3671 2012-02-25 21:14:03 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3672 Use more reliable X-call for getting window position
3673
3674 XtGetValues on XtNx, XtNy is unreliable. XGetWindowAttributes seems
3675 to give more reliable results, and automatically accounts for the width
3676 of window dressing. The -frameX/Y options are no longer needed bcause
3677 of this, and were removed.
3678
3679 2012-02-25 11:55:19 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3680 Make frame width configurable in XB
3681
3682 New persistent options -frameX, -frameY now can be used to specify
3683 the amount by which Xt lies about the window coordinates.
3684
3685 2012-02-23 20:01:55 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3686 Use combobox line for recent engines when available
3687
3688 The entry made in the -recentEngineList for the startup engine was
3689 derived from the -fcp value, but this would ignore a possible nickname.
3690 In WinBoard we now use the full combobox line to derive the entry.
3691
3692 2012-02-23 09:29:17 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3693 Fix translation of EngineOutputTitle WB
3694
3695
3696 2012-02-23 01:34:12 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
3697 Updated Danish translation
3698
3699
3700 2012-02-23 00:59:36 +0100 Byrial Jensen <byrial@vip.cybercity.dk>:
3701 One missed translation of cps->which
3702
3703
3704 2012-02-22 19:58:41 +0100 H.G. Muller <h.g.muller@hccnet.nl>:
3705 Undo translation of cps->which = first/second
3706