1.1 --- a/minesweeper/src/main/java/org/apidesign/demo/minesweeper/MinesModel.java Fri Jun 27 16:14:57 2014 +0200
1.2 +++ b/minesweeper/src/main/java/org/apidesign/demo/minesweeper/MinesModel.java Thu Jul 17 08:23:25 2014 +0200
1.3 @@ -250,6 +250,9 @@
1.4 }
1.5 if (data.getState() == SquareType.MARKED) {
1.6 data.setState(SquareType.UNKNOWN);
1.7 + if (allMarked(model)) {
1.8 + model.setState(GameState.WON);
1.9 + }
1.10 return;
1.11 }
1.12 if (data.getState() != SquareType.UNKNOWN) {
1.13 @@ -455,7 +458,7 @@
1.14 private static boolean allMarked(Mines m) {
1.15 for (Row r : m.getRows()) {
1.16 for (Square sq : r.getColumns()) {
1.17 - if (sq.isMine() && sq.getState() != SquareType.MARKED) {
1.18 + if (sq.isMine() == (sq.getState() != SquareType.MARKED)) {
1.19 return false;
1.20 }
1.21 }