diff options
author | Matthias Schiffer <mschiffer@universe-factory.net> | 2011-06-10 14:51:44 +0200 |
---|---|---|
committer | Matthias Schiffer <mschiffer@universe-factory.net> | 2011-06-10 14:51:44 +0200 |
commit | e7ee6778b020b555ce5e4a2e96d850b19ba02e35 (patch) | |
tree | cefbc3081e34f3bb5e2788709d6622e5ab8507a0 /src/jrummikub/view/impl/SettingsPanel.java | |
parent | d940351fe4ce6c59718661e261d44d23a5c5fcd7 (diff) | |
download | JRummikub-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.java | 50 |
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 { |