updated to new html5 boilerplate
[xboard.git] / whats_new / 4.5.2 / index.html
1 <!--#include virtual="/server/html5-header.html" -->
2 <title>XBoard - GNU Project - Free Software Foundation - NEWS</title>
3 <!--#include virtual="/server/banner.html" -->
4 <!--#set var="article_name" value="/server/standards/boilerplate" -->
5 <!--#include virtual="/server/gnun/initial-translations-list.html" -->
6 <h2>What is new in WinBoard / XBoard 4.5.2?</h2>
7 <table cellpadding="20"><tr valign="top"><td>
8
9 <ul><li>
10 <a href="#tag-A1">A universal dialog constructor</a>
11 </li><li>
12 <a href="#tag-A2">Re-organization of the Options menu</a>
13 </li><li>
14 <a href="#tag-A3">Installing sounds with XBoard</a>
15 </li><li>
16 <a href="#tag-A4">Starting an engine match from the menu</a>
17 </li><li>
18 <a href="#tag-C3">Changing the board look during a session</a>
19 </li><li>
20 <a href="#tag-C4">Sending instant ICS commands</a>
21 </li><li>
22 <a href="#tag-A5">Enhancing some existing menu dialogs</a>
23 </li><li>
24 <a href="#tag-A6">Browsing for file and path names</a>
25 </li><li>
26 <a href="#tag-A7">Filtering files by extension</a>
27 </li><li>
28 <a href="#tag-C8">Operating scroll bars with the mouse wheel</a>
29 </li></ul>
30 </td><td>
31
32 <img src="winboardF.png">
33 <p>
34 <a href="index.html">Home</a>
35 </p>
36 </td></tr></table>
37
38
39 <table cellpadding="20" valign="top"><tr><td align="center">
40 <p>
41 <img src="LoadOpt.png">
42 </p><p>
43 <img src="SaveOpt.png">
44 </p>
45 </td><td valign="top">
46 <h3><a name="tag-A1">New dialogs through a universal dialog constructor</a></h3>
47 <p>
48 XBoard did already have a 'universal' dialog constructor,
49 for creating the Engine #N Settings popup based on the list of options sent by the engine.
50 This constructor has been adapted a little to not send the user-specified settings to the engine,
51 but set XBoard's internal options in stead.
52 This means that dialogs now can be added with very little effort,
53 by making a list of options containing the type (spin, check, string, combo, button),
54 name (= text to appear with the control) and XBoard internal option it should set.
55 </p><p>
56 This dialog constructor has been used to add Save and Load-Options dialogs
57 similar to those WinBoard already had to XBoard.
58 Because it is now totally trivial to add a new option to an existing dialog
59 (just add one line in the table specifying the options),
60 the Save-Options dialog has also be made to include the -savePositionFile.
61 </p>
62 <h3><a name="tag-A6">A browse button with file or path-name options</a></h3>
63 <p>
64 Note that the dialog constructor now supports browse buttons next to text
65 fields that are intended for entering a file or path name.
66 Pressing this button summons up the file-selector dialog,
67 and the name of the selected file will be copied to the text field
68 on pressing OK there.
69 There have been other small improvements in the operation of the dialogs as well,
70 like checkboxes reacting to clicking on the accompanying text,
71 positioning the cursor in clicked text edits, and such.
72 </p>
73 </td></tr></table>
74
75 <h3><a name="tag-A2">Reorganiation of the XBoard Options menu</a></h3>
76 <p>
77 The XBoard 'Options' main menu used to hold all items to set options,
78 where a checkmark indicated the current stateof the option.
79 Apart from the fact that this obviously would not work for numeric or text options,
80 the number of options was growing so large that this became a bit of a clutter.
81 The univeral dialog constructor was used to group the actual items
82 sets of dialogs, which are then summoned from the Options main menu.
83 </p>
84 <table cellpadding="20" valign="top"><tr><td>
85 <p>
86 The existing items roughly came in two kinds:
87 those that could always be used,
88 and those that only affected behavior in ICS play.
89 The latter were greyed-out from the menu in local modes.
90 The generally useful options were all moved to a "General Options" dialog,
91 except for "Ponder Next Move", which was really an engine-related option,
92 and was already contained as a duplicat in the "Common Engine" dialog.
93 The better capabilities of a dialog compared to a simple menu
94 were used to allow better specification of the "Flash Moves" option:
95 one can now actually enter the -flashRate and -flashCount settings through a spin control.
96 </p><p>
97 The ICS-related options were all moved to an "ICS Options" dialog,
98 which is then greyed-out as a whole in the main Options menu.
99 The new capabilities of the dialog were exploited for adding
100 options to set intial black and white premove texts,
101 the ICS Alarm setting,
102 and the text colorization in the ICS console.
103 </p>
104 <img src="ICSOpt.png">
105 </td><td valign="top">
106 <img src="GenOpt.png">
107 </td></tr></table>
108
109
110 <table cellpadding="20" valign="top"><tr><td>
111 <img src="SoundOpt.png">
112 </td><td>
113 <h3><a name="tag-A3">Sounds and XBoard</a></h3>
114 <p>
115 The sounds in XBoards were a bit of a neglected feature.
116 Binary distribtions (such as Debian, Ubuntu) often did not even contain any sounds,
117 and a normal 'make install' from source left the sound files untouched in the source directory.
118 Configuring XBoard to use the sounds was therefore cumbersome, through many command-line options
119 not in the least because an external sound player is needed.
120 </p><p>
121 The new Sound Options dialog changes all that!
122 For every event there is a combobox where you can select a standard sound
123 (as supplied in the XBoard source package),
124 or a user-specified file (in a text edit at the top of the dialog).
125 A new option -soundDirectory has been added, which can also be set from the dialog,
126 where all the standard sounds will be sought.
127 (So if you just build XBoard and the binary is still sitting in the source directory,
128 setting the sound directory to "sounds"makes all the WAV files with the standard sounds
129 distributed in this subdirectory available.)
130 </p><p>
131 An extra combobox plus a 'Play' button for trying out a sound has been incorporated
132 in the dialog as well.
133 It still has to be decided if in the future sound files will be shipped with XBoard,
134 and if so, which will be included in the standard package.
135 </p>
136 </td></tr></table>
137
138 <table cellpadding="20" valign="top"><tr><td>
139 <h3><a name="tag-A4">Conducting engine matches interactively</a></h3>
140 <p>
141 A menu item has been added in XBoard to start an engine match. (WinBoard already had this.)
142 Formerly this was only possible by using the -mm (-matchMode) and -mg (-matchGames) on the comamand line,
143 and after the match XBoard would terminate automatically (possibly with an Exit popup with the match result).
144 When a match is started from the meu, you still will get this popup, but XBoard will not terminate.
145 </p><p>
146 To define the parameters for the match, XBoard now has a new "Match Options" dialog.
147 Here you can set the number of games,
148 the file to use for opening lines (-lgf = -loadGameFile) or start positions (-lpf = -loadPositionFile),
149 and the number of game or position to use from this file (-lgi / -loadGameIndex or -lpi / -loadPositionIndex).
150 As in the command-line option, a value of -1 for the index will specify it should increment after every game
151 (always starting at 1), and -2 after every 2 games.
152 The value at which the index should 'rewind' to 1 can also be given, all through spin controls.
153 </p>
154 </td><td>
155 <img src="MatchOpt.png">
156 </td></tr></table>
157
158 <table cellpadding="20" valign="top"><tr><td>
159 <img src="NewVar.png">
160 </td><td>
161 <h3><a name="tag-A5">Redesigning existing dialogs</a></h3>
162 <p>
163 Some of the existing dialogs (Common Engine, Adjudication Options, New Variant) have been redesigned, 
164 to simplify the XBoard code, and to make use of the new features offered by the universal dialog constructor.
165 In this way the New Variant dialog has now be equipped with spin controls to set overrule the default board size
166 of the selected variant,
167 and operation has been made easier by using the variant selection button as menu items,
168 rather than selection buttons that you have to OK afterwards.
169 Clicking a variant now imemdiately selects it and closes the dialog.
170 </p><p>
171 The Common Engine settings and Adjudication Options dialogs now can use spin controls 
172 rather than simple text edits for the numeric values.
173 </p>
174 <pre>
175 <img src="ComOpt.png">     <img src="AdjuOpt.png">
176 </pre>
177 </td></tr></table>
178 <table cellpadding="20" valign="top"><tr><td>
179 <h3><a name="tag-A7">Selecting files of a given type only</a></h3>
180 <p>
181 The file-selection dialog of XBoard now has the capability
182 to filter the files it displays by extension.
183 This is useful, as typically you are only interested in *.fen or *.epd
184 files when you are browsing for the purpose of opening a position file.
185 Without this feature the files you are looking for would easily drawn
186 in the background of other files.
187 </p><p>
188 The file-selection dialog now has an extra text field where you can
189 write one or more extensions (separated by spaces),
190 and only filenames that contain one of these as a substring are displayed.
191 (And directories; these are always displayed, in order to browse.)
192 XBoard initializes this field according to what command invoked
193 the file selector.
194 E.g. Load Game will ask for *.pgn and *.game files,
195 Load Position for *.fen, *.epd and *.pos files,
196 Save Game for *.pgn or *.pos files
197 (depending on if you have selected "old save style" or not), etc.
198 </p><p>
199 When the file selector is invoked through a browse buttonin another dialog,
200 it selects those files with the same extenstion as what is currently
201 in the field that you are selecting for.
202 Of course you can change the extension field by erasing what is there,
203 or typing your own extensions.
204 To have such a change take effect, you should type &lt;Enter> while in this field.
205 </p>
206 <h3><a name="tag-C8">Using the mouse wheel</a></h3>
207 <p>
208 An experimental feature in the file browser is the use of the mouse wheel.
209 Because of the way scroll bars work in X-applications,
210 they are rather hard to operate if you do not have a middle mouse button.
211 Laptops nowadays often use the right edge of the mouse touch pad
212 as mouse wheel, however.
213 Therefore operaton of the mouse wheel in the area of the file lists
214 or vertical scroll bars are made to scroll these lists.
215 Other refinements of the file-browse dialog are that double-clicking a filename counts as if you pressed 'OK',
216 as does typing &lt;Enter> in the filename field.
217 Typing &lt;Esc> there is equivaent to pressing 'cancel'.
218 </p>
219 </td><td>
220 <image src="Browse.png">
221 </td></tr></table>
222
223 <table cellpadding="20" valign="top"><tr><td>
224 <img src="BoardOpt.png">
225 </td><td>
226 <h3><a name="tag-C3">Configuring the board look from the menu</a></h3>
227 <p>
228 There also has been created a new XBoard dialog for setting the Board Options,
229 such as square and piece colors (in the View menu).
230 This is still in an experimental stage, and probably not fully functional, or even buggy.
231 This is not so much because the dialog does not work,
232 but because the XBoard code is not really designed to change these during the session,
233 as many preparatory steps are done at startup, 
234 which have to be redone with the new option settings for the latter to take effect,
235 and I have not yet identified them all.
236 But in any case changing the settings, quitting XBoard, and restarting it will work,
237 because the option changes are persistent.
238 </p><p>
239 The color settings of the various board elements can be changed by retyping the RGB code,
240 but it is also possible to slightly adjust the colors by spinlike buttons.
241 Because colors form a 3-dimensional space, this cannot be done by simple '+' and '-' buttons,
242 but requires four different adjustment directions:
243 buttons to make the color redder, greener, bluer or whiter.
244 </p><p>
245 Text-edits are provided to specify filenames for board texture,
246 and the directories with alternate piece images 
247 (corresponding to the -bitmapDirectory and -pixmapDirectory command-line options).
248 </p>
249 </td></tr></table>
250 <table cellpadding="20" valign="top"><tr><td>
251 <h4><a name="tag-C4">Sending prepared commands to an ICS</a></h3>
252 <p>
253 This is an attempt to equip XBoard with something similar to the
254 WinBoard ICS context menu.
255 The user can define a set of buttons and a set of commands
256 to be send to the ICS when these buttons are pressed,
257 through the -icsMenu option.
258 The commands can be complete, such as "who" or "ptell I need a Queen!",
259 in which case they are sent to the ICS immediately.
260 But they can also contain the keyword $input,
261 in which case they will be placed in the ICS Input Box,
262 with the cursor at the place where the $input was
263 (which is deleted).
264 The user can then type something to complete the command,
265 and press &lt;Enter> to send it.
266 E.g. "shout $input".
267 </p><p>
268 It is also possible to let the command contain something you select
269 with the mouse elsewhere.
270 Usually this is an ICS handle from the ICS console.
271 This is done by having the command contain the keyword $name,
272 e.g. "finger $name", or "tell $name $input".
273 You can also specify a command should not replace what is in the Input Box,
274 but rather append to it,
275 by having it start with $add.
276 This can be useful for bughouse players,
277 to quickly ask for a list of pieces.
278 </p>
279 </td><td>
280 <img src="TextMenu.png">
281 </td></tr></table>
282
283 </div><!-- for id="content", starts in the include above -->
284 <!--#include virtual="/server/footer.html" -->
285 <div id="footer">
286
287 <p>Please send general FSF &amp; GNU inquiries to
288 <a href="mailto:gnu@gnu.org">&lt;gnu@gnu.org&gt;</a>.
289 There are also <a href="/contact/">other ways to contact</a>
290 the FSF.<br />
291 Please send broken links and other corrections or suggestions to
292 <a href="mailto:bug-xboard@gnu.org">&lt;bug-xboard@gnu.org&gt;</a>.</p>
293
294 <p>Please see the <a
295 href="/server/standards/README.translations.html">Translations
296 README</a> for information on coordinating and submitting translations
297 of this article.</p>
298
299 <p>Copyright &copy; 2009, 2010, 2011, 2012 Free Software Foundation, Inc.</p>
300
301 <p>This page is licensed under a <a rel="license"
302 href="http://creativecommons.org/licenses/by-nd/3.0/us/">Creative
303 Commons Attribution-NoDerivs 3.0 United States License</a>.</p>
304
305 <p>Updated:
306 <!-- timestamp start -->
307 $Date: 2012/01/11 04:40:01 $
308 <!-- timestamp end -->
309 </p>
310 </div>
311 </div>
312 </body>
313 </html>