Allow creation of DarkSquares in EditPosition mode
authorH.G.Muller <hgm@hgm-xboard.(none)>
Mon, 3 Nov 2014 20:59:09 +0000 (21:59 +0100)
committerH.G.Muller <hgm@hgm-xboard.(none)>
Thu, 7 May 2015 18:53:31 +0000 (20:53 +0200)
Dragging an EmptySquare off board will make it a DarkSquare. Dragging
anything else off board (incl. DarkSquares) makes it empty, as before.

backend.c

index f7b8fd4..0b4ad84 100644 (file)
--- a/backend.c
+++ b/backend.c
@@ -6948,7 +6948,7 @@ UserMoveEvent(int fromX, int fromY, int toX, int toY, int promoChar)
        /* EditPosition, empty square, or different color piece;
           click-click move is possible */
        if (toX == -2 || toY == -2) {
-           boards[0][fromY][fromX] = EmptySquare;
+           boards[0][fromY][fromX] = (boards[0][fromY][fromX] == EmptySquare ? DarkSquare : EmptySquare);
            DrawPosition(FALSE, boards[currentMove]);
            return;
        } else if (toX >= 0 && toY >= 0) {