Tested and implemented player type selection in the settings panel

git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@317 72836036-5685-4462-b002-a69064685172
This commit is contained in:
Jannis Harder 2011-05-29 22:24:48 +02:00
parent d9b651828a
commit f3f52956f7
5 changed files with 59 additions and 5 deletions

View file

@ -2,6 +2,8 @@ package jrummikub.view;
import java.awt.Color;
import jrummikub.control.turn.TurnControlFactory;
import jrummikub.control.turn.TurnControlFactory.Type;
import jrummikub.model.GameSettings;
import jrummikub.util.IEvent;
import jrummikub.util.IEvent1;
@ -64,6 +66,14 @@ public interface ISettingsPanel {
*/
public IEvent2<Integer, String> getChangePlayerNameEvent();
/**
* The change player color event is emitted when the user wants change a
* player's type
*
* @return the event
*/
public IEvent2<Integer, TurnControlFactory.Type> getChangePlayerTypeEvent();
/**
* The change initial meld threshold event is emitted when the user wants
* change the initial meld threshold

View file

@ -41,6 +41,7 @@ import javax.swing.event.DocumentEvent;
import javax.swing.event.DocumentListener;
import jrummikub.control.turn.TurnControlFactory;
import jrummikub.control.turn.TurnControlFactory.Type;
import jrummikub.model.GameSettings;
import jrummikub.model.PlayerSettings;
import jrummikub.util.Event;
@ -312,10 +313,12 @@ class SettingsPanel extends JPanel implements ISettingsPanel {
nameField.setText(settings.getName());
}
// playerType.setSelectedIndex(0);
playerType.setSelectedIndex(Arrays.binarySearch(
int index = Arrays.binarySearch(
TurnControlFactory.Type.values(),
settings.getTurnControlType()));
settings.getTurnControlType());
if (index != playerType.getSelectedIndex()) {
playerType.setSelectedIndex(index);
}
colorButton.setIcon(ImageUtil.createColorIcon(settings.getColor(),
16, 2));
}
@ -494,4 +497,9 @@ class SettingsPanel extends JPanel implements ISettingsPanel {
public void setJokerNumber(int jokerNumber) {
jokerNumberSpinner.setValue(jokerNumber);
}
@Override
public IEvent2<Integer, Type> getChangePlayerTypeEvent() {
return changePlayerTypeEvent;
}
}