From 2d198820a9634c30d62c77f6f310aa227ee29733 Mon Sep 17 00:00:00 2001 From: Jannis Harder Date: Fri, 27 May 2011 17:54:46 +0200 Subject: GameControl tests, temporary handler in SettingsControl and small fixes git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@288 72836036-5685-4462-b002-a69064685172 --- src/jrummikub/control/TurnControl.java | 27 ++++++++++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) (limited to 'src/jrummikub/control/TurnControl.java') diff --git a/src/jrummikub/control/TurnControl.java b/src/jrummikub/control/TurnControl.java index 9ce08b0..1488c75 100644 --- a/src/jrummikub/control/TurnControl.java +++ b/src/jrummikub/control/TurnControl.java @@ -34,6 +34,7 @@ public class TurnControl { private List selectedStones = new ArrayList(); private Event endOfTurnEvent = new Event(); + private Event redealEvent = new Event(); private List connections = new ArrayList(); private boolean inspectOnly; @@ -77,12 +78,19 @@ public class TurnControl { @Override public void handle() { - endOfTurn(); + endOfTurn(false); } }; connections.add(timer.getTimeRunOutEvent().add(endOfTurnListener)); connections.add(view.getPlayerPanel().getEndTurnEvent() .add(endOfTurnListener)); + + connections.add(view.getPlayerPanel().getRedealEvent().add(new IListener() { + @Override + public void handle() { + endOfTurn(true); + } + })); addHandPanelHandlers(); addStoneCollectionHandlers(); @@ -441,9 +449,13 @@ public class TurnControl { view.setSelectedStones(selectedStones); } - private void endOfTurn() { + private void endOfTurn(boolean redeal) { timer.stopTimer(); - endOfTurnEvent.emit(); + if (redeal) { + redealEvent.emit(); + } else { + endOfTurnEvent.emit(); + } for (Connection c : connections) { c.remove(); } @@ -549,5 +561,14 @@ public class TurnControl { } } } + + /** + * Emitted when the round is aborted and needs to be restarted + * + * @return the event + */ + public Event getRedealEvent() { + return redealEvent; + } } -- cgit v1.2.3