diff options
Diffstat (limited to 'src/jrummikub/view')
-rw-r--r-- | src/jrummikub/view/IGameListPanel.java | 8 | ||||
-rw-r--r-- | src/jrummikub/view/ISettingsPanel.java | 21 | ||||
-rw-r--r-- | src/jrummikub/view/IView.java | 48 | ||||
-rw-r--r-- | src/jrummikub/view/impl/GameListPanel.java | 16 |
4 files changed, 81 insertions, 12 deletions
diff --git a/src/jrummikub/view/IGameListPanel.java b/src/jrummikub/view/IGameListPanel.java index 8a05546..47de90e 100644 --- a/src/jrummikub/view/IGameListPanel.java +++ b/src/jrummikub/view/IGameListPanel.java @@ -35,9 +35,15 @@ public interface IGameListPanel { * Sets the channel name * * @param name - * channel name + * channel name */ public void setChannelName(String name); + /** + * Set the games (host and player count) into the game list + * + * @param games + * list of game data + */ public void setGameList(List<GameData> games); } diff --git a/src/jrummikub/view/ISettingsPanel.java b/src/jrummikub/view/ISettingsPanel.java index d01129e..c52d72c 100644 --- a/src/jrummikub/view/ISettingsPanel.java +++ b/src/jrummikub/view/ISettingsPanel.java @@ -37,10 +37,10 @@ public interface ISettingsPanel { }; /** - * enables the start of a network game at a given point in game + * Sets the settings mode according to the point of the game * - * @param enable - * starting a network game + * @param mode + * settings mode to be set (join, offer, network, default) */ public void setSettingsMode(SettingsMode mode); @@ -237,6 +237,12 @@ public interface ISettingsPanel { */ public IEvent getOfferGameEvent(); + /** + * Sets the player colors which can be chosen + * + * @param colors + * a Set of colors which are not taken yet + */ public void setPlayerColors(Set<Color> colors); /** @@ -260,13 +266,14 @@ public interface ISettingsPanel { /** Only computer players added */ COMPUTER_PLAYERS_ONLY_WARNING } - + /** - * SettingsPanel can be used with different functions in different situations + * SettingsPanel can be used with different functions in different + * situations */ public enum SettingsMode { - /**Local game settings */ - DEFAULT, + /** Local game settings */ + DEFAULT, /** */ NETWORK_SETUP, /** */ diff --git a/src/jrummikub/view/IView.java b/src/jrummikub/view/IView.java index 1121b44..33f6284 100644 --- a/src/jrummikub/view/IView.java +++ b/src/jrummikub/view/IView.java @@ -162,22 +162,70 @@ public interface IView { */ public IEvent1<File> getSaveEvent(); + /** + * The pause event is emitted when the user wants to pause the current turn + * + * @return the event + */ public IEvent getPauseEvent(); + /** + * The end pause event is emitted when the user wants to sresume the game + * after a pause + * + * @return the event + */ public IEvent getEndPauseEvent(); + /** + * Hides all view elements and panels except for the cleared table and an + * empty hand panel + */ public void clearView(); + /** + * The network game event is emitted when the user chooses a network game + * + * @return the event + */ public IEvent getNetworkGameEvent(); + /** + * Getter for login panel + * + * @return login panel + */ public ILoginPanel getLoginPanel(); + /** + * Getter for game list panel + * + * @return game list panel + */ public IGameListPanel getGameListPanel(); + /** + * Show/hide login panel + * + * @param show + * true = login panel is shown + */ public void showLoginPanel(boolean show); + /** + * Enable/disable pause mode + * + * @param enable + * true = enable + */ public void enablePauseMode(boolean enable); + /** + * Show/hide game list panel + * + * @param show + * true = show + */ public void showGameListPanel(boolean show); /** diff --git a/src/jrummikub/view/impl/GameListPanel.java b/src/jrummikub/view/impl/GameListPanel.java index b7b170b..e1e1c9d 100644 --- a/src/jrummikub/view/impl/GameListPanel.java +++ b/src/jrummikub/view/impl/GameListPanel.java @@ -31,6 +31,8 @@ import jrummikub.util.IEvent1; import jrummikub.view.IGameListPanel; class GameListPanel extends JPanel implements IGameListPanel { + private static final long serialVersionUID = 1L; + private JLabel title; private JList gameList; private JButton joinButton; @@ -67,6 +69,13 @@ class GameListPanel extends JPanel implements IGameListPanel { c.weighty = 0; add(Box.createVerticalStrut(3), c); + addButtons(c); + + setBorder(new CompoundBorder(new LineBorder(Color.BLACK), + new EmptyBorder(10, 10, 10, 10))); + } + + private void addButtons(GridBagConstraints c) { joinButton = new JButton("Beitreten"); c.gridwidth = 1; add(joinButton, c); @@ -109,9 +118,6 @@ class GameListPanel extends JPanel implements IGameListPanel { cancelEvent.emit(); } }); - - setBorder(new CompoundBorder(new LineBorder(Color.BLACK), new EmptyBorder( - 10, 10, 10, 10))); } void reset() { @@ -157,6 +163,7 @@ class GameListPanel extends JPanel implements IGameListPanel { private static class GameDataCellRenderer extends JPanel implements ListCellRenderer { + private static final long serialVersionUID = -892701906163443927L; JLabel hostLabel, playerCountLabel; GameDataCellRenderer() { @@ -193,7 +200,8 @@ class GameListPanel extends JPanel implements IGameListPanel { int total = gameData.getGameSettings().getPlayerList().size(); int occupied = total; - for (PlayerSettings player : gameData.getGameSettings().getPlayerList()) { + for (PlayerSettings player : gameData.getGameSettings() + .getPlayerList()) { if (player.getType() == Type.VACANT) { occupied--; } |