diff options
Diffstat (limited to 'src/jrummikub/view/impl/View.java')
-rw-r--r-- | src/jrummikub/view/impl/View.java | 87 |
1 files changed, 87 insertions, 0 deletions
diff --git a/src/jrummikub/view/impl/View.java b/src/jrummikub/view/impl/View.java new file mode 100644 index 0000000..5b0295c --- /dev/null +++ b/src/jrummikub/view/impl/View.java @@ -0,0 +1,87 @@ +package jrummikub.view.impl; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.Dimension; + +import javax.swing.JFrame; +import javax.swing.UIManager; + +import jrummikub.util.IListener; +import jrummikub.view.IPlayerPanel; +import jrummikub.view.ITable; +import jrummikub.view.IView; + +@SuppressWarnings("serial") +public class View extends JFrame implements IView { + private Table table; + private PlayerPanel playerPanel; + + private final static int PLAYER_PANEL_HEIGHT = 150; + + + public ITable getTable() { + return table; + } + + public IPlayerPanel getPlayerPanel() { + return playerPanel; + } + + + public View() { + super("JRummikub"); + + setSize(1000, 700); + setDefaultCloseOperation(EXIT_ON_CLOSE); + + setLayout(new BorderLayout()); + + table = new Table(); + add(table, BorderLayout.CENTER); + + playerPanel = new PlayerPanel(); + playerPanel.setBorder(new CustomBorder(Color.BLACK, 1, 0, 0, 0)); + playerPanel.setPreferredSize(new Dimension(0, PLAYER_PANEL_HEIGHT+1)); + add(playerPanel, BorderLayout.SOUTH); + } + + /** + * @param args + */ + public static void main(String[] args) { + // FIXME Only test main for GUI preview + String nativeLF = UIManager.getSystemLookAndFeelClassName(); + + try { + UIManager.setLookAndFeel(nativeLF); + } catch (Exception e) { + } + + View view = new View(); + + view.getPlayerPanel().setCurrentPlayerName("Player 1"); + view.getPlayerPanel().setTimeLeft(42); + view.getTable().setLeftPlayerName("Player 2"); + view.getTable().setTopPlayerName("Player 3"); + view.getTable().setRightPlayerName("Player 4"); + + view.getPlayerPanel().getSortByNumberEvent().add(new IListener() { + @Override + public void fire() { + System.out.println("'Sort by number' fired"); + }}); + view.getPlayerPanel().getSortByColorEvent().add(new IListener() { + @Override + public void fire() { + System.out.println("'Sort by color' fired"); + }}); + view.getPlayerPanel().getEndTurnEvent().add(new IListener() { + @Override + public void fire() { + System.out.println("'End turn' fired"); + }}); + + view.setVisible(true); + } +} |