summaryrefslogtreecommitdiffstats
path: root/src/jrummikub/view/impl/View.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/jrummikub/view/impl/View.java')
-rw-r--r--src/jrummikub/view/impl/View.java87
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);
+ }
+}