Turn Timer hat ein Interface

git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@107 72836036-5685-4462-b002-a69064685172
This commit is contained in:
Ida Massow 2011-05-04 16:54:30 +02:00
parent 614d0935be
commit e3e0e301a3
4 changed files with 23 additions and 3 deletions

View file

@ -8,6 +8,7 @@ import java.util.Map;
import javax.swing.UIManager;
import jrummikub.control.ITurnTimer;
import jrummikub.control.TurnTimer;
import jrummikub.model.Position;
import jrummikub.model.Stone;
@ -34,7 +35,7 @@ public class JRummikub {
final IView view = new jrummikub.view.impl.View();
view.setCurrentPlayerName("Player 1");
TurnTimer testTimer = new TurnTimer(view);
ITurnTimer testTimer = new TurnTimer(view);
testTimer.startTimer();
view.getTablePanel().setLeftPlayerName("Player 2");
view.getTablePanel().setTopPlayerName("Player 3");

View file

@ -0,0 +1,13 @@
package jrummikub.control;
import jrummikub.util.IEvent;
public interface ITurnTimer {
public abstract void startTimer();
public abstract void stopTimer();
public abstract IEvent getTimeRunOutEvent();
}

View file

@ -10,7 +10,7 @@ import jrummikub.view.IView;
public class TurnControl {
private Hand hand;
private ITable table;
private TurnTimer timer;
private ITurnTimer timer;
private IView view;
private Event endOfTurnEvent = new Event();

View file

@ -9,7 +9,7 @@ import jrummikub.util.Event;
import jrummikub.util.IEvent;
import jrummikub.view.IView;
public class TurnTimer implements ActionListener {
public class TurnTimer implements ActionListener, ITurnTimer {
private IView view;
private int timeLeft = 60;
private Timer timer;
@ -23,14 +23,19 @@ public class TurnTimer implements ActionListener {
view.getPlayerPanel().setTimeLeft(timeLeft);
}
@Override
public void startTimer() {
timer.start();
}
@Override
public void stopTimer() {
timer.stop();
}
@Override
public void actionPerformed(ActionEvent arg0) {
timeLeft--;
@ -41,6 +46,7 @@ public class TurnTimer implements ActionListener {
}
}
@Override
public IEvent getTimeRunOutEvent() {
return timeRunOutEvent;
}