Fixed QuitWarningPanel event handling and disabling of UI
git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@518 72836036-5685-4462-b002-a69064685172
This commit is contained in:
parent
087f8f7267
commit
b0fedc9808
3 changed files with 55 additions and 37 deletions
|
@ -32,7 +32,7 @@ public class ApplicationControl {
|
|||
* Creates a new application control
|
||||
*
|
||||
* @param view
|
||||
* the view to use
|
||||
* the view to use
|
||||
*/
|
||||
public ApplicationControl(final IView view) {
|
||||
this.view = view;
|
||||
|
@ -51,11 +51,12 @@ public class ApplicationControl {
|
|||
startApplication();
|
||||
view.showQuitWarningPanel(false);
|
||||
tempConnection.remove();
|
||||
tempConnection = null;
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
view.getMenuQuitEvent().add(new IListener() {
|
||||
IListener quitListener = new IListener() {
|
||||
@Override
|
||||
public void handle() {
|
||||
if (gameControl == null) {
|
||||
|
@ -63,38 +64,28 @@ public class ApplicationControl {
|
|||
} else {
|
||||
view.getQuitWarningPanel().setMode(QuitMode.QUIT_PROCESS);
|
||||
view.showQuitWarningPanel(true);
|
||||
view.getQuitWarningPanel().getQuitEvent().add(new IListener() {
|
||||
@Override
|
||||
public void handle() {
|
||||
System.exit(0);
|
||||
}
|
||||
});
|
||||
tempConnection = view.getQuitWarningPanel().getQuitEvent()
|
||||
.add(new IListener() {
|
||||
@Override
|
||||
public void handle() {
|
||||
System.exit(0);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
};
|
||||
view.getMenuQuitEvent().add(quitListener);
|
||||
|
||||
view.getQuitEvent().add(new IListener() {
|
||||
@Override
|
||||
public void handle() {
|
||||
if (gameControl == null) {
|
||||
System.exit(0);
|
||||
} else {
|
||||
view.getQuitWarningPanel().setMode(QuitMode.QUIT_PROCESS);
|
||||
view.showQuitWarningPanel(true);
|
||||
view.getQuitWarningPanel().getQuitEvent().add(new IListener() {
|
||||
@Override
|
||||
public void handle() {
|
||||
System.exit(0);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
view.getQuitEvent().add(quitListener);
|
||||
|
||||
view.getQuitWarningPanel().getCancelEvent().add(new IListener() {
|
||||
@Override
|
||||
public void handle() {
|
||||
view.showQuitWarningPanel(false);
|
||||
if (tempConnection != null) {
|
||||
tempConnection.remove();
|
||||
tempConnection = null;
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
|
@ -110,10 +101,11 @@ public class ApplicationControl {
|
|||
saveControl.getLoadEvent().add(
|
||||
new IListener3<GameSettings, GameState, IRoundState>() {
|
||||
@Override
|
||||
public void handle(GameSettings settings, GameState gameState,
|
||||
IRoundState roundState) {
|
||||
public void handle(GameSettings settings,
|
||||
GameState gameState, IRoundState roundState) {
|
||||
abortControls();
|
||||
gameControl = new GameControl(settings, saveControl, view);
|
||||
gameControl = new GameControl(settings, saveControl,
|
||||
view);
|
||||
addGameControlListeners(gameControl);
|
||||
gameControl.continueGame(gameState, roundState);
|
||||
}
|
||||
|
@ -206,7 +198,8 @@ public class ApplicationControl {
|
|||
|
||||
private void createNetworkControl(LoginData loginData) {
|
||||
ConnectionControl connectionControl = new ConnectionControl(loginData);
|
||||
networkControl = new NetworkControl(loginData, connectionControl, saveControl, view);
|
||||
networkControl = new NetworkControl(loginData, connectionControl,
|
||||
saveControl, view);
|
||||
|
||||
networkControl.getStopNetworkEvent().add(new IListener() {
|
||||
@Override
|
||||
|
|
Reference in a new issue