H.G.Muller [Tue, 3 Feb 2015 11:49:11 +0000]
Fix width of dual board GTK
The message field here was too wide, because it was attached to a
non-existing table column.
H.G.Muller [Tue, 3 Feb 2015 09:14:56 +0000]
Fix Tab in ICS command mode
Tab was not working to open a chat after oborting opening a new one,
when only one chat was open.
H.G.Muller [Mon, 2 Feb 2015 15:29:22 +0000]
Fix sending of messages from kibitz or c-shout chat
Kibitz messages and c-shouts could be captured in their own chat window.
like shouts and whispers, but sending messages from such chats did not
get the proper prefixing, but were treated as tells to nonexistent players
'kibitzes' and 'c-shouts'.
H.G.Muller [Thu, 29 Jan 2015 10:20:37 +0000]
Ignore Tab in ICS Interaction if no chats assigned
Thuis used to open a new chat, but Ctl-N exists for that now.
H.G.Muller [Thu, 29 Jan 2015 10:12:19 +0000]
Use Ctl-E in ICS chat to end chat
H.G.Muller [Thu, 29 Jan 2015 09:56:45 +0000]
Use Ctrl-H in ICS Chat to close chat pane
This used to be done by <Esc>, but that now focuses board instead.
H.G.Muller [Wed, 28 Jan 2015 22:17:23 +0000]
Let <Esc> transfer focus from Board to ICS Input
<Esc> in the input field of the ICS Interaction window transfers focus
to the board, but there was no way to transfer focus back without actually
typing something in the input field. <Esc> now does that. Unlike typing
printables, it does not close the chat pane, though. In addition, <Esc>
when the chat pane is open now also transfers focus to the board, rather
than closing the chat pane. This makes quick transparent switching between
board and Chat / ICS Interaction possible. It is no longer possible to
simply hide the chat pane, though. But this was usually done for typing
a command, and swicthing to the board with <Esc> and typing the command
there has the same effect.
H.G.Muller [Tue, 20 Jan 2015 11:02:19 +0000]
Define mnemonics for main menu bar
H.G.Muller [Tue, 20 Jan 2015 10:54:52 +0000]
Set position dir to handicap positions in shogi theme
H.G.Muller [Sun, 21 Dec 2014 22:09:25 +0000]
Let file selecor remember last used directory (GTK)
The file selector now starts in the directory that was last used
to load a file of the type we are now browsing for. (Supported types:
pgn, fen, trn, bin, png.)
H.G.Muller [Sat, 20 Dec 2014 19:47:05 +0000]
Implement -positionDir option GTK
This volatile option determines where Load Position starts browsing.
H.G.Muller [Mon, 17 Nov 2014 12:00:37 +0000]
stash
H.G.Muller [Thu, 13 Nov 2014 19:23:57 +0000]
Fix click-click moving with -monoMouse
A to-click should never be interpreted as button 3.
H.G.Muller [Thu, 13 Nov 2014 17:33:42 +0000]
Implement -monoMouse option (XB)
With the monoMouse option button-3 is no longer needed in Edit-Position
mode, but a button-1 click on an empty square will automatically behave
as if it was button 3. It can only be used with -pieceMenu false,
as it does not communicate the coordinates of the clicked square.
H.G.Muller [Tue, 11 Nov 2014 13:40:43 +0000]
Fix crash on using Browse buttons in Tournament dialog Xaw
The Xaw file browser assumes the text entries it is browsing for are
all in dialogs of the class TransienDlg, but the Tournament Options
dialog has been altered to MasterDlg, to allow it to co-exist with
Time Control and Common-Engine dialog (which can be opened through
buttons in it). Xaw did not like that, and the true DialogClass is
now used when setting the widget text.
H.G.Muller [Mon, 10 Nov 2014 13:29:25 +0000]
Fix -addMasterOption option
The comparison of the date stamps in master and user settings file
was broken, because the date stamps were declared as unsigned, so that
the difference would never be negative.
H.G.Muller [Mon, 3 Nov 2014 20:59:09 +0000]
Allow creation of DarkSquares in EditPosition mode
Dragging an EmptySquare off board will make it a DarkSquare. Dragging
anything else off board (incl. DarkSquares) makes it empty, as before.
H.G.Muller [Mon, 3 Nov 2014 20:56:29 +0000]
Let Clear Board respect DarkSquares
Usually we will clear the board to set up a new position. Not to
redesign the board shape.
H.G.Muller [Mon, 3 Nov 2014 20:51:46 +0000]
Fix sweep promotions for Lance on deeper zones
Unlike Pawns, Lances always assumed a zone depth of 1 in deciding on
activating sweep promotion. (Because they did not naturally occur in
any variant that had a deeper zone.)
H.G.Muller [Mon, 3 Nov 2014 20:49:07 +0000]
Fix two-sided non-royal castling
H.G.Muller [Sun, 2 Nov 2014 20:44:48 +0000]
Fix e.p. capture
H.G.Muller [Sun, 2 Nov 2014 14:52:25 +0000]
Fix premature disappearence of Lion victims
The check test did not correctly undo a Lion e.p. capture, which
would make the victim already disappear after entry of the first leg,
which potentially could affect the second leg move generation.
(Not in Lions, though, but in Betza castlings it manifested itself.)
H.G.Muller [Sun, 2 Nov 2014 14:31:34 +0000]
Implement non-royal castling
The Betza move generator allows castlings to be specified on non-royal
pieces, and indeed the Omega-Chess 'guarding' castles Q with R. To
prevent ambiguity this is implemented as a two-leg move QxR-s (with 's'
the target square specified in the O atom). This automatically takes care
of removal of the 'Rook', so that in ApplyMove() we only have to put it
back on the proper side of the 'King'.
H.G.Muller [Sun, 2 Nov 2014 11:24:16 +0000]
Also set e.p. rights on move of Lance
The Lance is intended as Pawn alternative (because of its slim shape),
except in Superchess (where it represents Amazon) and Chu. (In regular
Shogi the Lace is represented by Queen disguised as Lance!) So it would
be logical to also make its double-Pushes set e.p. rights. Except in
Spartan Chess, which has no e.p. capture.
H.G.Muller [Sun, 2 Nov 2014 10:29:31 +0000]
Allow e.p. capture on triple-Push
Some variants (like Omega Chess) have an initial triple-Push on Pawns,
wich can then e.p.-captured on both of the squares they skip. To allow
the Betza move generator to supply such e.p. captures, a bit flag is
kludged into the EP_RANK state indicator on triple pushes, while the
main value there is that of the rank directly behind the pushed Pawn.
The Betza generator then also matches the square behind it with the
e.p.-capture to-square when the falg is set.
ApplyMove() also had to be adapted, to remove the Pawn two squares
behind the capturing one, rather than straight behind it, when this
flag is set.
H.G.Muller [Fri, 31 Oct 2014 22:46:13 +0000]
Make the promotion zone always 3 deep in Elven Chess
The promotion zone in Eleven Chess was treated as in Shogi, and set
to the board height divided by 3. It is better to always make it 3.
This only makes a difference when the boardHeight is overruled,
but Elven Chess is a very useful parent variant when a 3-deep promotion
zone is needed. (Makruk would only allow promotion to Ferz, and Grand
Chess would need holdings and allow only promotion to captured pieces.)
H.G.Muller [Fri, 31 Oct 2014 21:59:23 +0000]
Locate corner piece in presence of DarkSquares
The 'Rook' move implied by a castling indicated through an obver-sized
King step uses the corner pieces. But the corner isn't necessarily
the edge file if the board is not rectangular, but irregularly shaped
like in Omega Chess. So we have to ignore the DarkSquares, which are
not caounted as belonging to the board.
H.G.Muller [Fri, 31 Oct 2014 13:26:19 +0000]
Allow Betza castling with piece next to DarkSquare
In variants like Omega Chess the board edges are not really the first
and last file, because of the Wizzard squares. So castling has to be
allowed not only with the piece on those files, but also when the square
beyond them is not part of the board anymore.
H.G.Muller [Fri, 31 Oct 2014 12:54:59 +0000]
Let Betza generator respect DarkSquares
DarkSquares are not pieces, and should not be moved. When landing
on them they should be considered as off-board.
H.G.Muller [Thu, 30 Oct 2014 14:01:59 +0000]
Connect OSX Quit menu to ExitEvent
The Quit menu item provided by OSX was not equivalent to the original
XBoard menu item, as it did not automatically call ExitEvent. (Which
closing the window did.) This meant a hard kill, without saving settings
or the last game, and not properly shutting down the engine(s).
We now catch the OSX 'WillTerminate' event to perform these tasks.
H.G.Muller [Tue, 28 Oct 2014 21:37:22 +0000]
Add USI/UCCI checkbox to Load Engine dialog
Assign a default command to the -uxiAdapter when it was not yet defined,
as this will be used after ticking the checkbox, and the compile-time
default for it was an empty string, and will have found its way in
the user settings files of most users (making configuring through
the master settings file pointless).
Arun Persaud [Sun, 3 May 2015 03:30:08 +0000]
make GTK the default version
Arun Persaud [Sun, 3 May 2015 03:26:48 +0000]
updated Dutch translation
Arun Persaud [Sun, 3 May 2015 03:26:38 +0000]
updated German translation
Arun Persaud [Sun, 26 Apr 2015 20:31:29 +0000]
fix typo in configure
Arun Persaud [Sun, 26 Apr 2015 19:49:09 +0000]
updated French translation
Arun Persaud [Sun, 26 Apr 2015 19:49:01 +0000]
updated German translation
Arun Persaud [Mon, 20 Apr 2015 03:26:20 +0000]
added French translation
Arun Persaud [Mon, 20 Apr 2015 03:19:18 +0000]
updated German translation
Arun Persaud [Sat, 25 Oct 2014 05:27:31 +0000]
remove OS X theme folder
Joshua Pettus [Fri, 24 Oct 2014 07:04:22 +0000]
removed gtk theme from OSX app
H.G.Muller [Thu, 23 Oct 2014 21:33:18 +0000]
Add persistent Boolean option -fixedSize
When set, this option suppresses sizing of the board and clocks when
the window is sized by the user. This is achieved by wrapping the entire
dialog in a non-expanding hbox.
H.G.Muller [Thu, 23 Oct 2014 19:23:14 +0000]
Also do dual-royal test in variant shogi
For the benefit of Sho Shogi we also have to be prepared to find a
Crown Prince in variant shogi, so it can be used as a parent variant
for Sho Shogi with legality testing on.
H.G.Muller [Thu, 23 Oct 2014 14:22:54 +0000]
Fix promotion in Betza move generator
The Betza move generator was geenrating allmoves as NormalMove, but in
that case XBoard would not allow the move to have a promotion suffix.
Now Pawns and Lances reaching last rank will be assumed to promote.
H.G.Muller [Wed, 22 Oct 2014 11:06:25 +0000]
Attempt to make GTK sizing work with tiling WM
The Rezise routine now takes the size of the entire dialog table
(for me always equal to the outer-window size), and checks if the
actual outer window is smaller. If it is, it shrinks the board to fit,
under the assumption that a tiling window manager offers only a limited
'viewport' to our dialog, and we want everything to be visible inside that.
H.G.Muller [Wed, 22 Oct 2014 09:04:47 +0000]
Fix -xbuttons window width GTK
Because Label options not followed by a SAME_ROW element were only
packed into the first two columns of the dialog table, the board window
reserved space for a third column behind the message window if there
was no button bar.
Arun Persaud [Wed, 22 Oct 2014 03:37:41 +0000]
mac: only use gtk compile flag, if osxapp is enabled
H.G.Muller [Tue, 21 Oct 2014 20:40:39 +0000]
Prevent unknown variant getting button in -ncp mode
Normally we fake the engines play the requested variant, for the benefit
of engines that do not send a variants feature (e.g. v1 engines). But this
should not be done if there is no engine, as it would lead XBoard to
believe an unknown variant name is an engine-defined variant supported
by a currently loaded engine, and create a button for it in the New Variant
dialog.
H.G.Muller [Tue, 21 Oct 2014 20:07:09 +0000]
Fix variant-name recognition
StringToVariant did recognize whether the name to recognize had suffuxes
compared to the tabulated name, but not if it had prefixes. So 'shoshogi'
would be recognized as 'shogi'.
H.G.Muller [Tue, 21 Oct 2014 19:52:21 +0000]
Suppress duplicat autoInstalls
If the engine line constructed for -autoInstall already occurs in
the engine list, we should not install it again.
H.G.Muller [Tue, 21 Oct 2014 16:41:03 +0000]
Base new square size on board widget allocation GTK
No longer pay attention to the size of the top-level window, but base
everything on the size of the board widget itself.
H.G.Muller [Tue, 21 Oct 2014 11:45:51 +0000]
Ignore first configure event
The first configure event will be the one that adds the window decorations
to the board window, and must not be used to calculate a new square size,
but to expand the outer window instead.
H.G.Muller [Tue, 21 Oct 2014 09:35:21 +0000]
Let GTK dialogs open with actual-size Graph widgets
The Graph Option size values are now uses as size_request, to give
proper dialog sizing at popup. But the size_request is then reset
so that free sizing by the user becomes possible.
H.G.Muller [Sun, 19 Oct 2014 11:16:43 +0000]
Fix display of Spin Options with negative range
Arun Persaud [Sat, 18 Oct 2014 04:35:25 +0000]
line numbers in PO got updated
Arun Persaud [Sat, 18 Oct 2014 04:23:47 +0000]
updated ChangeLog, DIFFSTAT and SHORTLOG
Arun Persaud [Sat, 18 Oct 2014 04:17:56 +0000]
updated NEWS
Arun Persaud [Sat, 18 Oct 2014 04:17:28 +0000]
forget a few __APPLE__ ifdefs; changed to OSXAPP
Arun Persaud [Fri, 17 Oct 2014 07:01:44 +0000]
fix typo and prefix
AC_PREFIX_DEFAULT was always set, even if AS_IF didn't get called? Some kind of caching?
Using just prefix=... seems to work though
Arun Persaud [Fri, 17 Oct 2014 06:34:22 +0000]
USE OSXAPP instead of APPLE and fix withval->enableval in AC_ARG_ENABLE
Arun Persaud [Fri, 17 Oct 2014 06:14:42 +0000]
Merge branch 'master' into v4.8.x
H.G.Muller [Thu, 16 Oct 2014 19:44:33 +0000]
Fix loading of engine-defined PGN games
Somehow there could be disagreement over what the official opening
position of an engine-defined variant was during loading of the game.
It then refused Betza-defined castling, which tests the corner pieces
based on this initial position. We now assume the FEN tag, which such
a PGN game will always contain, holds the official opening position,
so that castling will always be assumed possible (if there is a corner
piece).
H.G.Muller [Thu, 16 Oct 2014 18:29:27 +0000]
Preserve parent variant for PGN of engine-defined game
Rather than decoding an unknown variant name, (which will result in
'normal'), we keep the currently set (parent) variant when an
engine-defined variant is currently set that matches the name in
the PGN variant tag of the loaded game.
H.G.Muller [Thu, 16 Oct 2014 15:54:13 +0000]
Fix some uninitialized variable bugs
The writing of Seirawan castling rights in FEN was still dependent on a
now unused variable, and encountering a VariantMen tag in a PGN file
could have created the misconception the memory was full.
H.G.Muller [Thu, 16 Oct 2014 15:41:01 +0000]
Update Game List after tag selection changed
When the Game List Options dialog changes the tags to be displayed in
the Game List lines, we now automatically redo the entire Game List.
H.G.Muller [Thu, 16 Oct 2014 14:38:00 +0000]
Always accept piece commands in variant great
Great Shatranj belongs to the variants XBoard does not know the rules of,
and should thus always accept engine piece commands.
Arun Persaud [Thu, 16 Oct 2014 04:28:36 +0000]
make all tests for strings in configure use the same scheme
Arun Persaud [Thu, 16 Oct 2014 04:23:26 +0000]
updated Changelog, DIFFSTAT, and SHORTLOG
Arun Persaud [Thu, 16 Oct 2014 04:06:36 +0000]
fix osxapp enable option in configure.ac
Arun Persaud [Thu, 16 Oct 2014 04:06:00 +0000]
remove experimental from gtk build option
Arun Persaud [Thu, 16 Oct 2014 04:02:38 +0000]
only enable osxapp build target on apple systems, clean up configure.ac a tiny bit
Arun Persaud [Thu, 16 Oct 2014 03:57:28 +0000]
update NEWS file
Arun Persaud [Thu, 16 Oct 2014 03:50:51 +0000]
Merge branch 'master' into v4.8.x
H.G.Muller [Wed, 15 Oct 2014 21:48:14 +0000]
Don't switch to engine-defined variant on game loading
When loading a game from PGN the variant tag will have been decoded as
'normal' in case of an engine-defined variant, and we certainly would
not want to switch to that. Better stay in the variant the user had
selected before, and hope for the best.
H.G.Muller [Wed, 15 Oct 2014 19:50:44 +0000]
Implement displaying of variant tag in Game List
The variant tag was displayed as an empty string in game-header lines.
Processing it during PGN load was not able to handle engine-defined
variants anyway; they were recognized as 'normal'. A new field in the
GameInfo struct now holds variantName in text form, and this is the
primary place from which it is displayed in the Game List.
H.G.Muller [Wed, 15 Oct 2014 19:06:53 +0000]
Update Game List when setting new Game List Tags
Using the Game List Tags dialog to alter the gae header lines now
automatically causes an update of the Game list according to the new
tags specification.
H.G.Muller [Wed, 15 Oct 2014 18:26:31 +0000]
Reset move entry on Clear Board
The board markers would stay on when the board was cleared, and a
no-longer-present piece would stay selected, leading to deletion of the
first piece that you tried to select.
H.G.Muller [Tue, 14 Oct 2014 07:38:05 +0000]
Split Tournament dialog in side-by-side panes
This seems to cure a sickness in some Xaw versions, which refused
to display text in the text widgets, or make them sensitive for mouse
clicks if the last three buttons were added. It also helps keeping
the 'OK' button on-screen in the GTK version.
H.G.Muller [Sun, 12 Oct 2014 17:43:24 +0000]
Remember position obtained from setup
When the engine sends a setup command, it should be remembered as
initialPosition, in order for the castling 'rook' test of the Betza
move generator to work.
Joshua Pettus [Sat, 13 Sep 2014 19:35:12 +0000]
Add build script to configure for a XBoard.app for OS X
This relies on the the gtk build and adds some special code in
gtk/xboard.c so that XBoard can be installed inside the app directory
independ on where the app file is located.
Arun Persaud [Sun, 12 Oct 2014 17:09:51 +0000]
replaced hardcoded pngdir with built-in ~~
don't need to create xboard.conf from xboard.conf.in anymore
H.G.Muller [Sat, 11 Oct 2014 22:18:50 +0000]
Some improvement on new Shogi SVG pieces
Arun Persaud [Sat, 11 Oct 2014 17:55:41 +0000]
updated spanish, ukranian, and dutch translation
Arun Persaud [Sat, 11 Oct 2014 17:53:46 +0000]
Merge branch 'master' into v4.8.x
H.G.Muller [Sat, 11 Oct 2014 17:42:03 +0000]
Fix logos Xaw
The patch for logo standard left a typo and an excess line in the Xaw
version. This is fixed, and also implements the user-logo cascade for
the Xaw version.
H.G.Muller [Sat, 11 Oct 2014 17:26:23 +0000]
Try also /home/<user>/.logo.pgn for user logo
The user logo now also has a cascade, first looking in the user's home
folder for a file .logo.png, and then in the -logoDir for <user>.png.
H.G.Muller [Sat, 11 Oct 2014 14:38:03 +0000]
Fix ICS logo display
H.G.Muller [Fri, 10 Oct 2014 16:14:09 +0000]
Show current variant on New Variant buttons GTK in bold
If an engine-defined variant is selected, we compare its name to the
inscription on the button, otherwise we compare the variant numbers.
(Test to trigger this is a bit awkward, to not inadvertantly apply it
to the ICS Text Menu, which also has colored buttoms.)
H.G.Muller [Fri, 10 Oct 2014 15:01:51 +0000]
Increase number of engine-defined-variants Buttons XB
An third column is added to the New Variant dialog when necessary.
H.G.Muller [Thu, 9 Oct 2014 21:25:26 +0000]
Force GTK logo size to quarter board width
This is what GTK will do anyway, because clocks and logos are in a hbox
that equally divides space, so telling XBoard different just misinforms it.
H.G.Muller [Thu, 9 Oct 2014 15:08:45 +0000]
Replace default Shogi pieces
The SVG Shogi pieces are replaced by a new set, made by Joshua Pettus.
This set also contains and Elephant and Crown Prince.
H.G.Muller [Thu, 9 Oct 2014 07:35:33 +0000]
Implement new logo standard
XBoard now looks in the system directories for plugin logos,
/usr/(local/)share/games/plugins/logos, according to the cascade
-logoDir, engine dir (-fd,-sd), /usr/local/..., /usr/...
H.G.Muller [Thu, 9 Oct 2014 06:47:25 +0000]
Relocate OS X' LOCALEDIR
H.G.Muller [Wed, 8 Oct 2014 19:56:28 +0000]
Fix check test with multi-leg moves
The check test after a multi-leg move was still using the same kill
square in the opponent's reply, making it blind to King captures in
a second leg. So far we got away with that because the Shogi multi-leg
pieces also can reach all their potential victims in a single step,
but with engine-defined multi-leg moves there is no guarantee this
will always be the case.
H.G.Muller [Wed, 8 Oct 2014 19:55:17 +0000]
Fix infinite loop in cylinder moves
H.G.Muller [Tue, 7 Oct 2014 17:13:54 +0000]
Let t on final leg in Betza notation forbid checking
To allow approximate definition of pieces that are too difficult to
describe exactly, we can revoke their capture rights on Kings,
to prevent imagined moves that happen to threaten a King forces the
opponent to evade this imagined check, making most of his moves illegal.
Then the piece can be safely replaced by an upward-compatible one,
leaving rejection of the extra moves to the engine.
H.G.Muller [Tue, 7 Oct 2014 16:56:59 +0000]
Implement Betza hr and hr as chiral move sets
To easily separate right- and left-handed moves on oblique atoms
(which needs opposite use of l and r in their multi-leg continuations),
the direction sets hr and hl are added.
H.G.Muller [Tue, 7 Oct 2014 06:20:06 +0000]
Preserve other Betza mode bits on setting default modality
H.G.Muller [Mon, 6 Oct 2014 18:20:00 +0000]
Switch to new Betza orth-diag conversion standard
The interconversion from orthogonal to diagonal atoms is now possible
for any 4-way atom, based on specification of an 'in-between' direction,
irrespective of modality. Also take backward out of default continuation
direction-set.
H.G.Muller [Fri, 3 Oct 2014 08:31:47 +0000]
Implement Betza t modifier for hop-own
The 't' modifier will restrict any form of hopping as specified by
p or g modifiers to friendly pieces. This only works on non-final legs.