11 years agoMake routine to probe shift keys
H.G. Muller [Mon, 26 Mar 2012 17:03:19 +0000 (19:03 +0200)]
Make routine to probe shift keys

The code to probe Alt keys was taken out of MoveTypeInProc, and extended
to probing Ctrl and Shift keys too. These are now returned in the 6 LSB
of an int by ShiftKeys().

11 years agoRemove one level of indirection on ICSInputBoxPopUp
H.G. Muller [Mon, 19 Mar 2012 12:15:11 +0000 (13:15 +0100)]
Remove one level of indirection on ICSInputBoxPopUp

11 years agoCleanup of xboard.c
H.G. Muller [Tue, 10 Apr 2012 08:26:24 +0000 (10:26 +0200)]
Cleanup of xboard.c

Remove AskQuestionProc
A bit of cleanup on xboard.c prototypes
Remove dead file-browser code
Delete vestigial jail code
 All the stuff about jailColor was deleted. Only one fishy thing remains:
 xpmJailSquare seems under some conditions used in BlankSquare to draw a
 'neutral' square. it is set to a copy of a light square image. But in the
 current design 'neutral' means blacked out between board and holdings,
 and even with image use, it should not resemble a light square...
Remove registering of CommentPopDown and TagsPopDown
Merge CopyGameSelection into CopyPositionSelection

11 years agoMove some back-endish routines from xboard.c to dialogs.c
H.G. Muller [Mon, 19 Mar 2012 10:38:17 +0000 (11:38 +0100)]
Move some back-endish routines from xboard.c to dialogs.c

Move ICS input-history handling to dialogs.c
Move ICS Input Box text handling to dialogs.c
Move DisplayXxxx routines to dialogs.c
Move DisplayTitle to dialogs.c
 A wrapper SetWindowTitle remains in xboard.c.

11 years agoSplit back-endish part off xoptions.c, and move to dialogs.c
H.G. Muller [Sun, 18 Mar 2012 19:10:35 +0000 (20:10 +0100)]
Split back-endish part off xoptions.c, and move to dialogs.c

Some MenuProcs for dialogs were also moved to dialogs.c from menus.c.
MoveTypeInProc which is an event handler for the board widget,
was moved to xboard.c, where it can be static.

Identify dialogs by enum type
 A new header dialogs.h is created, which defines an enum type DialogClass
 that is now used to identify the various dialogs done by GenericPopUp.
 The prototypes for GenericPopUp/PopDown, and other globals shared by the
 dialogs code and other modules can go in here as well.
Remove ClearTextWidget
 This did the same as SetWidgetText with an empty string.
Split X-code from PutText
Split back-end part from MoveTypeInProc
Take set-title out of comment popup
Sort MenuProcs in dialogs.c with their support functions
Declare globals in dialogs.c with functions where they belong
Add prototypes to dialogs.h
Move prototypes and globals from xoptions.c to dialogs.h
Make accessor DialogExists for dialog shells
Add dialogs.c to makefile: compiles and runs!
Combine 3 calls into front-end to InitDrawingParams
Move EditCommentProc and ICSInputBoxProc to dialogs.c
Pass option list as argument to GenericUpdate and GenericReadOut
Shorten argument name from currentOption to opts
 This to prevent confusing it with the global variable of that name.

11 years agoDeclare some shared global variables in backend.h
H.G. Muller [Sun, 18 Mar 2012 14:33:18 +0000 (15:33 +0100)]
Declare some shared global variables in backend.h

The vlobals twoBoards and partnerUp were only shared through an extern
declaration in xboard.c

11 years agoSplit back-endish part off drawing code and move to board.c
H.G. Muller [Sun, 18 Mar 2012 11:34:42 +0000 (12:34 +0100)]
Split back-endish part off drawing code and move to board.c

Split DrawSquare in front-end and back-end part
Back-endize DrawHighlights and DrawPosition
 The already existing wrapper FlashDelay is used as a kludge to do an XSync.
 We now pass a code for the line color GC to the highight routine. New
 wrappers are DrawGrid() and DrawBorder().
Back-endize atomic explosions
Back-endize DrawArrow and DrawDragPiece
 DrawDragPiece now calls DrawOneSquare with argument EmptySquare in stead
 of the X-type referring BlankSquare. A new wrapper DrawPolygon fixes
