mirror of
https://github.com/peterosterlund2/droidfish.git
synced 2025-02-07 04:39:13 +01:00
DroidFish: Show current time control in the extended title bar.
This commit is contained in:
parent
ba7d8f61eb
commit
8ef8fbe3cd
|
@ -137,7 +137,6 @@ public class DroidFish extends Activity implements GUIInterface {
|
|||
// FIXME!!! Computer clock should stop if phone turned off (computer stops thinking if unplugged)
|
||||
// FIXME!!! Add support for all time controls defined by the PGN standard
|
||||
// FIXME!!! How to handle hour-glass time control?
|
||||
// FIXME!!! What should happen if you change time controls in the middle of a game?
|
||||
|
||||
// FIXME!!! Online play on FICS
|
||||
// FIXME!!! Add chess960 support
|
||||
|
@ -152,7 +151,7 @@ public class DroidFish extends Activity implements GUIInterface {
|
|||
|
||||
// FIXME!!! Better behavior if engine is terminated. How exactly?
|
||||
// FIXME!!! Handle PGN non-file intents with more than one game.
|
||||
// FIXME!!! File load/save of FEN data
|
||||
// FIXME!!! Save position to fen/epd file
|
||||
|
||||
// FIXME!!! Strength setting for external engines
|
||||
// FIXME!!! Selection dialog for going into variation
|
||||
|
@ -894,7 +893,7 @@ public class DroidFish extends Activity implements GUIInterface {
|
|||
int movesPerSession = getIntSetting("movesPerSession", 60);
|
||||
int timeIncrement = getIntSetting("timeIncrement", 0);
|
||||
ctrl.setTimeLimit(timeControl, movesPerSession, timeIncrement);
|
||||
setSummaryTitle();
|
||||
updateTimeControlTitle();
|
||||
|
||||
boardGestures = settings.getBoolean("boardGestures", true);
|
||||
scrollSensitivity = Float.parseFloat(settings.getString("scrollSensitivity", "2"));
|
||||
|
@ -1087,7 +1086,7 @@ public class DroidFish extends Activity implements GUIInterface {
|
|||
}
|
||||
|
||||
/** Update center field in second header line. */
|
||||
private final void setSummaryTitle() {
|
||||
public final void updateTimeControlTitle() {
|
||||
int[] tmpInfo = ctrl.getTimeLimit();
|
||||
StringBuilder sb = new StringBuilder();
|
||||
int tc = tmpInfo[0];
|
||||
|
|
|
@ -83,6 +83,9 @@ public interface GUIInterface {
|
|||
/** Update title with the material difference. */
|
||||
public void updateMaterialDifferenceTitle(Util.MaterialDiff diff);
|
||||
|
||||
/** Update title with time control information. */
|
||||
public void updateTimeControlTitle();
|
||||
|
||||
/** Report a move made that is a candidate for GUI animation. */
|
||||
public void setAnimMove(Position sourcePos, Move move, boolean forward);
|
||||
|
||||
|
|
|
@ -112,10 +112,10 @@ public class DroidChessController {
|
|||
game.timeController.setTimeControl(timeControl, movesPerSession, timeIncrement);
|
||||
}
|
||||
|
||||
/**
|
||||
* @return Array containing time control, moves per session and time increment.
|
||||
*/
|
||||
/** @return Array containing time control, moves per session and time increment. */
|
||||
public final int[] getTimeLimit() {
|
||||
if (game != null)
|
||||
return game.timeController.getTimeLimit(game.currPos().whiteMove);
|
||||
int[] ret = new int[3];
|
||||
ret[0] = timeControl;
|
||||
ret[1] = movesPerSession;
|
||||
|
@ -1036,6 +1036,7 @@ public class DroidChessController {
|
|||
|
||||
updateRemainingTime();
|
||||
updateMaterialDiffList();
|
||||
gui.updateTimeControlTitle();
|
||||
}
|
||||
|
||||
public final void updateMaterialDiffList() {
|
||||
|
|
|
@ -157,6 +157,14 @@ public class TimeControl {
|
|||
return getCurrentTC(whiteMove).second;
|
||||
}
|
||||
|
||||
/** @return Array containing time control, moves per session and time increment. */
|
||||
public int[] getTimeLimit(boolean whiteMove) {
|
||||
ArrayList<TimeControlField> tc = whiteMove ? tcW : tcB;
|
||||
int tcIdx = getCurrentTC(whiteMove).first;
|
||||
TimeControlField t = tc.get(tcIdx);
|
||||
return new int[]{(int)t.timeControl, t.movesPerSession, (int)t.increment};
|
||||
}
|
||||
|
||||
/** Return the current active time control index and number of moves to next time control. */
|
||||
private Pair<Integer,Integer> getCurrentTC(boolean whiteMove) {
|
||||
ArrayList<TimeControlField> tc = whiteMove ? tcW : tcB;
|
||||
|
|
Loading…
Reference in New Issue
Block a user