Implement and modify to display JTree with countries
[Persons_Comparator.git] / src / PersonView.java
index 6823579d2bc162a43ea1fc6d1b377a1e43c73fe0..803fcf50498e42fbaa70e723e8faffbc38010578 100644 (file)
@@ -5,12 +5,13 @@ import java.awt.event.ActionListener;
 import java.util.ArrayList;
 
 public class PersonView extends JComponent implements ActionListener {
-    private int width = 800;
-    private int height = 500;
+    private int width = 600;
+    private int height = 600;
     private Person personObj;
     private ArrayList<Person> personArrayList;
     private FirstnameView firstnameView;
     private OriginView originView;
+    private RegionView regionView;
     private SizeView sizeView;
     private WeightView weightView;
     private EyeView eyeView;
@@ -18,13 +19,14 @@ public class PersonView extends JComponent implements ActionListener {
     private JPanel southPanel = new JPanel();
     private JPanel eastPanel = new JPanel();
     private JPanel westPanel = new JPanel();
-    private PersonPanel personPanel = new PersonPanel("Person comparison");
+    private PersonPanel personPanel = new PersonPanel();
     private JButton compareButton = new JButton("Compare");
 
     PersonView(Person personObj, ArrayList<Person> personArrayList) {
         setPersonObj(personObj);
-        setFirstnameView(new FirstnameView(15, this.personObj.getFirstname()));
+        setFirstnameView(new FirstnameView(14, this.personObj.getFirstname()));
         setOriginView(new OriginView(this.personObj.getOrigin()));
+        setRegionView(new RegionView(new Region()));
         setSizeView(new SizeView(this.personObj.getPersonSize()));
         setWeightView(new WeightView(this.personObj.getWeight()));
         setEyeView(new EyeView(this.personObj.getEye()));
@@ -35,14 +37,15 @@ public class PersonView extends JComponent implements ActionListener {
         northPanel.add(firstnameView);
         southPanel.setBorder(BorderFactory.createRaisedSoftBevelBorder());
         southPanel.add(compareButton);
-        eastPanel.setLayout(new BoxLayout(this.eastPanel, BoxLayout.Y_AXIS));
+        eastPanel.setLayout(new BoxLayout(this.eastPanel, BoxLayout.PAGE_AXIS));
         eastPanel.setBorder(BorderFactory.createRaisedSoftBevelBorder());
         eastPanel.add(sizeView);
         eastPanel.add(weightView);
         eastPanel.add(eyeView);
-        westPanel.setLayout(new BoxLayout(this.westPanel, BoxLayout.Y_AXIS));
+        westPanel.setLayout(new BoxLayout(this.westPanel, BoxLayout.PAGE_AXIS));
         westPanel.setBorder(BorderFactory.createRaisedSoftBevelBorder());
-        westPanel.add(originView);
+        //westPanel.add(originView);
+        westPanel.add(regionView);
     }
 
     public Person getPersonObj() {
@@ -81,6 +84,11 @@ public class PersonView extends JComponent implements ActionListener {
         this.originView = originView;
     }
 
+    public void setRegionView(RegionView regionView) {
+        this.regionView = regionView;
+    }
+
+
     /**
      * @return
      */
@@ -182,7 +190,8 @@ public class PersonView extends JComponent implements ActionListener {
             personArrayList.sort(getPersonObj());
             //Utils.displayArrayList(personArrayList);
             Person closestPerson = personArrayList.get(personArrayList.indexOf(this.getPersonObj()) + 1);
-            personPanel.setContentText(closestPerson.toString());
+            personPanel.setRightContentText(closestPerson.getFirstname().getFirstname() + " at distance " + closestPerson.getDistanceFromReference());
+            personPanel.getRightPanel().drawPerson(closestPerson);
         }
     }
 }