Move board-drawing logic to new file board.c
 All X-independent drawing logic (board, squares, arrows, highlights,
 some animation stuff) has been extracted from xboard.c, and moved to
 a new file board.c, which is back-end (but unshared with WinBoard).
 A new header board.h defines the cross-references (which of course
 required some functions to be no longer declared as static).
  A bit of code was moved from DragPieceBegin to BeginAnimation, which
 now has an extra argument to indicate which piece should appear from
 under a dragged piece. This makes DragPieceBegin free of XCopyArea calls,
 so it could be moved too.
Make board.c truly back-end
 Get rid of all X data types. For this the AnimState struct had to be
 redefined: the GC and Pixmap was taken out and put in front-end arrays
 indexed by anim agent (game and player). For this indexing a new enum
 was defined. The XPoint type was also replaced by our own type of an
 int pair (which is nasty, because the int size could be different).
Move more animation code to board.c

11 years agoContract some awful code replication
H.G. Muller [Sun, 18 Mar 2012 09:08:55 +0000 (10:08 +0100)]
Contract some awful code replication

The code for making an X-color was replicated 6 times, and is now made
into a subroutine. The code for creating GCs was quite repetitive as well.

11 years agoMove more back-endish menu-related stuff from xboard.c to menus.c
H.G. Muller [Sun, 18 Mar 2012 07:34:54 +0000 (08:34 +0100)]
Move more back-endish menu-related stuff from xboard.c to menus.c

Move menu enabling to menus.c
 Only the wrapper EnableMenuItem stays in xboard.c. A new wrapper
 EnableButtonBar was necessary, because Training mode wants to enable/disable
 that too.
Move all back-endish MenuProcs to menus.c
 Many if the MenuProcs that could not be eliminated by listing the
 corresponding back-end MenuEvent function as handler directly, are
 still completely plactform indpendent. (E.g. when the MenuEvent needs
 a parameter.) These are all moved to menus.c now.
Convert all dead MenuProcs to using MarkMenuItem
 The MenuProcs for the option items that no longer exist were also
 converted for check-marking their item in the new way, because we
 might revive them for key binding.
Move the dead MenuProcs also to menus.c
Revive dead menu procs
Move GreyRevert to menus.c
Move ModeToWidgetName to menus.c
Move initial menu marking to menus.c

A new function InitMenuMarkers was split off from main() to do this.

11 years agoSwitch to use of short menu references
H.G. Muller [Sun, 18 Mar 2012 07:17:53 +0000 (08:17 +0100)]
Switch to use of short menu references

The prefixes menuXxxx. for the item names are abolished. This made it
necessary to also add a MarkMenuItem function that can handle short names
for putting the xMarkPixmap on the items, as the names returned by
ModeToWidgetName are used for both enabling and check-marking.
Let MarkMenu use MarkMenuItem wrapper

11 years agoRefactor menu code, and move it to menu.c
H.G. Muller [Sat, 17 Mar 2012 09:47:04 +0000 (10:47 +0100)]
Refactor menu code, and move it to menu.c

