From 4860867fe8bf45432cd9b7967bc34398af8d013f Mon Sep 17 00:00:00 2001 From: Ida Massow Date: Fri, 17 Jun 2011 22:24:23 +0200 Subject: halbfertige netzwerkdinge git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@450 72836036-5685-4462-b002-a69064685172 --- src/jrummikub/control/network/GameJoinControl.java | 37 +++++++++++++++++++--- 1 file changed, 32 insertions(+), 5 deletions(-) (limited to 'src/jrummikub/control/network/GameJoinControl.java') diff --git a/src/jrummikub/control/network/GameJoinControl.java b/src/jrummikub/control/network/GameJoinControl.java index 55f584d..fbc18c6 100644 --- a/src/jrummikub/control/network/GameJoinControl.java +++ b/src/jrummikub/control/network/GameJoinControl.java @@ -6,28 +6,35 @@ import java.util.Arrays; import java.util.HashSet; import java.util.List; import java.util.Set; +import java.util.UUID; import jrummikub.model.GameSettings; import jrummikub.model.PlayerSettings; import jrummikub.model.PlayerSettings.Type; import jrummikub.util.Connection; +import jrummikub.util.Event; import jrummikub.util.GameData; +import jrummikub.util.IListener; import jrummikub.util.IListener1; +import jrummikub.util.IListener2; +import jrummikub.util.IListener3; import jrummikub.view.ISettingsPanel; -import jrummikub.view.ISettingsPanel.SettingsMode; import jrummikub.view.IView; +import jrummikub.view.ISettingsPanel.SettingsMode; public class GameJoinControl { private List connections = new ArrayList(); private GameData gameData; private ConnectionControl connectionControl; private IView view; + private Event backEvent = new Event(); public GameJoinControl(final ConnectionControl connectionControl, final GameData gameData, final IView view) { this.connectionControl = connectionControl; this.gameData = gameData; this.view = view; + view.getSettingsPanel().setSettingsMode(SettingsMode.NETWORK_JOIN); view.getSettingsPanel().enableAddPlayerButton(false); @@ -48,13 +55,29 @@ public class GameJoinControl { } } })); + connections.add(view.getSettingsPanel().getBackEvent().add(new IListener() { + @Override + public void handle() { + //TODO mit game offer control und game data reden (spieler werden nich wieder entfernt) + + abort(); + } + })); + connections.add(view.getSettingsPanel().getChangePlayerColorEvent().add(new IListener2() { + @Override + public void handle(Integer playerNumber, Color color) { + // TODO Auto-generated method stub + + + } + })); } private void updateSettingsPanel(GameSettings settings) { view.getSettingsPanel().setGameSettings(settings); - Set colors = new HashSet( - Arrays.asList(ISettingsPanel.PLAYER_COLORS)); + Set colors = new HashSet(Arrays + .asList(ISettingsPanel.PLAYER_COLORS)); for (PlayerSettings player : settings.getPlayerList()) { colors.remove(player.getColor()); @@ -78,11 +101,15 @@ public class GameJoinControl { view.showSettingsPanel(true); } + /** + * Aborts joining and goes back to game list + */ public void abort() { - // TODO Implement abort - + view.showSettingsPanel(false); + view.showGameListPanel(true); for (Connection c : connections) { c.remove(); } + } } -- cgit v1.2.3