mirror of
https://github.com/peterosterlund2/droidfish.git
synced 2025-02-17 09:37:50 +01:00
Remove onTrackballEvent support
Only very old devices have a trackball/trackstick and those run a too old Android version to be supported anyway.
This commit is contained in:
parent
b9f9dff315
commit
546c3a7251
|
@ -87,10 +87,6 @@ public class ChessBoardPlay extends ChessBoard {
|
||||||
@Override
|
@Override
|
||||||
protected int getYFromSq(int sq) { return Position.getY(sq); }
|
protected int getYFromSq(int sq) { return Position.getY(sq); }
|
||||||
|
|
||||||
@Override
|
|
||||||
protected int minValidY() { return 0; }
|
|
||||||
@Override
|
|
||||||
protected int maxValidX() { return 7; }
|
|
||||||
@Override
|
@Override
|
||||||
protected int getSquare(int x, int y) { return Position.getSquare(x, y); }
|
protected int getSquare(int x, int y) { return Position.getSquare(x, y); }
|
||||||
|
|
||||||
|
@ -105,7 +101,6 @@ public class ChessBoardPlay extends ChessBoard {
|
||||||
public Move mousePressed(int sq) {
|
public Move mousePressed(int sq) {
|
||||||
if (sq < 0)
|
if (sq < 0)
|
||||||
return null;
|
return null;
|
||||||
cursorVisible = false;
|
|
||||||
if ((selectedSquare != -1) && !userSelectedSquare)
|
if ((selectedSquare != -1) && !userSelectedSquare)
|
||||||
setSelection(-1); // Remove selection of opponents last moving piece
|
setSelection(-1); // Remove selection of opponents last moving piece
|
||||||
|
|
||||||
|
|
|
@ -23,12 +23,9 @@ import android.view.MotionEvent;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewConfiguration;
|
import android.view.ViewConfiguration;
|
||||||
|
|
||||||
import org.petero.droidfish.gamelogic.DroidChessController;
|
|
||||||
import org.petero.droidfish.gamelogic.Move;
|
import org.petero.droidfish.gamelogic.Move;
|
||||||
import org.petero.droidfish.view.ChessBoard;
|
|
||||||
|
|
||||||
public class ChessBoardPlayListener implements View.OnTouchListener,
|
public class ChessBoardPlayListener implements View.OnTouchListener {
|
||||||
ChessBoard.OnTrackballListener {
|
|
||||||
private DroidFish df;
|
private DroidFish df;
|
||||||
private ChessBoardPlay cb;
|
private ChessBoardPlay cb;
|
||||||
|
|
||||||
|
@ -181,16 +178,4 @@ public class ChessBoardPlayListener implements View.OnTouchListener,
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onTrackballEvent(MotionEvent event) {
|
|
||||||
if (df.ctrl.humansTurn()) {
|
|
||||||
Move m = cb.handleTrackballEvent(event);
|
|
||||||
if (m != null) {
|
|
||||||
df.setAutoMode(DroidFish.AutoMode.OFF);
|
|
||||||
df.ctrl.makeHumanMove(m);
|
|
||||||
}
|
|
||||||
df.setEgtbHints(cb.getSelectedSquare());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,30 +35,29 @@ public class ColorTheme {
|
||||||
public final static int DARK_SQUARE = 0;
|
public final static int DARK_SQUARE = 0;
|
||||||
public final static int BRIGHT_SQUARE = 1;
|
public final static int BRIGHT_SQUARE = 1;
|
||||||
public final static int SELECTED_SQUARE = 2;
|
public final static int SELECTED_SQUARE = 2;
|
||||||
public final static int CURSOR_SQUARE = 3;
|
public final static int DARK_PIECE = 3;
|
||||||
public final static int DARK_PIECE = 4;
|
public final static int BRIGHT_PIECE = 4;
|
||||||
public final static int BRIGHT_PIECE = 5;
|
public final static int CURRENT_MOVE = 5;
|
||||||
public final static int CURRENT_MOVE = 6;
|
public final static int ARROW_0 = 6;
|
||||||
public final static int ARROW_0 = 7;
|
public final static int ARROW_1 = 7;
|
||||||
public final static int ARROW_1 = 8;
|
public final static int ARROW_2 = 8;
|
||||||
public final static int ARROW_2 = 9;
|
public final static int ARROW_3 = 9;
|
||||||
public final static int ARROW_3 = 10;
|
public final static int ARROW_4 = 10;
|
||||||
public final static int ARROW_4 = 11;
|
public final static int ARROW_5 = 11;
|
||||||
public final static int ARROW_5 = 12;
|
public final static int ARROW_6 = 12;
|
||||||
public final static int ARROW_6 = 13;
|
public final static int ARROW_7 = 13;
|
||||||
public final static int ARROW_7 = 14;
|
|
||||||
public final static int MAX_ARROWS = 8;
|
public final static int MAX_ARROWS = 8;
|
||||||
public final static int SQUARE_LABEL = 15;
|
public final static int SQUARE_LABEL = 14;
|
||||||
public final static int DECORATION = 16;
|
public final static int DECORATION = 15;
|
||||||
public final static int PGN_COMMENT = 17;
|
public final static int PGN_COMMENT = 16;
|
||||||
public final static int FONT_FOREGROUND = 18;
|
public final static int FONT_FOREGROUND = 17;
|
||||||
public final static int GENERAL_BACKGROUND = 19;
|
public final static int GENERAL_BACKGROUND = 18;
|
||||||
private final static int numColors = 20;
|
private final static int numColors = 19;
|
||||||
|
|
||||||
private int colorTable[] = new int[numColors];
|
private int colorTable[] = new int[numColors];
|
||||||
|
|
||||||
private static final String[] prefNames = {
|
private static final String[] prefNames = {
|
||||||
"darkSquare", "brightSquare", "selectedSquare", "cursorSquare", "darkPiece", "brightPiece", "currentMove",
|
"darkSquare", "brightSquare", "selectedSquare", "darkPiece", "brightPiece", "currentMove",
|
||||||
"arrow0", "arrow1", "arrow2", "arrow3", "arrow4", "arrow5", "arrow6", "arrow7",
|
"arrow0", "arrow1", "arrow2", "arrow3", "arrow4", "arrow5", "arrow6", "arrow7",
|
||||||
"squareLabel", "decoration", "pgnComment", "fontForeground", "generalBackground"
|
"squareLabel", "decoration", "pgnComment", "fontForeground", "generalBackground"
|
||||||
};
|
};
|
||||||
|
@ -76,37 +75,37 @@ public class ColorTheme {
|
||||||
};
|
};
|
||||||
private final static String themeColors[][] = {
|
private final static String themeColors[][] = {
|
||||||
{ // Original
|
{ // Original
|
||||||
"#FF808080", "#FFBEBE5A", "#FFFF0000", "#FF00FF00", "#FF000000", "#FFFFFFFF", "#FF888888",
|
"#FF808080", "#FFBEBE5A", "#FFFF0000", "#FF000000", "#FFFFFFFF", "#FF888888",
|
||||||
"#A01F1FFF", "#A0FF1F1F", "#501F1FFF", "#50FF1F1F", "#371F1FFF", "#3CFF1F1F", "#1E1F1FFF", "#28FF1F1F",
|
"#A01F1FFF", "#A0FF1F1F", "#501F1FFF", "#50FF1F1F", "#371F1FFF", "#3CFF1F1F", "#1E1F1FFF", "#28FF1F1F",
|
||||||
"#FFFF0000", "#FF9F9F66", "#FFC0C000", "#FFF7FBC6", "#FF292C10"
|
"#FFFF0000", "#FF9F9F66", "#FFC0C000", "#FFF7FBC6", "#FF292C10"
|
||||||
},
|
},
|
||||||
{ // XBoard
|
{ // XBoard
|
||||||
"#FF77A26D", "#FFC8C365", "#FFFFFF00", "#FF00FF00", "#FF202020", "#FFFFFFCC", "#FF6B9262",
|
"#FF77A26D", "#FFC8C365", "#FFFFFF00", "#FF202020", "#FFFFFFCC", "#FF6B9262",
|
||||||
"#A01F1FFF", "#A0FF1F1F", "#501F1FFF", "#50FF1F1F", "#371F1FFF", "#3CFF1F1F", "#1E1F1FFF", "#28FF1F1F",
|
"#A01F1FFF", "#A0FF1F1F", "#501F1FFF", "#50FF1F1F", "#371F1FFF", "#3CFF1F1F", "#1E1F1FFF", "#28FF1F1F",
|
||||||
"#FFFF0000", "#FF808080", "#FFC0C000", "#FFEFFBBC", "#FF28320C"
|
"#FFFF0000", "#FF808080", "#FFC0C000", "#FFEFFBBC", "#FF28320C"
|
||||||
},
|
},
|
||||||
{ // Blue
|
{ // Blue
|
||||||
"#FF83A5D2", "#FFFFFFFA", "#FF3232D1", "#FF5F5FFD", "#FF282828", "#FFF0F0F0", "#FF3333FF",
|
"#FF83A5D2", "#FFFFFFFA", "#FF3232D1", "#FF282828", "#FFF0F0F0", "#FF3333FF",
|
||||||
"#A01F1FFF", "#A01FFF1F", "#501F1FFF", "#501FFF1F", "#371F1FFF", "#3C1FFF1F", "#1E1F1FFF", "#281FFF1F",
|
"#A01F1FFF", "#A01FFF1F", "#501F1FFF", "#501FFF1F", "#371F1FFF", "#3C1FFF1F", "#1E1F1FFF", "#281FFF1F",
|
||||||
"#FFFF0000", "#FF808080", "#FFC0C000", "#FFFFFF00", "#FF2E2B53"
|
"#FFFF0000", "#FF808080", "#FFC0C000", "#FFFFFF00", "#FF2E2B53"
|
||||||
},
|
},
|
||||||
{ // Grey
|
{ // Grey
|
||||||
"#FF666666", "#FFDDDDDD", "#FFFF0000", "#FF0000FF", "#FF000000", "#FFFFFFFF", "#FF888888",
|
"#FF666666", "#FFDDDDDD", "#FFFF0000", "#FF000000", "#FFFFFFFF", "#FF888888",
|
||||||
"#A01F1FFF", "#A0FF1F1F", "#501F1FFF", "#50FF1F1F", "#371F1FFF", "#3CFF1F1F", "#1E1F1FFF", "#28FF1F1F",
|
"#A01F1FFF", "#A0FF1F1F", "#501F1FFF", "#50FF1F1F", "#371F1FFF", "#3CFF1F1F", "#1E1F1FFF", "#28FF1F1F",
|
||||||
"#FFFF0000", "#FF909090", "#FFC0C000", "#FFFFFFFF", "#FF202020"
|
"#FFFF0000", "#FF909090", "#FFC0C000", "#FFFFFFFF", "#FF202020"
|
||||||
},
|
},
|
||||||
{ // Scid Default
|
{ // Scid Default
|
||||||
"#FF80A0A0", "#FFD0E0D0", "#FFFF0000", "#FF00FF00", "#FF000000", "#FFFFFFFF", "#FF666666",
|
"#FF80A0A0", "#FFD0E0D0", "#FFFF0000", "#FF000000", "#FFFFFFFF", "#FF666666",
|
||||||
"#A01F1FFF", "#A0FF1F1F", "#501F1FFF", "#50FF1F1F", "#371F1FFF", "#3CFF1F1F", "#1E1F1FFF", "#28FF1F1F",
|
"#A01F1FFF", "#A0FF1F1F", "#501F1FFF", "#50FF1F1F", "#371F1FFF", "#3CFF1F1F", "#1E1F1FFF", "#28FF1F1F",
|
||||||
"#FFFF0000", "#FF808080", "#FFC0C000", "#FFDEFBDE", "#FF213429"
|
"#FFFF0000", "#FF808080", "#FFC0C000", "#FFDEFBDE", "#FF213429"
|
||||||
},
|
},
|
||||||
{ // Scid Brown
|
{ // Scid Brown
|
||||||
"#B58863", "#F0D9B5", "#FFFF0000", "#FF00FF00", "#FF000000", "#FFFFFFFF", "#FF666666",
|
"#B58863", "#F0D9B5", "#FFFF0000", "#FF000000", "#FFFFFFFF", "#FF666666",
|
||||||
"#A01F1FFF", "#A0FF1F1F", "#501F1FFF", "#50FF1F1F", "#371F1FFF", "#3CFF1F1F", "#1E1F1FFF", "#28FF1F1F",
|
"#A01F1FFF", "#A0FF1F1F", "#501F1FFF", "#50FF1F1F", "#371F1FFF", "#3CFF1F1F", "#1E1F1FFF", "#28FF1F1F",
|
||||||
"#FFFF0000", "#FF808080", "#FFC0C000", "#FFF7FAE3", "#FF40260A"
|
"#FFFF0000", "#FF808080", "#FFC0C000", "#FFF7FAE3", "#FF40260A"
|
||||||
},
|
},
|
||||||
{ // Scid Green
|
{ // Scid Green
|
||||||
"#FF769656", "#FFEEEED2", "#FFFF0000", "#FF0000FF", "#FF000000", "#FFFFFFFF", "#FF666666",
|
"#FF769656", "#FFEEEED2", "#FFFF0000", "#FF000000", "#FFFFFFFF", "#FF666666",
|
||||||
"#A01F1FFF", "#A0FF1F1F", "#501F1FFF", "#50FF1F1F", "#371F1FFF", "#3CFF1F1F", "#1E1F1FFF", "#28FF1F1F",
|
"#A01F1FFF", "#A0FF1F1F", "#501F1FFF", "#50FF1F1F", "#371F1FFF", "#3CFF1F1F", "#1E1F1FFF", "#28FF1F1F",
|
||||||
"#FFFF0000", "#FF808080", "#FFC0C000", "#FFDEE3CE", "#FF183C21"
|
"#FFFF0000", "#FF808080", "#FFC0C000", "#FFDEE3CE", "#FF183C21"
|
||||||
}
|
}
|
||||||
|
@ -120,8 +119,7 @@ public class ColorTheme {
|
||||||
colorTable[i] = 0;
|
colorTable[i] = 0;
|
||||||
try {
|
try {
|
||||||
colorTable[i] = Color.parseColor(colorString);
|
colorTable[i] = Color.parseColor(colorString);
|
||||||
} catch (IllegalArgumentException ignore) {
|
} catch (IllegalArgumentException|StringIndexOutOfBoundsException ignore) {
|
||||||
} catch (StringIndexOutOfBoundsException ignore) {
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -866,9 +866,6 @@ public class DroidFish extends Activity
|
||||||
String statusStr = status.getText().toString();
|
String statusStr = status.getText().toString();
|
||||||
initUI();
|
initUI();
|
||||||
readPrefs(true);
|
readPrefs(true);
|
||||||
cb.cursorX = oldCB.cursorX;
|
|
||||||
cb.cursorY = oldCB.cursorY;
|
|
||||||
cb.cursorVisible = oldCB.cursorVisible;
|
|
||||||
cb.setPosition(oldCB.pos);
|
cb.setPosition(oldCB.pos);
|
||||||
cb.setFlipped(oldCB.flipped);
|
cb.setFlipped(oldCB.flipped);
|
||||||
cb.setDrawSquareLabels(oldCB.drawSquareLabels);
|
cb.setDrawSquareLabels(oldCB.drawSquareLabels);
|
||||||
|
@ -975,7 +972,6 @@ public class DroidFish extends Activity
|
||||||
|
|
||||||
ChessBoardPlayListener cbpListener = new ChessBoardPlayListener(this, cb);
|
ChessBoardPlayListener cbpListener = new ChessBoardPlayListener(this, cb);
|
||||||
cb.setOnTouchListener(cbpListener);
|
cb.setOnTouchListener(cbpListener);
|
||||||
cb.setOnTrackballListener(cbpListener);
|
|
||||||
|
|
||||||
moveList.setOnLongClickListener(v -> {
|
moveList.setOnLongClickListener(v -> {
|
||||||
reShowDialog(MOVELIST_MENU_DIALOG);
|
reShowDialog(MOVELIST_MENU_DIALOG);
|
||||||
|
|
|
@ -195,7 +195,6 @@ public class ChessBoardEdit extends ChessBoard {
|
||||||
Move mousePressed(int sq) {
|
Move mousePressed(int sq) {
|
||||||
if (sq == -1)
|
if (sq == -1)
|
||||||
return null;
|
return null;
|
||||||
cursorVisible = false;
|
|
||||||
if (selectedSquare != -1) {
|
if (selectedSquare != -1) {
|
||||||
if (sq != selectedSquare) {
|
if (sq != selectedSquare) {
|
||||||
Move m = new Move(selectedSquare, sq, Piece.EMPTY);
|
Move m = new Move(selectedSquare, sq, Piece.EMPTY);
|
||||||
|
@ -209,15 +208,6 @@ public class ChessBoardEdit extends ChessBoard {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
protected int minValidY() {
|
|
||||||
return landScape ? 0 : -2;
|
|
||||||
}
|
|
||||||
@Override
|
|
||||||
protected int maxValidX() {
|
|
||||||
return landScape ? 9 : 7;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected XYCoord sqToPix(int x, int y) {
|
protected XYCoord sqToPix(int x, int y) {
|
||||||
if (flipped && (x >= 0) && (x < 8) && (y >= 0) && (y < 8)) {
|
if (flipped && (x >= 0) && (x < 8) && (y >= 0) && (y < 8)) {
|
||||||
|
|
|
@ -33,7 +33,6 @@ import org.petero.droidfish.gamelogic.Position;
|
||||||
import org.petero.droidfish.gamelogic.TextIO;
|
import org.petero.droidfish.gamelogic.TextIO;
|
||||||
import org.petero.droidfish.tb.Probe;
|
import org.petero.droidfish.tb.Probe;
|
||||||
import org.petero.droidfish.tb.ProbeResult;
|
import org.petero.droidfish.tb.ProbeResult;
|
||||||
import org.petero.droidfish.view.ChessBoard;
|
|
||||||
import org.petero.droidfish.view.ChessBoard.SquareDecoration;
|
import org.petero.droidfish.view.ChessBoard.SquareDecoration;
|
||||||
|
|
||||||
import android.annotation.SuppressLint;
|
import android.annotation.SuppressLint;
|
||||||
|
@ -126,9 +125,6 @@ public class EditBoard extends Activity {
|
||||||
ChessBoardEdit oldCB = cb;
|
ChessBoardEdit oldCB = cb;
|
||||||
String statusStr = status.getText().toString();
|
String statusStr = status.getText().toString();
|
||||||
initUI();
|
initUI();
|
||||||
cb.cursorX = oldCB.cursorX;
|
|
||||||
cb.cursorY = oldCB.cursorY;
|
|
||||||
cb.cursorVisible = oldCB.cursorVisible;
|
|
||||||
cb.setPosition(oldCB.pos);
|
cb.setPosition(oldCB.pos);
|
||||||
setSelection(oldCB.selectedSquare);
|
setSelection(oldCB.selectedSquare);
|
||||||
cb.userSelectedSquare = oldCB.userSelectedSquare;
|
cb.userSelectedSquare = oldCB.userSelectedSquare;
|
||||||
|
@ -227,15 +223,6 @@ public class EditBoard extends Activity {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
cb.setOnTrackballListener(new ChessBoard.OnTrackballListener() {
|
|
||||||
@Override
|
|
||||||
public void onTrackballEvent(MotionEvent event) {
|
|
||||||
Move m = cb.handleTrackballEvent(event);
|
|
||||||
if (m != null)
|
|
||||||
doMove(m);
|
|
||||||
setEgtbHints(cb.getSelectedSquare());
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Initialize the drawer part of the user interface. */
|
/** Initialize the drawer part of the user interface. */
|
||||||
|
|
|
@ -48,8 +48,6 @@ public abstract class ChessBoard extends View {
|
||||||
public int selectedSquare;
|
public int selectedSquare;
|
||||||
public boolean userSelectedSquare; // True if selectedSquare was set by user tap/click,
|
public boolean userSelectedSquare; // True if selectedSquare was set by user tap/click,
|
||||||
// false if selectedSquare used to highlight last move
|
// false if selectedSquare used to highlight last move
|
||||||
public float cursorX, cursorY;
|
|
||||||
public boolean cursorVisible;
|
|
||||||
protected int x0, y0;
|
protected int x0, y0;
|
||||||
public int sqSize;
|
public int sqSize;
|
||||||
public boolean flipped;
|
public boolean flipped;
|
||||||
|
@ -78,7 +76,6 @@ public abstract class ChessBoard extends View {
|
||||||
protected Paint darkPaint;
|
protected Paint darkPaint;
|
||||||
protected Paint brightPaint;
|
protected Paint brightPaint;
|
||||||
private Paint selectedSquarePaint;
|
private Paint selectedSquarePaint;
|
||||||
private Paint cursorSquarePaint;
|
|
||||||
private Paint piecePaint;
|
private Paint piecePaint;
|
||||||
private Paint labelPaint;
|
private Paint labelPaint;
|
||||||
private Paint decorationPaint;
|
private Paint decorationPaint;
|
||||||
|
@ -89,8 +86,6 @@ public abstract class ChessBoard extends View {
|
||||||
pos = new Position();
|
pos = new Position();
|
||||||
selectedSquare = -1;
|
selectedSquare = -1;
|
||||||
userSelectedSquare = false;
|
userSelectedSquare = false;
|
||||||
cursorX = cursorY = 0;
|
|
||||||
cursorVisible = false;
|
|
||||||
x0 = y0 = sqSize = 0;
|
x0 = y0 = sqSize = 0;
|
||||||
flipped = false;
|
flipped = false;
|
||||||
drawSquareLabels = false;
|
drawSquareLabels = false;
|
||||||
|
@ -105,10 +100,6 @@ public abstract class ChessBoard extends View {
|
||||||
selectedSquarePaint.setStyle(Paint.Style.STROKE);
|
selectedSquarePaint.setStyle(Paint.Style.STROKE);
|
||||||
selectedSquarePaint.setAntiAlias(true);
|
selectedSquarePaint.setAntiAlias(true);
|
||||||
|
|
||||||
cursorSquarePaint = new Paint();
|
|
||||||
cursorSquarePaint.setStyle(Paint.Style.STROKE);
|
|
||||||
cursorSquarePaint.setAntiAlias(true);
|
|
||||||
|
|
||||||
piecePaint = new Paint();
|
piecePaint = new Paint();
|
||||||
piecePaint.setAntiAlias(true);
|
piecePaint.setAntiAlias(true);
|
||||||
|
|
||||||
|
@ -138,7 +129,6 @@ public abstract class ChessBoard extends View {
|
||||||
darkPaint.setColor(ct.getColor(ColorTheme.DARK_SQUARE));
|
darkPaint.setColor(ct.getColor(ColorTheme.DARK_SQUARE));
|
||||||
brightPaint.setColor(ct.getColor(ColorTheme.BRIGHT_SQUARE));
|
brightPaint.setColor(ct.getColor(ColorTheme.BRIGHT_SQUARE));
|
||||||
selectedSquarePaint.setColor(ct.getColor(ColorTheme.SELECTED_SQUARE));
|
selectedSquarePaint.setColor(ct.getColor(ColorTheme.SELECTED_SQUARE));
|
||||||
cursorSquarePaint.setColor(ct.getColor(ColorTheme.CURSOR_SQUARE));
|
|
||||||
labelPaint.setColor(ct.getColor(ColorTheme.SQUARE_LABEL));
|
labelPaint.setColor(ct.getColor(ColorTheme.SQUARE_LABEL));
|
||||||
decorationPaint.setColor(ct.getColor(ColorTheme.DECORATION));
|
decorationPaint.setColor(ct.getColor(ColorTheme.DECORATION));
|
||||||
for (int i = 0; i < ColorTheme.MAX_ARROWS; i++)
|
for (int i = 0; i < ColorTheme.MAX_ARROWS; i++)
|
||||||
|
@ -415,15 +405,6 @@ public abstract class ChessBoard extends View {
|
||||||
int y0 = crd.y;
|
int y0 = crd.y;
|
||||||
canvas.drawRect(x0, y0, x0 + sqSize, y0 + sqSize, selectedSquarePaint);
|
canvas.drawRect(x0, y0, x0 + sqSize, y0 + sqSize, selectedSquarePaint);
|
||||||
}
|
}
|
||||||
if (cursorVisible) {
|
|
||||||
int x = Math.round(cursorX);
|
|
||||||
int y = Math.round(cursorY);
|
|
||||||
XYCoord crd = sqToPix(x, y);
|
|
||||||
int x0 = crd.x;
|
|
||||||
int y0 = crd.y;
|
|
||||||
cursorSquarePaint.setStrokeWidth(sqSize/(float)16);
|
|
||||||
canvas.drawRect(x0, y0, x0 + sqSize, y0 + sqSize, cursorSquarePaint);
|
|
||||||
}
|
|
||||||
if (!animActive) {
|
if (!animActive) {
|
||||||
drawMoveHints(canvas);
|
drawMoveHints(canvas);
|
||||||
drawDecorations(canvas);
|
drawDecorations(canvas);
|
||||||
|
@ -562,52 +543,8 @@ public abstract class ChessBoard extends View {
|
||||||
|
|
||||||
protected abstract Move mousePressed(int sq);
|
protected abstract Move mousePressed(int sq);
|
||||||
|
|
||||||
public interface OnTrackballListener {
|
|
||||||
void onTrackballEvent(MotionEvent event);
|
|
||||||
}
|
|
||||||
private OnTrackballListener otbl = null;
|
|
||||||
public final void setOnTrackballListener(OnTrackballListener onTrackballListener) {
|
|
||||||
otbl = onTrackballListener;
|
|
||||||
}
|
|
||||||
@Override
|
|
||||||
public boolean onTrackballEvent(MotionEvent event) {
|
|
||||||
if (otbl != null) {
|
|
||||||
otbl.onTrackballEvent(event);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected abstract int minValidY();
|
|
||||||
protected abstract int maxValidX();
|
|
||||||
protected abstract int getSquare(int x, int y);
|
protected abstract int getSquare(int x, int y);
|
||||||
|
|
||||||
public final Move handleTrackballEvent(MotionEvent event) {
|
|
||||||
switch (event.getAction()) {
|
|
||||||
case MotionEvent.ACTION_DOWN:
|
|
||||||
invalidate();
|
|
||||||
if (cursorVisible) {
|
|
||||||
int x = Math.round(cursorX);
|
|
||||||
int y = Math.round(cursorY);
|
|
||||||
cursorX = x;
|
|
||||||
cursorY = y;
|
|
||||||
int sq = getSquare(x, y);
|
|
||||||
return mousePressed(sq);
|
|
||||||
}
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
cursorVisible = true;
|
|
||||||
int c = flipped ? -1 : 1;
|
|
||||||
cursorX += c * event.getX();
|
|
||||||
cursorY -= c * event.getY();
|
|
||||||
if (cursorX < 0) cursorX = 0;
|
|
||||||
if (cursorX > maxValidX()) cursorX = maxValidX();
|
|
||||||
if (cursorY < minValidY()) cursorY = minValidY();
|
|
||||||
if (cursorY > 7) cursorY = 7;
|
|
||||||
invalidate();
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
public final void setMoveHints(List<Move> moveHints) {
|
public final void setMoveHints(List<Move> moveHints) {
|
||||||
boolean equal;
|
boolean equal;
|
||||||
if ((this.moveHints == null) || (moveHints == null)) {
|
if ((this.moveHints == null) || (moveHints == null)) {
|
||||||
|
|
|
@ -355,7 +355,6 @@ If you are running on battery power, it is recommended that you change settings
|
||||||
<string name="prefs_color_brightSquare_title">Bright Squares</string>
|
<string name="prefs_color_brightSquare_title">Bright Squares</string>
|
||||||
<string name="prefs_color_darkSquare_title">Dark Squares</string>
|
<string name="prefs_color_darkSquare_title">Dark Squares</string>
|
||||||
<string name="prefs_color_selectedSquare_title">Selected Square</string>
|
<string name="prefs_color_selectedSquare_title">Selected Square</string>
|
||||||
<string name="prefs_color_cursorSquare_title">Trackball Cursor</string>
|
|
||||||
<string name="prefs_color_brightPiece_title">White Pieces</string>
|
<string name="prefs_color_brightPiece_title">White Pieces</string>
|
||||||
<string name="prefs_color_darkPiece_title">Black Pieces</string>
|
<string name="prefs_color_darkPiece_title">Black Pieces</string>
|
||||||
<string name="prefs_color_arrow0_title">Arrow 1</string>
|
<string name="prefs_color_arrow0_title">Arrow 1</string>
|
||||||
|
|
|
@ -240,12 +240,6 @@
|
||||||
alphaSlider="true"
|
alphaSlider="true"
|
||||||
android:defaultValue="#FF3232D1">
|
android:defaultValue="#FF3232D1">
|
||||||
</net.margaritov.preference.colorpicker.ColorPickerPreference>
|
</net.margaritov.preference.colorpicker.ColorPickerPreference>
|
||||||
<net.margaritov.preference.colorpicker.ColorPickerPreference
|
|
||||||
android:key="color_cursorSquare"
|
|
||||||
android:title="@string/prefs_color_cursorSquare_title"
|
|
||||||
alphaSlider="true"
|
|
||||||
android:defaultValue="#FF5F5FFD">
|
|
||||||
</net.margaritov.preference.colorpicker.ColorPickerPreference>
|
|
||||||
<net.margaritov.preference.colorpicker.ColorPickerPreference
|
<net.margaritov.preference.colorpicker.ColorPickerPreference
|
||||||
android:key="color_brightPiece"
|
android:key="color_brightPiece"
|
||||||
android:title="@string/prefs_color_brightPiece_title"
|
android:title="@string/prefs_color_brightPiece_title"
|
||||||
|
|
Loading…
Reference in New Issue
Block a user