Supply new method for key binding
 It is annoying that every menu item needs its X-specific handler routine,
 because this handler has to be registered to X for becoming eligible as
 a key binding. Another disadvantage of this method is that the user wanting
 to make the binding has to know the name under which the menu function
 is registered (e.g. FlipViewProc).
  A new method is now made available, which uses only a single (X-specific)
 routine, registered with X as "MenuItem", as generic key-binding handler.
 The bindings can then be made by the user specifying "MenuItem(FlipView)".
 This requires a new list of potential bindings, which should be filled
 by the menu-creation routines. (Currently only contains only a predeficed
No longer register all MenuProcs with X
 The list with available menu procs is moved to the user-maintained
 menuItemList. Only QuitProc had to stay registered with X, because it is
 used in CatchDeleteWindow. (So it is in both lists now.) In the future,
 most of the list can be built automatically from the menu tables.
Alter type of MenuProcs to void(void)
 By getting rid of the argument list with X-types, most menu procs can
 become back-end. In the cases of ManProc and QuitProc the original
 version had to be kept as well, because in ManProc the argument was
 actually used (with key binding), while QuitProc is used for delete window.
Remove now unnecessary menu wrappers
 Now the MenuProc have an empty argument list, those that also call a
 single 'MenuEvent' without arguments have become completely redundant,
 and have been taken out of the loop by calling the corresponding MenuEvent
Build menuItemList from menu tables
 Rather than having an initialized table of name-proc associations (which
 used to be the X registrations) for the menu items, we now build the list
 during menu cration from the menu tables. The menu "ref" is now used as
 proc name. This means the old MenuProc names used in the predefined
 key bindings had to be changed to conform to this. Note that the bindings
 would slice up names containing spaces in several parameters, so in the
 translations the spaces were squeezed out of the item names. This requires
 a hand-written comparison routine Equal() to identify the binding.
Remove prototypes of deleted MenuProcs
Move prototypes of platform-independent MenuProcs to menus.h
 Create a new header file for the menu stuff, so that we can move
 the corresponding handler routines out of xboard.c to a back-end file.
Extract back-end code from menu creation
 The menu tables and code to interpret them is moved to a new file menu.c.
 Only basic fuctions for creating a pop-down list and for adding an item
 to it remain in xboard.c.

11 years agoRemove some unused (exclude-moves) variables
H.G. Muller [Sat, 7 Apr 2012 13:59:50 +0000 (15:59 +0200)]
Remove some unused (exclude-moves) variables

11 years agoInstall engine within current group
H.G. Muller [Sat, 7 Apr 2012 13:57:54 +0000 (15:57 +0200)]
Install engine within current group

11 years agoSwitch to using listboxes for engine-selection in WinBoard
H.G. Muller [Sat, 7 Apr 2012 13:53:29 +0000 (15:53 +0200)]
Switch to using listboxes for engine-selection in WinBoard

11 years agoImplement Narrow button in WB Game List
H.G. Muller [Sat, 7 Apr 2012 13:36:02 +0000 (15:36 +0200)]
Implement Narrow button in WB Game List

11 years agoSilence unjust warning
H.G. Muller [Thu, 5 Apr 2012 13:15:09 +0000 (15:15 +0200)]
Silence unjust warning

11 years agoFix memory corruption through InitString and second-engine loading
H.G. Muller [Wed, 4 Apr 2012 10:18:43 +0000 (12:18 +0200)]
Fix memory corruption through InitString and second-engine loading

The InitString and ComputerString options were not swapped when replacing
the second engine, so that the ChessProgramStates of the first engine
could point to an invalid (already freed) init string. Also make sure
that appData.directory contains its value in allocated memory, even
when hand-loading engines.
  Some of the rare options were not swapped either, and would thus
always be loaded for the first engine when -singleEngineList was true.
They are now also all reset to their default, before engine load,
to prevent options of one engine to linger on for a next that does
not specify them. The intentional exception is -firstHost.

11 years agoFix PV sorting during fail low
H.G. Muller [Sun, 1 Apr 2012 18:51:53 +0000 (20:51 +0200)]
Fix PV sorting during fail low

When an engine reports a fail low as thinking output, and then re-searches
the same move with larger window, it now gets a lower score. This line
would then be sorted below the earlier fail low, because it was mistaken
for a multi-PV line for an inferior move. This patch suppresses PVs
overtaking each other if they start with the same move.

11 years agoExtend smallLayout regime up to size Medium
H.G. Muller [Fri, 30 Mar 2012 18:09:58 +0000 (20:09 +0200)]
Extend smallLayout regime up to size Medium

Because of the increase number of menus, there is not enough space for a
title next to the menu bar at smaller sizes. In fact it is questionable if
the title should ever go on the same line as the menu bar.

11 years agoFix parsing crazyhouse promotions with legality testing off
H.G. Muller [Fri, 30 Mar 2012 08:38:27 +0000 (10:38 +0200)]
Fix parsing crazyhouse promotions with legality testing off

With legality testing off, any promotion suffixes in a move are taken
'on faith'. But in crazyhouse the piece ID for normal pieces is used as
promotion suffix for promoted pieces, so this would Loop Chess rather than
Crazyhouse. Now attention is payed to presence of ID-less promotion pieces
(indicated by ~ in the pieceToCharTable), and if there are, these prevail
ovr the specified type.

11 years agoFix browsing for save file in WB
H.G. Muller [Fri, 30 Mar 2012 08:07:04 +0000 (10:07 +0200)]
Fix browsing for save file in WB

The generic popup browse buttons used the wrong flavor of browser,
which would only accept existing files. This was inconvenient when browsing
for a save file. The other flavor of browser is now used by default (so that
engine options also use it), and a new flag is added in the option.max field
(which was already indicating file type) to request readonly browsing for a
save file.

11 years agoLet clicking on header line exclude moves
H.G. Muller [Mon, 2 Apr 2012 08:18:37 +0000 (10:18 +0200)]
Let clicking on header line exclude moves

The exclude header in the Engine-Output window can now be clicked, to
toggle the exlusion of the listed move. Clicking on 'none' resets all
exclusions, clicking on 'best' excludes the first move of the latest PV.
The pseudo-move 'tail' represents all non-listed moves.

11 years agoKeep list of excluded moves in Engine Output header
H.G. Muller [Sun, 1 Apr 2012 20:39:55 +0000 (22:39 +0200)]
Keep list of excluded moves in Engine Output header

As long as there is still space, excluded or included moves are added
to a new header line in the Engine Output window (prefixed with + or -
depending on whether they are currently excluded or included). Future
in/exclusions of that same move then alter the prefix.

11 years agoFix focus of Game List
H.G. Muller [Wed, 21 Mar 2012 22:12:20 +0000 (23:12 +0100)]
Fix focus of Game List

After focus was transferred to the filter text-edit, it was impossible
to get it back on the game list (to make the arrow keys working again).
A translation to left down-click is now used to assign focus, just as
it would for text edits. For unknown reason this only worked if the
translations were instated by Overriding, rather than Augmenting,
which again required the normal translation of downclick, Set(), which
selects the clicked item, to be explicitly mentioned as well.

11 years agoFix taking effect of some option changes
H.G. Muller [Fri, 16 Mar 2012 21:41:19 +0000 (22:41 +0100)]
Fix taking effect of some option changes

This fixes a bug reported at Ubuntu: when switching off move highlighting
in Two Machines mode, the last move before the switch stayed highlighted.
The GeneralOptionsOK() now clears any remaining highlights when highlighing
is off. Similar problems with blind-fold mode and coordinates, which require
a total board redraw to take effect, are now solved by also forcing such a
redraw in GeneralOptionsOK() when they change.

11 years agoAdd exclude and setscore to protocol specs
H.G. Muller [Fri, 16 Mar 2012 20:58:55 +0000 (21:58 +0100)]
Add exclude and setscore to protocol specs

11 years agoFix clock stop after dragging
H.G. Muller [Fri, 16 Mar 2012 13:47:25 +0000 (14:47 +0100)]
Fix clock stop after dragging

DelayedDrag always cancelled the previous drag timeout event, even when
this was no longer pending because it had already taken place, and the
event ID was resused by some other timeout (usually a clock tick).

11 years agoImplement exclude moves
H.G. Muller [Wed, 14 Mar 2012 20:06:28 +0000 (21:06 +0100)]
Implement exclude moves

Dragging a piece by double-clicking it on the from-square in analysis mode
will not perform the entered move, but send an exclude or include command
to the engine for that move (provided the engine enabled this with
feature exclude=1), depending on if the move was already excluded or not.
To this end a map of excluded moves is kept, and cleared when we move to
another position through moving, undo, setboard or new. The user can see
whether he included or excluded the move, as exclude uses premove highlights.
  Commands "exclude|include all" are sent when we throw a double-clicked
piece off board (vertically or horizontally, respectively), but after
exclude all the most recent PV move is included again.
  Remaining problem is that promotions can only be excluded.

11 years agoMark new text "Click clock to clear board" for translation
Byrial Jensen [Wed, 14 Mar 2012 14:13:18 +0000 (15:13 +0100)]
Mark new text "Click clock to clear board" for translation

11 years agoMore thorough switch to -ncp on engine failure
H.G. Muller [Tue, 13 Mar 2012 20:46:55 +0000 (21:46 +0100)]
More thorough switch to -ncp on engine failure

The ProcRef and InputSource are now also cleared, and just to be sure there
are no surviving adapters, the child is killed when engine startup fails.

11 years agoInstall engines as ./exefile in XBoard
H.G. Muller [Tue, 13 Mar 2012 20:25:22 +0000 (21:25 +0100)]
Install engines as ./exefile in XBoard

When a path name is split into directory and filename, the latter in Linux
must be preceded by ./ in order to make it executable in the directory
XBoard starts it in.

11 years agoInform user in EditPosition mode how to clear board
H.G. Muller [Tue, 13 Mar 2012 13:11:18 +0000 (14:11 +0100)]
Inform user in EditPosition mode how to clear board

With -pieceMenu false the board is cleared by clicking the clock, but
since this is impossible to guess, it is now printed in the message field.

11 years agoFix fall-back on -ncp mode
H.G. Muller [Tue, 13 Mar 2012 13:06:32 +0000 (14:06 +0100)]
Fix fall-back on -ncp mode

When the requested engine could not be started, the user still had to
wait for the feature timeout to expire before the UI was re-enabled,
and the now-useless loading action would continue. In stead we now
cancel any scheduled continuation, thaw the UI immediately, and switch
the menus and gameMode to ncp straight away.

11 years agoupdated po/pot files
Arun Persaud [Sun, 11 Mar 2012 02:55:24 +0000 (18:55 -0800)]
updated po/pot files

11 years agonew version number for developer release
Arun Persaud [Sun, 11 Mar 2012 02:54:32 +0000 (18:54 -0800)]
new version number for developer release

11 years agoMerge branch 'v4.6.x' into tmp
Arun Persaud [Sun, 11 Mar 2012 02:51:07 +0000 (18:51 -0800)]
Merge branch 'v4.6.x' into tmp

11 years agoLimit premove cancelling to click on from square
H.G. Muller [Thu, 8 Mar 2012 10:11:03 +0000 (11:11 +0100)]
Limit premove cancelling to click on from square

On second thought it might be better to limit cancellation of the
premove to up-clicks on the premove from-square. (Presumably this
will be a static click, but if the down-click was elsewhere, a new move
most have been entered, which would clear the existing premove anyway.)
This allows the user to already grab another piece that he wants to move
after premove, or when premove is rejected.

11 years agoFix clearing of premove
H.G. Muller [Thu, 8 Mar 2012 09:02:00 +0000 (10:02 +0100)]
Fix clearing of premove

Any left-clicking on the board now clears an existing premove, in addition
to what it normally does.

11 years agoFix seek-graph race condition
H.G. Muller [Thu, 8 Mar 2012 08:56:51 +0000 (09:56 +0100)]
Fix seek-graph race condition

When a game started just after the user requested a seek graph, so that
the game start message would be received between sending 'sought' and
receiving the seek-ad list, an empty graph would pop up on the prompt,
and it was not possible to take it down, because the gameMode was no longer
  This patch cancels a sought command on receiving a board of your own game
to prevent this situation. In addition the system is made more robust by
always accepting a left-click as pop-down request, even when the seek graph
cannot be up, when it is up anyway.

11 years agoFix typo (seach) in string. It is already fixed in branch v4.6.x
Byrial Jensen [Tue, 6 Mar 2012 15:37:02 +0000 (16:37 +0100)]
Fix typo (seach) in string. It is already fixed in branch v4.6.x

11 years agoFix typo (seach) found by Yuri Chornoivan in source, pot and po files
Byrial Jensen [Tue, 6 Mar 2012 15:19:27 +0000 (16:19 +0100)]
Fix typo (seach) found by Yuri Chornoivan in source, pot and po files

11 years agoUpdated Danish and Ukrainian translations
Byrial Jensen [Tue, 6 Mar 2012 15:10:58 +0000 (16:10 +0100)]
Updated Danish and Ukrainian translations

11 years agoadded some documentation about what's need to be done for a release and a bash-releas...
Arun Persaud [Sun, 4 Mar 2012 22:52:34 +0000 (14:52 -0800)]
added some documentation about what's need to be done for a release and a bash-release script

11 years agonew developer release
Arun Persaud [Sun, 4 Mar 2012 22:07:06 +0000 (14:07 -0800)]
new developer release

11 years agoupdated po/pot files
Arun Persaud [Sun, 4 Mar 2012 22:07:40 +0000 (14:07 -0800)]
updated po/pot files

11 years agoAdd disambiguation of move with unique piece
H.G. Muller [Sat, 3 Mar 2012 22:32:11 +0000 (23:32 +0100)]
Add disambiguation of move with unique piece

If no pseudo-legal move of type Xa1 can be found, and only a single
piece of type X is on the board, successfully disambiguate the move
using that piece.

11 years agoFix layout in Disambiguate
H.G. Muller [Sat, 3 Mar 2012 22:20:56 +0000 (23:20 +0100)]
Fix layout in Disambiguate

To make it more obvious what next patch is.

11 years agoMake system open command configurable
H.G. Muller [Sat, 3 Mar 2012 13:04:07 +0000 (14:04 +0100)]
Make system open command configurable

A new volatile string option -openCommand has been added, which defaults
to "xdg-open". It is intended for use in the master settings file for
distributions that need another command for this.

11 years agoFix name of bug-report menu item
H.G. Muller [Sat, 3 Mar 2012 12:49:14 +0000 (13:49 +0100)]
Fix name of bug-report menu item

11 years agoMerge branch 'v4.6.x' of git.sv.gnu.org:/srv/git/xboard
H.G. Muller [Fri, 2 Mar 2012 11:31:32 +0000 (12:31 +0100)]
Merge branch 'v4.6.x' of git.sv.gnu.org:/srv/git/xboard

11 years agoMerge branch 'master' into v4.6.x
Arun Persaud [Wed, 29 Feb 2012 06:00:27 +0000 (22:00 -0800)]
Merge branch 'master' into v4.6.x

11 years agoFix suspected bug in Makefile
H.G. Muller [Tue, 28 Feb 2012 20:09:18 +0000 (21:09 +0100)]
Fix suspected bug in Makefile

11 years agoadded icons for mime-types to pixmap directory, so that rpm packages can use them
Arun Persaud [Tue, 28 Feb 2012 04:31:46 +0000 (20:31 -0800)]
added icons for mime-types to pixmap directory, so that rpm packages can use them

11 years agoFix suspected bug in Makefile
H.G. Muller [Tue, 28 Feb 2012 20:09:18 +0000 (21:09 +0100)]
Fix suspected bug in Makefile

11 years agoConfigure -stickyWindows off
H.G. Muller [Tue, 28 Feb 2012 12:46:09 +0000 (13:46 +0100)]
Configure -stickyWindows off

There are too many systems for which this feature does not work.

11 years agoMake web section in Help menu
H.G. Muller [Tue, 28 Feb 2012 12:40:54 +0000 (13:40 +0100)]
Make web section in Help menu

Items for the XBoard Home Page, User Guide, News Page and reporting bugs
were added. They all rely on xdg-open to invoke the browser or mailer on
the given links.

11 years agoIncrease buffer size in AboutProc() to accommodate for larger text.
Byrial Jensen [Mon, 27 Feb 2012 15:56:26 +0000 (16:56 +0100)]
Increase buffer size in AboutProc() to accommodate for larger text.

The Danish version of the about text was truncated due to a too small
buffer size.

11 years agoMerge branch 'master' into v4.6.x
Arun Persaud [Mon, 27 Feb 2012 03:38:01 +0000 (19:38 -0800)]
Merge branch 'master' into v4.6.x


fixed version number for 4.6.0 and ran "make update-po" afterwards (first ./autogen.sh and configure)

11 years agonew developer release
Arun Persaud [Mon, 27 Feb 2012 03:11:59 +0000 (19:11 -0800)]
new developer release

11 years agoupdated po/pot files
Arun Persaud [Mon, 27 Feb 2012 03:14:34 +0000 (19:14 -0800)]
updated po/pot files

11 years agoupdated Changelog, NEWS, etc.
Arun Persaud [Mon, 27 Feb 2012 03:19:31 +0000 (19:19 -0800)]
updated Changelog, NEWS, etc.

11 years agoMerge branch 'master' into v4.6.x
Arun Persaud [Mon, 27 Feb 2012 03:07:54 +0000 (19:07 -0800)]
Merge branch 'master' into v4.6.x

11 years agoadd information about our webpage and were to report bugs into the help menu
Arun Persaud [Mon, 27 Feb 2012 02:55:10 +0000 (18:55 -0800)]
add information about our webpage and were to report bugs into the help menu

11 years agofixed "make install-pdf": missing target for recursive make in po directory
Arun Persaud [Mon, 27 Feb 2012 02:40:27 +0000 (18:40 -0800)]
fixed "make install-pdf": missing target for recursive make in po directory

11 years agoSuppress recent-engines menu items in ICS mode
H.G. Muller [Sun, 26 Feb 2012 22:06:33 +0000 (23:06 +0100)]
Suppress recent-engines menu items in ICS mode

11 years agoFix 50-move counter in ICS mode
H.G. Muller [Sun, 26 Feb 2012 21:45:12 +0000 (22:45 +0100)]
Fix 50-move counter in ICS mode

Marking irreversible moves in the EP_STATUS did not work in ICS mode,
as ApplyMove,which did that is never executed there. Only the boards
sent by ICS are displayed,especially in observing mode. Now the status is
derived from the ICS mov strings (x in the SAN move, or P in the long move.

11 years agoFix two 64-bit warnings
H.G. Muller [Sun, 26 Feb 2012 16:18:39 +0000 (17:18 +0100)]
Fix two 64-bit warnings

Passing the engine number in a pointer variable to the callback needed
a two-step cast.

11 years agoFix piece symbols on switch back to variant normal
H.G. Muller [Sun, 26 Feb 2012 15:53:24 +0000 (16:53 +0100)]
Fix piece symbols on switch back to variant normal

Variant switches were not properly detected, meaning the variable pieces
could keep a form belonging to a previous variant. (E.g. Queen remained
a Lance image after switching from shogi to normal.)

11 years agoKeep XBoard windows attached on resize
H.G. Muller [Sun, 26 Feb 2012 13:07:50 +0000 (14:07 +0100)]
Keep XBoard windows attached on resize

Windows attached to bottom or right are displaced with the size increase.
Their perpendicular dimension is also scaled, to keep their edges at the same
fraction of the main window, unless they stick out. In the latter case the
fraction is clipped to 1, so that edge moves with the full size increase.

11 years agoImplement -stickyWindows in XBoard
H.G. Muller [Sat, 25 Feb 2012 21:40:56 +0000 (22:40 +0100)]
Implement -stickyWindows in XBoard

This makes the auxiliary windows  move with the main window when they were
touching, as in WinBoard. A control is added in the General Options dialog.

11 years agoUse more reliable X-call for getting window position
H.G. Muller [Sat, 25 Feb 2012 20:14:03 +0000 (21:14 +0100)]
Use more reliable X-call for getting window position

XtGetValues on XtNx, XtNy is unreliable. XGetWindowAttributes seems
to give more reliable results, and automatically accounts for the width
of window dressing. The -frameX/Y options are no longer needed bcause
of this, and were removed.

11 years agoMake frame width configurable in XB
H.G. Muller [Sat, 25 Feb 2012 10:55:19 +0000 (11:55 +0100)]
Make frame width configurable in XB

New persistent options -frameX, -frameY now can be used to specify
the amount by which Xt lies about the window coordinates.

11 years agoUse combobox line for recent engines when available
H.G. Muller [Thu, 23 Feb 2012 19:01:55 +0000 (20:01 +0100)]
Use combobox line for recent engines when available

The entry made in the -recentEngineList for the startup engine was
derived from the -fcp value, but this would ignore a possible nickname.
In WinBoard we now use the full combobox line to derive the entry.

11 years agoFix translation of EngineOutputTitle WB
H.G. Muller [Thu, 23 Feb 2012 08:29:17 +0000 (09:29 +0100)]
Fix translation of EngineOutputTitle WB

11 years agoMerge branch 'master' into v4.6.x
Arun Persaud [Thu, 23 Feb 2012 07:19:04 +0000 (23:19 -0800)]
Merge branch 'master' into v4.6.x


used version from master

11 years agoUpdated Danish translation
Byrial Jensen [Thu, 23 Feb 2012 00:34:12 +0000 (01:34 +0100)]
Updated Danish translation

11 years agoOne missed translation of cps->which
Byrial Jensen [Wed, 22 Feb 2012 23:59:36 +0000 (00:59 +0100)]
One missed translation of cps->which

11 years agoUndo translation of cps->which = first/second
H.G. Muller [Wed, 22 Feb 2012 18:58:41 +0000 (19:58 +0100)]
Undo translation of cps->which = first/second

The string in cps->which should not be translated, because it goes into
the debug file to label engine I/O, and many tools for processing
debug files (broadcasters, PGN extractors) rely on this being "first" or
"second". In all contexts where "first" and "second" need to be translated,
cps->which itself is already enclosed in _().

11 years agoImplement -serverFile option
H.G. Muller [Wed, 22 Feb 2012 17:27:40 +0000 (18:27 +0100)]
Implement -serverFile option

This writs an extra debug file with only engine communiation on it,
for the benifit of programs like TLCS.

11 years agoImplement -autoCopyPV
H.G. Muller [Wed, 22 Feb 2012 16:46:16 +0000 (17:46 +0100)]
Implement -autoCopyPV

This option causes automatic copying of the last position of a PV walk
to the clipboard.

11 years agoDelete some load-game debug printing
H.G. Muller [Thu, 16 Feb 2012 13:58:45 +0000 (14:58 +0100)]
Delete some load-game debug printing

The debug printing in Disambiguate was no longer needed. The printing
of the started process in XBoard that went to stderr is now diverted
to debugFP, so it ends up in the debug file.

11 years agoMove change of debug file to before game load
H.G. Muller [Thu, 16 Feb 2012 13:41:43 +0000 (14:41 +0100)]
Move change of debug file to before game load

Loading a game from -lgf is done before TwoMachinesEvent is called,
but logically belongs to the game. So the code to switch to the new
debug file for the game is moved to NextMatchGame now.

11 years agoFix button grab for sweep selection
H.G. Muller [Thu, 16 Feb 2012 13:09:54 +0000 (14:09 +0100)]
Fix button grab for sweep selection

The piece-menu initialization limited the grab of button events to those
occurring inside the board window (presumably intended to limit them to
the piece menu, but that does not pop up in sweep-selection mode).
This is now suppressed when -pieceMenu is off, so that selection continues
outside the the board. (Which is very convenient for pieces pu close to the

11 years agoDon't leave piece selected after piece menu
H.G. Muller [Thu, 16 Feb 2012 12:16:13 +0000 (13:16 +0100)]
Don't leave piece selected after piece menu

PieceMenuEvent left the just introduced piece selected, which is almost
never what one wants, as it makes it jump to the next square when selects.
Which is especially annoying if it captures the piece you wanted to grab...

11 years agoFix use of middle button for position setup
H.G. Muller [Thu, 16 Feb 2012 11:57:47 +0000 (12:57 +0100)]
Fix use of middle button for position setup

With sweep selection the actual drop is made on releasing the button,
and this event was not caught for button 2. Button-2 motion events were
also not caught by the sweep-selection handler.

11 years agoFix one more typo in the translator comments explaning "first" and "second"
Byrial Jensen [Thu, 16 Feb 2012 22:53:08 +0000 (23:53 +0100)]
Fix one more typo in the translator comments explaning "first" and "second"

11 years agoFix typo in translator comments explaning "first" and "second"
Byrial Jensen [Thu, 16 Feb 2012 22:39:32 +0000 (23:39 +0100)]
Fix typo in translator comments explaning "first" and "second"

11 years agoAdd args.h to POTFILES.in and change the interface to ExitArgError() so msg is c...
Byrial Jensen [Thu, 16 Feb 2012 22:23:20 +0000 (23:23 +0100)]
Add args.h to POTFILES.in and change the interface to ExitArgError() so msg is c format string

Having msg as a format string will ease translations because then
badArg doesn't have to come last.

11 years agoMark the strings "first" and "sencond" for translation.
Byrial Jensen [Thu, 16 Feb 2012 21:51:44 +0000 (22:51 +0100)]
Mark the strings "first" and "sencond" for translation.

... and assign the translated strings to cps->which in function InitEngine()

11 years agoUse ngettext() instead of gettext() for a string to allow better translation.
Byrial Jensen [Thu, 16 Feb 2012 17:42:10 +0000 (18:42 +0100)]
Use ngettext() instead of gettext() for a string to allow better translation.

11 years agotranslation: updated uk.po
Arun Persaud [Thu, 16 Feb 2012 08:19:59 +0000 (00:19 -0800)]
translation: updated uk.po

11 years agomodified configure and makefile for handling mimedb update
Arun Persaud [Thu, 16 Feb 2012 04:59:09 +0000 (20:59 -0800)]
modified configure and makefile for handling mimedb update

the default configure will install them using the xdg commands (if they exist on the system)

11 years agoadd configure test for xdg-programs to install mime types; can be disabled for buildi...
Arun Persaud [Tue, 14 Feb 2012 06:29:48 +0000 (22:29 -0800)]
add configure test for xdg-programs to install mime types; can be disabled for building of e.g. rpms

in case the target system doesn't have the xdg-programs available, we test for them.
Distributions often have their own macros to install these, so we add an enable option to configure

11 years agoRemove a debug printf
H.G. Muller [Mon, 13 Feb 2012 21:05:26 +0000 (22:05 +0100)]
Remove a debug printf

The parsePV debug printf becomes extremely verbose with -fSAN, -sSAN,
so it was deleted.

11 years agoMerge branch 'master' of git.sv.gnu.org:/srv/git/xboard
H.G. Muller [Mon, 13 Feb 2012 21:04:30 +0000 (22:04 +0100)]
Merge branch 'master' of git.sv.gnu.org:/srv/git/xboard

11 years agoMerge branch 'master' into v4.6.x; updated to correct version number for v4.6.0 branch
Arun Persaud [Mon, 13 Feb 2012 06:39:05 +0000 (22:39 -0800)]
Merge branch 'master' into v4.6.x; updated to correct version number for v4.6.0 branch


updated to correct version number for v4.6.x and ran update-po

11 years agonew developer release
Arun Persaud [Mon, 13 Feb 2012 06:18:24 +0000 (22:18 -0800)]
new developer release

11 years agoupdated po/pot files
Arun Persaud [Mon, 13 Feb 2012 06:19:37 +0000 (22:19 -0800)]
updated po/pot files

11 years agoupdated Changelog, NEWS, etc.
Arun Persaud [Mon, 13 Feb 2012 06:17:03 +0000 (22:17 -0800)]
updated Changelog, NEWS, etc.

11 years agotranslation: updated uk.po
Arun Persaud [Sun, 12 Feb 2012 15:52:54 +0000 (07:52 -0800)]
translation: updated uk.po