From 745f66eff6833883e6e020a7ed0f2989b26535f9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?D=C3=A1niel?= <Dániel@kovax-pc>
Date: Wed, 27 Nov 2013 17:20:40 +0100
Subject: [PATCH] =?UTF-8?q?TopPlayer=20k=C3=A9sz=20M=C3=A9g=20nem=20rakja?=
 =?UTF-8?q?=20sorba=20a=20j=C3=A1t=C3=A9kosokat,=20=C3=A9s=20undor=C3=ADt?=
 =?UTF-8?q?=C3=B3=20a=20design.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 settings2.dat                           | Bin 440 -> 9283 bytes
 src/GUI/menu/Controller.java            |   2 +-
 src/GUI/menu/View.form                  |  43 ++++++++++++---
 src/GUI/menu/View.java                  |  67 ++++++++++++++++++------
 src/GUI/settings/Controller.java        |   1 +
 src/GUI/settings/Model.java             |   3 ++
 src/GUI/settings/SettingsViewPanel.java |   3 ++
 src/Program/Game.java                   |   3 ++
 src/Program/Player.java                 |  24 ++++++++-
 src/Program/Program.java                |   4 +-
 src/Program/Settings.java               |  38 +++++++++++++-
 11 files changed, 159 insertions(+), 29 deletions(-)

diff --git a/settings2.dat b/settings2.dat
index f3f84bafa0f4e45428da95d31d7f559fca04ee25..843909e98fcbd1f726ce8eb901724fbcb52991de 100644
GIT binary patch
literal 9283
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

