X-Git-Url: https://git.piment-noir.org/?p=Persons_Comparator.git;a=blobdiff_plain;f=src%2FPersonView.java;h=a98c1e7d89796ce7d1078d0b1c202252b261a104;hp=e703ef3c60b75d5020b87a0dc056ed9e32e0f400;hb=9b3bfcdd95253a04ed12a676ee29a9d777c1e496;hpb=829bb0cf20bdd2171f867bfcae5ced5b5ad8cc5e diff --git a/src/PersonView.java b/src/PersonView.java index e703ef3..a98c1e7 100644 --- a/src/PersonView.java +++ b/src/PersonView.java @@ -2,6 +2,7 @@ import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; +import java.util.ArrayList; public class PersonView extends JPanel implements ActionListener { private int width = 400; @@ -119,6 +120,37 @@ public class PersonView extends JPanel implements ActionListener { @Override public void actionPerformed(ActionEvent actionEvent) { - + //TODO: one can implement a smarter way of getting all inputs values inside the main panel. + String firstname = this.getFirstnameView().getTextField().getText(); + String country = null; + if (this.getOriginView().getComboBox().getSelectedIndex() != -1) + country = (String) this.getOriginView().getComboBox().getSelectedObjects()[0]; + Integer size = (Integer) this.getSizeView().getSpinner().getValue(); + Integer weight = (Integer) this.getWeightView().getComboBox().getSelectedItem(); + String eye_color = (String) this.getEyeView().getColorsList().getSelectedValue(); + if (firstname.equals("") || country == null || eye_color == null) { + JOptionPane.showMessageDialog(this, + "Some required fields are missing.", + "Error", + JOptionPane.ERROR_MESSAGE); + } else { + this.getPersonObj().setFirstname(new Firstname(firstname)); + this.getPersonObj().setOrigin(new Origin(country)); + this.getPersonObj().setPersonSize(new Size(size)); + this.getPersonObj().setWeight(new Weight(weight)); + this.getPersonObj().setEye(new Eye(eye_color)); + //this.getPersonObj().displayPersonArrayList(); + ArrayList personArrayList = this.getPersonObj().getPersonArrayList(); + personArrayList.add(this.getPersonObj()); + this.getPersonObj().displayArrayList(personArrayList); + personArrayList.sort(getPersonObj()); + this.getPersonObj().displayArrayList(personArrayList); + Integer previousPersonIndex = personArrayList.indexOf(this.getPersonObj()) - 1; + Integer nextPersonIndex = personArrayList.indexOf(this.getPersonObj()) + 1; + //Person previousPerson = personArrayList.get(personArrayList.indexOf(this.getPersonObj()) - 1); + //Person nextPerson = personArrayList.get(personArrayList.indexOf(this.getPersonObj()) + 1); + System.out.println(previousPersonIndex); + System.out.println(nextPersonIndex); + } } }