summaryrefslogtreecommitdiffstats
path: root/src/jrummikub/control/AbstractSettingsControl.java
diff options
context:
space:
mode:
authorMatthias Schiffer <mschiffer@universe-factory.net>2011-06-18 17:36:09 +0200
committerMatthias Schiffer <mschiffer@universe-factory.net>2011-06-18 17:36:09 +0200
commit297d5de03ef6e9f0c55d461021699dd2d34051f7 (patch)
treeb5b9bdf41309f745f7e0b32609e248cedbeb49c8 /src/jrummikub/control/AbstractSettingsControl.java
parent00fb313b89b14c04b290e3b3723bbccffc04d9dd (diff)
downloadJRummikub-297d5de03ef6e9f0c55d461021699dd2d34051f7.tar
JRummikub-297d5de03ef6e9f0c55d461021699dd2d34051f7.zip
Move some code to AbstractSettingsControl for consistency
git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@466 72836036-5685-4462-b002-a69064685172
Diffstat (limited to 'src/jrummikub/control/AbstractSettingsControl.java')
-rw-r--r--src/jrummikub/control/AbstractSettingsControl.java76
1 files changed, 39 insertions, 37 deletions
diff --git a/src/jrummikub/control/AbstractSettingsControl.java b/src/jrummikub/control/AbstractSettingsControl.java
index 79f8274..45802a7 100644
--- a/src/jrummikub/control/AbstractSettingsControl.java
+++ b/src/jrummikub/control/AbstractSettingsControl.java
@@ -2,6 +2,8 @@ package jrummikub.control;
import java.awt.Color;
import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
@@ -31,13 +33,18 @@ public abstract class AbstractSettingsControl {
* Create a new settings control
*
* @param view
- * the view to use
+ * the view to use
* @param settings
- * initial game settings
+ * initial game settings
*/
protected AbstractSettingsControl(IView view, GameSettings settings) {
this.view = view;
this.settings = settings;
+
+ view.getSettingsPanel().setPlayerNamesEditable(
+ Collections.<Boolean> emptyList());
+ view.getSettingsPanel().setPlayerColors(
+ new HashSet<Color>(Arrays.asList(ISettingsPanel.PLAYER_COLORS)));
}
protected void addListeners() {
@@ -49,15 +56,15 @@ public abstract class AbstractSettingsControl {
}
private void addPlayerSettingsListeners() {
- connections.add(view.getSettingsPanel().getAddPlayerEvent().add(
- new IListener() {
+ connections.add(view.getSettingsPanel().getAddPlayerEvent()
+ .add(new IListener() {
@Override
public void handle() {
addPlayer();
}
}));
- connections.add(view.getSettingsPanel().getRemovePlayerEvent().add(
- new IListener1<Integer>() {
+ connections.add(view.getSettingsPanel().getRemovePlayerEvent()
+ .add(new IListener1<Integer>() {
@Override
public void handle(Integer i) {
removePlayer(i);
@@ -70,15 +77,15 @@ public abstract class AbstractSettingsControl {
setPlayerColor(i, color);
}
}));
- connections.add(view.getSettingsPanel().getChangePlayerNameEvent().add(
- new IListener2<Integer, String>() {
+ connections.add(view.getSettingsPanel().getChangePlayerNameEvent()
+ .add(new IListener2<Integer, String>() {
@Override
public void handle(Integer i, String name) {
setPlayerName(i, name);
}
}));
- connections.add(view.getSettingsPanel().getChangePlayerTypeEvent().add(
- new IListener2<Integer, Type>() {
+ connections.add(view.getSettingsPanel().getChangePlayerTypeEvent()
+ .add(new IListener2<Integer, Type>() {
@Override
public void handle(Integer i, Type type) {
setPlayerType(i, type);
@@ -88,14 +95,13 @@ public abstract class AbstractSettingsControl {
private void addOptionListeners1() {
connections.add(view.getSettingsPanel()
- .getChangeInitialMeldThresholdEvent().add(
- new IListener1<Integer>() {
- @Override
- public void handle(Integer value) {
- settings.setInitialMeldThreshold(value);
- update();
- }
- }));
+ .getChangeInitialMeldThresholdEvent().add(new IListener1<Integer>() {
+ @Override
+ public void handle(Integer value) {
+ settings.setInitialMeldThreshold(value);
+ update();
+ }
+ }));
connections.add(view.getSettingsPanel().getChangeJokerNumberEvent()
.add(new IListener1<Integer>() {
@@ -114,15 +120,14 @@ public abstract class AbstractSettingsControl {
update();
}
}));
- connections.add(view.getSettingsPanel()
- .getChangeNumberOfStonesDealtEvent().add(
- new IListener1<Integer>() {
- @Override
- public void handle(Integer value) {
- settings.setNumberOfStonesDealt(value);
- update();
- }
- }));
+ connections.add(view.getSettingsPanel().getChangeNumberOfStonesDealtEvent()
+ .add(new IListener1<Integer>() {
+ @Override
+ public void handle(Integer value) {
+ settings.setNumberOfStonesDealt(value);
+ update();
+ }
+ }));
}
private void addOptionListeners2() {
@@ -134,8 +139,8 @@ public abstract class AbstractSettingsControl {
update();
}
}));
- connections.add(view.getSettingsPanel().getChangeTimeEvent().add(
- new IListener1<Integer>() {
+ connections.add(view.getSettingsPanel().getChangeTimeEvent()
+ .add(new IListener1<Integer>() {
@Override
public void handle(Integer value) {
settings.setTotalTime(value);
@@ -151,8 +156,8 @@ public abstract class AbstractSettingsControl {
}
}));
- connections.add(view.getSettingsPanel().getChangeNoLimitsEvent().add(
- new IListener1<Boolean>() {
+ connections.add(view.getSettingsPanel().getChangeNoLimitsEvent()
+ .add(new IListener1<Boolean>() {
@Override
public void handle(Boolean value) {
settings.setNoLimits(value);
@@ -273,10 +278,8 @@ public abstract class AbstractSettingsControl {
for (int j = i + 1; j < settings.getPlayerList().size(); ++j) {
PlayerSettings player2 = settings.getPlayerList().get(j);
if (player2.getName().equals(name) && player2.getType() == type) {
- view
- .getSettingsPanel()
- .setError(
- ISettingsPanel.SettingsError.DUPLICATE_PLAYER_NAME_ERROR);
+ view.getSettingsPanel().setError(
+ ISettingsPanel.SettingsError.DUPLICATE_PLAYER_NAME_ERROR);
view.getSettingsPanel().enableStartGameButton(false);
return false;
}
@@ -288,8 +291,7 @@ public abstract class AbstractSettingsControl {
private boolean checkErrors() {
int totalStonesDealt = settings.getNumberOfStonesDealt()
* settings.getPlayerList().size();
- int totalStones = settings.getHighestValue()
- * settings.getStoneSetNumber()
+ int totalStones = settings.getHighestValue() * settings.getStoneSetNumber()
* settings.getStoneColors().size() + settings.getJokerNumber();
if (totalStones <= totalStonesDealt) {