From 5a0b918bc69cfb9c75794a7ad5481ea8fe714062 Mon Sep 17 00:00:00 2001 From: Peter Osterlund Date: Sat, 29 Dec 2012 21:09:16 +0000 Subject: [PATCH] DroidFish: Added option to not highlight the last played move. --- DroidFish/res/values/strings.xml | 4 +++- DroidFish/res/xml/preferences.xml | 11 +++++++++-- DroidFish/src/org/petero/droidfish/ChessBoard.java | 2 ++ .../src/org/petero/droidfish/ChessBoardPlay.java | 4 ++-- DroidFish/src/org/petero/droidfish/DroidFish.java | 4 +++- 5 files changed, 19 insertions(+), 6 deletions(-) diff --git a/DroidFish/res/values/strings.xml b/DroidFish/res/values/strings.xml index b74db78..756b570 100644 --- a/DroidFish/res/values/strings.xml +++ b/DroidFish/res/values/strings.xml @@ -204,8 +204,10 @@ you are not actively using the program.\ Start New Game? Use the CuckooChess engine for even lower strength. P N B R Q K - Displays an additional subtitle for captured pieces + Highlight last move + Draw rectangle around last moved piece Show Material Difference + Displays an additional subtitle for captured pieces Too few spaces Invalid piece Invalid side diff --git a/DroidFish/res/xml/preferences.xml b/DroidFish/res/xml/preferences.xml index bc66a21..34c0d91 100644 --- a/DroidFish/res/xml/preferences.xml +++ b/DroidFish/res/xml/preferences.xml @@ -88,9 +88,16 @@ android:defaultValue="@string/thinking_arrows_default"> + + + android:title="@string/material_diff_title" + android:summary="@string/material_diff_summary" + android:defaultValue="false"> moveHints; @@ -97,6 +98,7 @@ public abstract class ChessBoard extends View { flipped = false; drawSquareLabels = false; toggleSelection = false; + highlightLastMove = true; darkPaint = new Paint(); brightPaint = new Paint(); diff --git a/DroidFish/src/org/petero/droidfish/ChessBoardPlay.java b/DroidFish/src/org/petero/droidfish/ChessBoardPlay.java index 0c874d6..7c34a4c 100644 --- a/DroidFish/src/org/petero/droidfish/ChessBoardPlay.java +++ b/DroidFish/src/org/petero/droidfish/ChessBoardPlay.java @@ -113,7 +113,7 @@ public class ChessBoardPlay extends ChessBoard { } if (!myColor(p)) { Move m = new Move(selectedSquare, sq, Piece.EMPTY); - setSelection(sq); + setSelection(highlightLastMove ? sq : -1); userSelectedSquare = false; return m; } else @@ -140,7 +140,7 @@ public class ChessBoardPlay extends ChessBoard { anyMatch = match.second; } if (matchingMove != null) { - setSelection(matchingMove.to); + setSelection(highlightLastMove ? matchingMove.to : -1); userSelectedSquare = false; return matchingMove; } diff --git a/DroidFish/src/org/petero/droidfish/DroidFish.java b/DroidFish/src/org/petero/droidfish/DroidFish.java index d5c6af5..dc4117c 100644 --- a/DroidFish/src/org/petero/droidfish/DroidFish.java +++ b/DroidFish/src/org/petero/droidfish/DroidFish.java @@ -515,6 +515,7 @@ public class DroidFish extends Activity implements GUIInterface { cb.setDrawSquareLabels(oldCB.drawSquareLabels); cb.oneTouchMoves = oldCB.oneTouchMoves; cb.toggleSelection = oldCB.toggleSelection; + cb.highlightLastMove = oldCB.highlightLastMove; setSelection(oldCB.selectedSquare); cb.userSelectedSquare = oldCB.userSelectedSquare; setStatusString(statusStr); @@ -822,6 +823,7 @@ public class DroidFish extends Activity implements GUIInterface { cb.setDrawSquareLabels(drawSquareLabels); cb.oneTouchMoves = settings.getBoolean("oneTouchMoves", false); cb.toggleSelection = getIntSetting("squareSelectType", 0) == 1; + cb.highlightLastMove = settings.getBoolean("highlightLastMove", true); mShowThinking = settings.getBoolean("showThinking", false); mShowStats = settings.getBoolean("showStats", true); @@ -1358,7 +1360,7 @@ public class DroidFish extends Activity implements GUIInterface { @Override public void setSelection(int sq) { - cb.setSelection(sq); + cb.setSelection(cb.highlightLastMove ? sq : -1); cb.userSelectedSquare = false; setEgtbHints(sq); }