delta 114
zcmX@?v4eSn1jm%FUwmTTM|~zLtYIve?4_*4VV*e0Y>is&>B%L^sysY83=9lrB@E0a
zsYR2QDTi7!m9sD~FfbJtGSo4!1x*9X8<#NfhUVoZ=BB0u<Rn(67J($$D@qu6i&INV
NGV{`ljr39yO909%A*%oY

diff --git a/src/GUI/menu/Controller.java b/src/GUI/menu/Controller.java
index c46680f..14b330d 100644
--- a/src/GUI/menu/Controller.java
+++ b/src/GUI/menu/Controller.java
@@ -17,7 +17,7 @@ public class Controller
     
     public View view;
     private Model model;
-    private Menu menu;
+    public Menu menu;
 
     
     public Controller(Menu menu)
diff --git a/src/GUI/menu/View.form b/src/GUI/menu/View.form
index 4e37edc..bb2498f 100644
--- a/src/GUI/menu/View.form
+++ b/src/GUI/menu/View.form
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 
-<Form version="1.3" maxVersion="1.9" type="org.netbeans.modules.form.forminfo.JPanelFormInfo">
+<Form version="1.3" maxVersion="1.8" type="org.netbeans.modules.form.forminfo.JPanelFormInfo">
   <Properties>
     <Property name="minimumSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
       <Dimension value="[400, 400]"/>
@@ -30,8 +30,8 @@
               <Component id="jPanel2" min="-2" pref="180" max="-2" attributes="0"/>
               <EmptySpace type="unrelated" max="-2" attributes="0"/>
               <Component id="jSeparator1" min="-2" max="-2" attributes="0"/>
-              <EmptySpace max="-2" attributes="0"/>
-              <Component id="jPanel1" pref="187" max="32767" attributes="0"/>
+              <EmptySpace type="separate" max="-2" attributes="0"/>
+              <Component id="rightPanel" pref="182" max="32767" attributes="0"/>
               <EmptySpace max="-2" attributes="0"/>
           </Group>
       </Group>
@@ -41,9 +41,9 @@
           <Group type="102" alignment="1" attributes="0">
               <EmptySpace max="-2" attributes="0"/>
               <Group type="103" groupAlignment="1" attributes="0">
-                  <Component id="jPanel2" pref="378" max="32767" attributes="0"/>
+                  <Component id="jPanel2" pref="445" max="32767" attributes="0"/>
                   <Component id="jSeparator1" alignment="0" max="32767" attributes="0"/>
-                  <Component id="jPanel1" pref="378" max="32767" attributes="0"/>
+                  <Component id="rightPanel" pref="445" max="32767" attributes="0"/>
               </Group>
               <EmptySpace max="-2" attributes="0"/>
           </Group>
@@ -51,7 +51,7 @@
     </DimensionLayout>
   </Layout>
   <SubComponents>
-    <Container class="javax.swing.JPanel" name="jPanel1">
+    <Container class="javax.swing.JPanel" name="rightPanel">
       <Properties>
         <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor">
           <Dimension value="[200, 150]"/>
@@ -61,9 +61,13 @@
       <Layout>
         <DimensionLayout dim="0">
           <Group type="103" groupAlignment="0" attributes="0">
-              <Group type="102" attributes="0">
+              <Group type="102" alignment="0" attributes="0">
                   <EmptySpace min="-2" pref="43" max="-2" attributes="0"/>
-                  <Component id="jLabel3" pref="134" max="32767" attributes="0"/>
+                  <Component id="jLabel3" max="32767" attributes="0"/>
+                  <EmptySpace min="-2" pref="93" max="-2" attributes="0"/>
+              </Group>
+              <Group type="102" alignment="0" attributes="0">
+                  <Component id="jScrollPane1" pref="0" max="32767" attributes="0"/>
                   <EmptySpace max="-2" attributes="0"/>
               </Group>
           </Group>
@@ -73,6 +77,8 @@
               <Group type="102" alignment="0" attributes="0">
                   <EmptySpace min="-2" pref="34" max="-2" attributes="0"/>
                   <Component id="jLabel3" min="-2" max="-2" attributes="0"/>
+                  <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                  <Component id="jScrollPane1" min="-2" pref="375" max="-2" attributes="0"/>
                   <EmptySpace max="32767" attributes="0"/>
               </Group>
           </Group>
@@ -84,6 +90,27 @@
             <Property name="text" type="java.lang.String" value="Top Players"/>
           </Properties>
         </Component>
+        <Container class="javax.swing.JScrollPane" name="jScrollPane1">
+          <AuxValues>
+            <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/>
+          </AuxValues>
+
+          <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/>
+          <SubComponents>
+            <Component class="javax.swing.JTable" name="topPlayerTable">
+              <Properties>
+                <Property name="model" type="javax.swing.table.TableModel" editor="org.netbeans.modules.form.editors2.TableModelEditor">
+                  <Table columnCount="4" rowCount="4">
+                    <Column editable="true" title="Title 1" type="java.lang.Object"/>
+                    <Column editable="true" title="Title 2" type="java.lang.Object"/>
+                    <Column editable="true" title="Title 3" type="java.lang.Object"/>
+                    <Column editable="true" title="Title 4" type="java.lang.Object"/>
+                  </Table>
+                </Property>
+              </Properties>
+            </Component>
+          </SubComponents>
+        </Container>
       </SubComponents>
     </Container>
     <Container class="javax.swing.JPanel" name="jPanel2">
diff --git a/src/GUI/menu/View.java b/src/GUI/menu/View.java
index f7e2b24..af4a593 100644
--- a/src/GUI/menu/View.java
+++ b/src/GUI/menu/View.java
@@ -7,6 +7,9 @@
 package GUI.menu;
 
 import GUI.Window.Window;
+import Program.Player;
+import java.util.ArrayList;
+import javax.swing.JTable;
 
 
 /**
@@ -21,17 +24,27 @@ public class View extends Window
     Boolean newGameButtonPressed    = false;
     Boolean settingsButtonPressed   = false;
     Boolean aboutButtonPresses      = false;
+    JTable topTable;
     
     public View(Controller controller, Model model) 
     {
         this.controller = controller;
         this.model = model;
+        
         initComponents();
         //this.setSize(windowWidth,windowHeight);
         this.setVisible(true);
 
+        
         this.createWindow();
         this.frame.setResizable( false );
+        this.getTopPlayers();
+    }
+    public void getTopPlayers()
+    {
+        this.topPlayerTable.setModel(this.controller.menu.game.settings);
+
+        
     }
 
 
@@ -46,8 +59,10 @@ public class View extends Window
     // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
     private void initComponents() {
 
-        jPanel1 = new javax.swing.JPanel();
+        rightPanel = new javax.swing.JPanel();
         jLabel3 = new javax.swing.JLabel();
+        jScrollPane1 = new javax.swing.JScrollPane();
+        topPlayerTable = new javax.swing.JTable();
         jPanel2 = new javax.swing.JPanel();
         newGameBTN = new javax.swing.JButton();
         settingsBTN = new javax.swing.JButton();
@@ -59,24 +74,42 @@ public class View extends Window
         setPreferredSize(new java.awt.Dimension(400, 400));
         setWindosWidth(400);
 
-        jPanel1.setPreferredSize(new java.awt.Dimension(200, 150));
+        rightPanel.setPreferredSize(new java.awt.Dimension(200, 150));
 
         jLabel3.setText("Top Players");
 
-        javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
-        jPanel1.setLayout(jPanel1Layout);
-        jPanel1Layout.setHorizontalGroup(
-            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
-            .addGroup(jPanel1Layout.createSequentialGroup()
+        topPlayerTable.setModel(new javax.swing.table.DefaultTableModel(
+            new Object [][] {
+                {null, null, null, null},
+                {null, null, null, null},
+                {null, null, null, null},
+                {null, null, null, null}
+            },
+            new String [] {
+                "Title 1", "Title 2", "Title 3", "Title 4"
+            }
+        ));
+        jScrollPane1.setViewportView(topPlayerTable);
+
+        javax.swing.GroupLayout rightPanelLayout = new javax.swing.GroupLayout(rightPanel);
+        rightPanel.setLayout(rightPanelLayout);
+        rightPanelLayout.setHorizontalGroup(
+            rightPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(rightPanelLayout.createSequentialGroup()
                 .addGap(43, 43, 43)
-                .addComponent(jLabel3, javax.swing.GroupLayout.DEFAULT_SIZE, 134, Short.MAX_VALUE)
+                .addComponent(jLabel3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
+                .addGap(93, 93, 93))
+            .addGroup(rightPanelLayout.createSequentialGroup()
+                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE)
                 .addContainerGap())
         );
-        jPanel1Layout.setVerticalGroup(
-            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
-            .addGroup(jPanel1Layout.createSequentialGroup()
+        rightPanelLayout.setVerticalGroup(
+            rightPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
+            .addGroup(rightPanelLayout.createSequentialGroup()
                 .addGap(34, 34, 34)
                 .addComponent(jLabel3)
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 375, javax.swing.GroupLayout.PREFERRED_SIZE)
                 .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
         );
 
@@ -149,8 +182,8 @@ public class View extends Window
                 .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, 180, javax.swing.GroupLayout.PREFERRED_SIZE)
                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                 .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
-                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
-                .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, 187, Short.MAX_VALUE)
+                .addGap(18, 18, 18)
+                .addComponent(rightPanel, javax.swing.GroupLayout.PREFERRED_SIZE, 182, Short.MAX_VALUE)
                 .addContainerGap())
         );
         layout.setVerticalGroup(
@@ -158,9 +191,9 @@ public class View extends Window
             .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                 .addContainerGap()
                 .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
-                    .addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE, 378, Short.MAX_VALUE)
+                    .addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE, 445, Short.MAX_VALUE)
                     .addComponent(jSeparator1, javax.swing.GroupLayout.Alignment.LEADING)
-                    .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, 378, Short.MAX_VALUE))
+                    .addComponent(rightPanel, javax.swing.GroupLayout.DEFAULT_SIZE, 445, Short.MAX_VALUE))
                 .addContainerGap())
         );
     }// </editor-fold>//GEN-END:initComponents
@@ -183,10 +216,12 @@ public class View extends Window
     private javax.swing.JButton aboutBTN;
     private javax.swing.JLabel jLabel2;
     private javax.swing.JLabel jLabel3;
-    private javax.swing.JPanel jPanel1;
     private javax.swing.JPanel jPanel2;
+    private javax.swing.JScrollPane jScrollPane1;
     private javax.swing.JSeparator jSeparator1;
     private javax.swing.JButton newGameBTN;
+    private javax.swing.JPanel rightPanel;
     private javax.swing.JButton settingsBTN;
+    private javax.swing.JTable topPlayerTable;
     // End of variables declaration//GEN-END:variables
 }
diff --git a/src/GUI/settings/Controller.java b/src/GUI/settings/Controller.java
index b452fbd..29a6e67 100644
--- a/src/GUI/settings/Controller.java
+++ b/src/GUI/settings/Controller.java
@@ -43,6 +43,7 @@ public class Controller
     {
         this.model.saveSettingsToFile();
     }
+    
 
     
 }
diff --git a/src/GUI/settings/Model.java b/src/GUI/settings/Model.java
index 6d069e1..bfeb074 100644
--- a/src/GUI/settings/Model.java
+++ b/src/GUI/settings/Model.java
@@ -7,6 +7,7 @@
 package GUI.settings;
 
 import Program.Player;
+import java.util.ArrayList;
 
 /**
  *
@@ -84,5 +85,7 @@ public class Model
         return this.controller.progSettings.diff;
     }
     
+    
+    
   
 }
diff --git a/src/GUI/settings/SettingsViewPanel.java b/src/GUI/settings/SettingsViewPanel.java
index e88cf0f..a295424 100644
--- a/src/GUI/settings/SettingsViewPanel.java
+++ b/src/GUI/settings/SettingsViewPanel.java
@@ -5,7 +5,9 @@
 package GUI.settings;
 
 import GUI.Window.Window;
+import Program.Player;
 import java.awt.event.KeyEvent;
+import java.util.ArrayList;
 import javax.swing.ButtonGroup;
 import javax.swing.JRadioButton;
 
@@ -46,6 +48,7 @@ public class SettingsViewPanel extends Window  {
         this.updateSummaryLabel();
         
     }
+   
     private void updateSummaryLabel()
     {
         String diff = "hellyeah";
diff --git a/src/Program/Game.java b/src/Program/Game.java
index 22efdc7..c078a5e 100644
--- a/src/Program/Game.java
+++ b/src/Program/Game.java
@@ -23,8 +23,11 @@ public class Game
     
     public Game(Settings settings)
     {
+       
         this.window = 0;
         this.settings = settings;
+        this.settings.game = this;
+        this.settings.load();
         this.windowManager(0);
         //while( true )
         //{
diff --git a/src/Program/Player.java b/src/Program/Player.java
index 96f1458..20b0f53 100644
--- a/src/Program/Player.java
+++ b/src/Program/Player.java
@@ -5,12 +5,14 @@
 package Program;
 
 import java.io.Serializable;
+import java.util.Comparator;
+import javax.swing.table.AbstractTableModel;
 
 /**
  *
  * @author Dániel
  */
-public class Player implements Serializable
+public class Player  implements Serializable, Comparable<Player>
 {
     public String  name;
     public int     maxScore;
@@ -28,4 +30,24 @@ public class Player implements Serializable
         this.maxScore   = maxScore;
         this.date       = date;
     }
+
+    @Override
+    public int compareTo(Player t) {
+        if( t.maxScore < this.maxScore )
+            return 0;
+        else
+            return 1;
+    }
+    
+
+    public class ComparePlayerByScore implements Comparator<Player>
+    {
+
+        @Override
+        public int compare(Player t, Player t1) {
+            if( t.maxScore < t1.maxScore )
+                return 0;
+            return 1;
+        }
+    }
 }
diff --git a/src/Program/Program.java b/src/Program/Program.java
index 286cbd8..b06cba4 100644
--- a/src/Program/Program.java
+++ b/src/Program/Program.java
@@ -18,8 +18,8 @@ public class Program
        
        Game game = new Game(settings);
        
-       settings.setGame(game);
-       settings.load();
+     //  settings.setGame(game);
+      // settings.load();
        
        
        
diff --git a/src/Program/Settings.java b/src/Program/Settings.java
index 59f5098..0a69139 100644
--- a/src/Program/Settings.java
+++ b/src/Program/Settings.java
@@ -11,12 +11,14 @@ import java.io.ObjectInputStream;
 import java.io.ObjectOutputStream;
 import java.io.Serializable;
 import java.util.ArrayList;
+import java.util.Collections;
+import javax.swing.table.AbstractTableModel;
 
 /**
  *
  * @author Dániel
  */
-public class Settings implements Serializable
+public class Settings extends  AbstractTableModel implements Serializable
 {
     public Player actualPlayer;
     public int size;
@@ -126,4 +128,38 @@ public class Settings implements Serializable
         }
             this.game.settings = e;
     }
+    public ArrayList<Player> getTopPlayer(int num)
+    {
+        ArrayList<Player> temp = new ArrayList<>();
+        for( int i =0;i<this.players.size();i++)
+        {
+            temp.add(this.players.get(i));
+        }
+        Collections.sort(temp);
+        return temp;
+    }
+
+    @Override
+    public int getRowCount() 
+    {
+        return this.players.size();
+    }
+
+    @Override
+    public int getColumnCount() {
+        return 2;
+    }
+
+    @Override
+    public Object getValueAt(int i, int i1) {
+        if( i1 == 1 )
+        {
+            return players.get(i).maxScore;
+        }
+        else if( i1 == 0 )
+        {
+            return  players.get(i).name;
+        }
+        return 0;
+    }
 }
-- 
GitLab