summaryrefslogtreecommitdiffstats
path: root/src/jrummikub/view/impl/SettingsPanel.java
diff options
context:
space:
mode:
authorMatthias Schiffer <mschiffer@universe-factory.net>2011-06-10 14:51:44 +0200
committerMatthias Schiffer <mschiffer@universe-factory.net>2011-06-10 14:51:44 +0200
commite7ee6778b020b555ce5e4a2e96d850b19ba02e35 (patch)
treecefbc3081e34f3bb5e2788709d6622e5ab8507a0 /src/jrummikub/view/impl/SettingsPanel.java
parentd940351fe4ce6c59718661e261d44d23a5c5fcd7 (diff)
downloadJRummikub-e7ee6778b020b555ce5e4a2e96d850b19ba02e35.tar
JRummikub-e7ee6778b020b555ce5e4a2e96d850b19ba02e35.zip
Added load and network buttons to settings panel
git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@395 72836036-5685-4462-b002-a69064685172
Diffstat (limited to 'src/jrummikub/view/impl/SettingsPanel.java')
-rw-r--r--src/jrummikub/view/impl/SettingsPanel.java50
1 files changed, 40 insertions, 10 deletions
diff --git a/src/jrummikub/view/impl/SettingsPanel.java b/src/jrummikub/view/impl/SettingsPanel.java
index 8864b7b..740cfc8 100644
--- a/src/jrummikub/view/impl/SettingsPanel.java
+++ b/src/jrummikub/view/impl/SettingsPanel.java
@@ -81,6 +81,8 @@ class SettingsPanel extends JPanel implements ISettingsPanel {
private Map<StoneColor, JToggleButton> colorButtons = new HashMap<StoneColor, JToggleButton>();
private Event startGameEvent = new Event();
+ private Event loadGameEvent = new Event();
+ private Event networkGameEvent = new Event();
private Event addPlayerEvent = new Event();
private Event1<Integer> removePlayerEvent = new Event1<Integer>();
private Event2<Integer, Color> changePlayerColorEvent = new Event2<Integer, Color>();
@@ -93,12 +95,20 @@ class SettingsPanel extends JPanel implements ISettingsPanel {
private Event1<Integer> changeHighestValueEvent = new Event1<Integer>();
private Event1<Set<StoneColor>> changeStoneColorsEvent = new Event1<Set<StoneColor>>();
private Event1<Integer> changeTimeEvent = new Event1<Integer>();
-
+
@Override
public IEvent getStartGameEvent() {
return startGameEvent;
}
+ IEvent getLoadGameEvent() {
+ return loadGameEvent;
+ }
+
+ IEvent getNetworkGameEvent() {
+ return networkGameEvent;
+ }
+
@Override
public IEvent getAddPlayerEvent() {
return addPlayerEvent;
@@ -138,7 +148,7 @@ class SettingsPanel extends JPanel implements ISettingsPanel {
public IEvent1<Integer> getChangeHighestValueEvent() {
return changeHighestValueEvent;
}
-
+
@Override
public IEvent1<Integer> getChangeJokerNumberEvent() {
return changeJokerNumberEvent;
@@ -318,7 +328,7 @@ class SettingsPanel extends JPanel implements ISettingsPanel {
makeOptionLabel(4, "Jokeranzahl:");
jokerNumberSpinner = makeOptionSpinner(4, 1, 999, 1, changeJokerNumberEvent);
-
+
makeOptionLabel(5, "Zeit für Spielzug:");
timeSpinner = makeOptionSpinner(5, 1, 999, 1, changeTimeEvent);
@@ -431,17 +441,37 @@ class SettingsPanel extends JPanel implements ISettingsPanel {
c.weighty = 0;
add(errorMessageLabel, c);
- startButton = new JButton("Spiel starten");
- startButton.addActionListener(new ActionListener() {
+ c.gridwidth = 1;
+ startButton = addButton("Spiel starten", startGameEvent, c);
+
+ c.weightx = 0;
+ add(Box.createHorizontalStrut(10), c);
+
+ c.weightx = 1;
+ addButton("Spiel laden...", loadGameEvent, c);
+
+ c.weightx = 0;
+ add(Box.createHorizontalStrut(10), c);
+
+ c.weightx = 1;
+ c.gridwidth = GridBagConstraints.REMAINDER;
+ addButton("Netzwerkspiel...", networkGameEvent, c);
+
+ setBorder(new CompoundBorder(new LineBorder(Color.BLACK), new EmptyBorder(
+ 10, 10, 10, 10)));
+ }
+
+ private JButton addButton(String title, final Event event,
+ GridBagConstraints c) {
+ JButton button = new JButton(title);
+ button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
- startGameEvent.emit();
+ event.emit();
}
});
- add(startButton, c);
-
- setBorder(new CompoundBorder(new LineBorder(Color.BLACK), new EmptyBorder(
- 10, 10, 10, 10)));
+ add(button, c);
+ return button;
}
private class PlayerSettingsPanel extends JPanel {