diff options
Diffstat (limited to 'src/jrummikub/control/network/NetworkControl.java')
-rw-r--r-- | src/jrummikub/control/network/NetworkControl.java | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/src/jrummikub/control/network/NetworkControl.java b/src/jrummikub/control/network/NetworkControl.java index cd0f66f..5e38d1e 100644 --- a/src/jrummikub/control/network/NetworkControl.java +++ b/src/jrummikub/control/network/NetworkControl.java @@ -15,7 +15,6 @@ import jrummikub.util.IEvent; import jrummikub.util.IListener; import jrummikub.util.IListener1; import jrummikub.util.LoginData; -import jrummikub.view.IQuitWarningPanel.QuitMode; import jrummikub.view.IView; import jrummikub.view.IView.BottomPanelType; import jrummikub.view.LoginError; @@ -141,6 +140,23 @@ public class NetworkControl { } } })); + connections.add(connectionControl.getConnectionLostEvent().add( + new IListener() { + @Override + public void handle() { + abort(); + view.setBottomPanel(BottomPanelType.NETWORK_SERVER_CONNECTION_LOST_PANEL); + connections.add(view.getAcknowledgeConnectionLostEvent().add( + new IListener() { + @Override + public void handle() { + abort(); + view.setBottomPanel(BottomPanelType.START_GAME_PANEL); + backToLoginEvent.emit(); + } + })); + } + })); } private void addOfferUpdateListener() { @@ -342,6 +358,13 @@ public class NetworkControl { view.showGameListPanel(true); } }); + gameControl.getEndOfGameEvent().add(new IListener() { + @Override + public void handle() { + view.setBottomPanel(BottomPanelType.START_GAME_PANEL); + view.showGameListPanel(true); + } + }); gameControl.startGame(); } |