summaryrefslogtreecommitdiffstats
path: root/src/jrummikub/view/impl
diff options
context:
space:
mode:
Diffstat (limited to 'src/jrummikub/view/impl')
-rw-r--r--src/jrummikub/view/impl/GameListPanel.java27
-rw-r--r--src/jrummikub/view/impl/SettingsPanel.java17
2 files changed, 22 insertions, 22 deletions
diff --git a/src/jrummikub/view/impl/GameListPanel.java b/src/jrummikub/view/impl/GameListPanel.java
index 2d07f2e..3041d1a 100644
--- a/src/jrummikub/view/impl/GameListPanel.java
+++ b/src/jrummikub/view/impl/GameListPanel.java
@@ -6,7 +6,7 @@ import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
-import java.util.ArrayList;
+import java.util.Collections;
import java.util.List;
import javax.swing.Box;
@@ -41,7 +41,7 @@ class GameListPanel extends JPanel implements IGameListPanel {
private Event openNewGameEvent = new Event();
private Event cancelEvent = new Event();
- private List<GameData> games = new ArrayList<GameData>();
+ private List<GameData> games = Collections.emptyList();
GameListPanel() {
setLayout(new GridBagLayout());
@@ -123,29 +123,20 @@ class GameListPanel extends JPanel implements IGameListPanel {
}
@Override
- public void addGame(GameData game) {
- if (!games.contains(game)) {
- games.add(game);
- }
-
- updateModel();
- }
+ public void setGameList(List<GameData> games) {
+ this.games = games;
- @Override
- public void removeGame(GameData game) {
- if (games.remove(game)) {
- updateModel();
- }
- }
+ Object currentGame = gameList.getSelectedValue();
- private void updateModel() {
DefaultListModel model = new DefaultListModel();
-
for (GameData game : games) {
model.addElement(game);
}
-
gameList.setModel(model);
+
+ if (games.contains(currentGame)) {
+ gameList.setSelectedValue(currentGame, false);
+ }
}
@Override
diff --git a/src/jrummikub/view/impl/SettingsPanel.java b/src/jrummikub/view/impl/SettingsPanel.java
index c7b6387..8daf1fa 100644
--- a/src/jrummikub/view/impl/SettingsPanel.java
+++ b/src/jrummikub/view/impl/SettingsPanel.java
@@ -683,7 +683,6 @@ class SettingsPanel extends JPanel implements ISettingsPanel {
}
private void addDefaultButtons() {
- buttonPanel.removeAll();
GridBagConstraints c = new GridBagConstraints();
c.fill = GridBagConstraints.BOTH;
c.gridwidth = 1;
@@ -703,7 +702,6 @@ class SettingsPanel extends JPanel implements ISettingsPanel {
}
private void addNetworkSetupButtons() {
- buttonPanel.removeAll();
GridBagConstraints c = new GridBagConstraints();
c.fill = GridBagConstraints.BOTH;
c.gridwidth = 1;
@@ -719,7 +717,6 @@ class SettingsPanel extends JPanel implements ISettingsPanel {
}
private void addNetworkOfferButtons() {
- buttonPanel.removeAll();
GridBagConstraints c = new GridBagConstraints();
c.fill = GridBagConstraints.BOTH;
c.gridwidth = 1;
@@ -734,6 +731,16 @@ class SettingsPanel extends JPanel implements ISettingsPanel {
buttonPanel.add(backButton, c);
}
+ private void addNetworkJoinButtons() {
+ GridBagConstraints c = new GridBagConstraints();
+ c.fill = GridBagConstraints.BOTH;
+ c.gridwidth = GridBagConstraints.REMAINDER;
+ c.weightx = 1;
+ c.weighty = 1;
+
+ buttonPanel.add(backButton, c);
+ }
+
private JButton createButton(String title, final Event event) {
JButton button = new JButton(title);
button.addActionListener(new ActionListener() {
@@ -753,6 +760,8 @@ class SettingsPanel extends JPanel implements ISettingsPanel {
removePlayerSettingsPanel();
}
+ buttonPanel.removeAll();
+
switch (mode) {
case DEFAULT:
addDefaultButtons();
@@ -767,7 +776,7 @@ class SettingsPanel extends JPanel implements ISettingsPanel {
enableOptions(false);
break;
case NETWORK_JOIN:
- // addNetworkJoinButtons();
+ addNetworkJoinButtons();
enableOptions(false);
break;
}