/Users/20390/Desktop/jacob IA/src/newgui/NewMainGUI.java

   1 /*

   2  * To change this license header, choose License Headers in Project Properties.

   3  * To change this template file, choose Tools | Templates

   4  * and open the template in the editor.

   5  */

   6 package newgui;

   7 

   8 import java.util.ArrayList;

   9 import java.util.List;

  10 import org.jfree.data.category.CategoryDataset;

  11 import org.jfree.data.category.DefaultCategoryDataset;

  12 import org.jfree.ui.RefineryUtilities;

  13 

  14 /**

  15  *

  16  * @author 20390

  17  * Extensibility:

  18  *                 - graph display more than 1 student

  19  *                 - extend limit of student to be greater than 79

  20  *                 - improved graphics for graph

  21  *                 - attempt to lean more on arrayList

  22  * 

  23  */

  24 public class NewMainGUI extends javax.swing.JFrame {

  25 

  26     /**

  27      * Creates new form NewMainGUI

  28      * 

  29      * Note that it is very important to declare global values, arrays and arraylists

  30      */

  31     int counter = 0;

  32     int counterForTable = -1;

  33     private Student[] students;

  34     private graphStudent[] graphStudents;

  35     DefaultCategoryDataset dataset = new DefaultCategoryDataset();

  36     List<String> times= new ArrayList<>();

  37     

  38 

  39     public NewMainGUI() {

  40 

  41         initComponents();

  42         start();

  43     }

  44 

  45     private void start() {

  46         students = new Student[79];

  47         for (int i = 0; i < students.length; i++) {

  48             students[i] = new Student();

  49         }

  50     }

  51 

  52     public void refreshTable() {

  53 /*this if condition is added to get the number of actual "real" students that the user actually inputed, everytime the for-loop 

  54 detects a real student, the counterForTable goes up*/

  55         for (int z = 0; z < students.length; z++) {

  56             if (!students[z].getName().equals("n.A.Y.")) {

  57                 counterForTable++;

  58                 displayTable.setValueAt(students[z].getName(), counterForTable, 0);

  59                 displayTable.setValueAt(students[z].getAge(), counterForTable, 1);

  60                 displayTable.setValueAt(students[z].getGender()[0] + students[z].getGender()[1]+ students[z].getGender()[2], counterForTable, 2);

  61                 displayTable.setValueAt(students[z].getSubject(), counterForTable, 3);

  62                 displayTable.setValueAt(students[z].getGrade(), counterForTable, 4);

  63                 displayTable.setValueAt(students[z].getEmail(), counterForTable, 5);

  64 

  65             }

  66         }

  67         System.out.println("counter for table rn is " + counterForTable);

  68     }

  69 

  70     public void createGraphArray() {

  71         System.out.println("create graphstudent array right now");

  72         graphStudents = new graphStudent[counterForTable + 1];

  73         for (int i = 0; i < counterForTable + 1; i++) {

  74             String gName = nameTF.getText();

  75 

  76             double gGrade = students[i].getGrade();

  77 

  78             double gExpectedGrade = students[i].getExpectedGrade();

  79 

  80             graphStudents[i] = new graphStudent(gName, gGrade, gExpectedGrade);

  81         }

  82         counterForTable = -1;

  83         System.out.println(graphStudents.length);

  84         gCreateDataset();

  85 

  86     }

  87 

  88     private void clearTable() {

  89         for (int z = 0; z < students.length; z++) {

  90             displayTable.setValueAt("", z, 0);

  91             displayTable.setValueAt("", z, 1);

  92             displayTable.setValueAt("", z, 2);

  93             displayTable.setValueAt("", z, 3);

  94             displayTable.setValueAt("", z, 4);

  95             displayTable.setValueAt("", z, 5);

  96         }

  97     }

  98 

  99     public CategoryDataset gCreateDataset() {

 100         String grade = "grade";

 101         String expectedGrade = "expected grade";

 102        

 103         for (int i = 0; i < graphStudents.length +1; i++) {

 104 

 105             String nameForGraph = graphStudents[i].getGName();

 106             dataset.addValue(graphStudents[i].getGGrade(), grade, nameForGraph);

 107             

 108             dataset.addValue(graphStudents[i].getGExpectedGrade(), expectedGrade, nameForGraph);

 109             

 110         }

 111         return dataset;

 112 

 113     }

 114 

 115     

 837 

 838     private void exitMenuItemActionPerformed(java.awt.event.ActionEvent evt) {                                             

 839         System.exit(0);

 840     }                                            

 841 

 842     private void inputButtonMouseReleased(java.awt.event.MouseEvent evt) {                                          

 843         /*

 844         note that the time attribute is different from the rest adn that it is stored on a separate arraylist instead of array

 845         */

 846         String name = nameTF.getText();

 847         int age = Integer.parseInt(ageTF.getText());

 848 

 849         String[] gender = {"", "", ""};

 850         if (maleRadioButton.isSelected()) {

 851             gender[0] = "male";

 852         }

 853         if (femaleRadioButton.isSelected()) {

 854             gender[1] = "female";

 855         }

 856         if (otherGenderRadioButton.isSelected()) {

 857             gender[2] = "other";

 858         }

 859         String subject = subjectComboBox.getSelectedItem() + "";

 860         double grade = Double.parseDouble(gradeTF.getText());

 861         String email = emailTF.getText();

 862         double expectedGrade = Double.parseDouble(expectedGradeTF.getText());

 863 

 864         students[counter] = new Student(name, age, gender, subject, grade, email, expectedGrade);

 865         

 866         

 867         String timeString = timeTF.getText();

 868         

 869         times.add(0, timeString);

 870 

 871         counter++;

 872 

 873         nameTF.setText("");

 874         ageTF.setText("");

 875         maleRadioButton.setSelected(false);

 876         femaleRadioButton.setSelected(false);

 877         otherGenderRadioButton.setSelected(false);

 878         subjectComboBox.setSelectedIndex(0);

 879         gradeTF.setText("");

 880         emailTF.setText("");

 881         expectedGradeTF.setText("");

 882         timeTF.setText("");

 883 

 884     }                                         

 885 

 886     private void sortNameZToAButtonActionPerformed(java.awt.event.ActionEvent evt) {                                                   

 887         // TODO add your handling code here:

 888     }                                                  

 889 

 890     private void sortNameAToZButtonActionPerformed(java.awt.event.ActionEvent evt) {                                                   

 891         // TODO add your handling code here:

 892     }                                                  

 893 

 894     private void sortByAgeAscendingButtonActionPerformed(java.awt.event.ActionEvent evt) {                                                         

 895         // TODO add your handling code here:

 896     }                                                        

 897 

 898     private void sortByAgeDecendingButtonActionPerformed(java.awt.event.ActionEvent evt) {                                                         

 899         // TODO add your handling code here:

 900     }                                                        

 901 

 902     private void sortEmailAToZButtonActionPerformed(java.awt.event.ActionEvent evt) {                                                    

 903         // TODO add your handling code here:

 904     }                                                   

 905 

 906     private void sortEmailZtoAActionPerformed(java.awt.event.ActionEvent evt) {                                              

 907         // TODO add your handling code here:

 908     }                                             

 909 

 910     private void refreshMouseReleased(java.awt.event.MouseEvent evt) {                                      

 911         // TODO add your handling code here:

 912         clearTable();

 913 

 914         refreshTable();

 915 

 916         createGraphArray();

 917     }                                     

 918 

 919     private void ageTFActionPerformed(java.awt.event.ActionEvent evt) {                                      

 920         // TODO add your handling code here:

 921     }                                     

 922 

 923     private void inputButtonActionPerformed(java.awt.event.ActionEvent evt) {                                            

 924         // TODO add your handling code here:

 925     }                                           

 926 

 927     private void inputButtonMousePressed(java.awt.event.MouseEvent evt) {                                         

 928 

 929     }                                        

 930 

 931     private void refreshActionPerformed(java.awt.event.ActionEvent evt) {                                        

 932         // TODO add your handling code here:

 933     }                                       

 934 

 935     private void sortNameAToZButtonMouseReleased(java.awt.event.MouseEvent evt) {                                                 

 936         // TODO add your handling code here:

 937         clearTable();

 938         sortAndSearch sortClass = new sortAndSearch();

 939         sortClass.sortByNameAtoZ(students);

 940 

 941         refreshTable();

 942         createGraphArray();

 943     }                                                

 944 

 945     private void sortNameZToAButtonMouseReleased(java.awt.event.MouseEvent evt) {                                                 

 946         // TODO add your handling code here:

 947         clearTable();

 948         sortAndSearch sortClass = new sortAndSearch();

 949         sortClass.sortByNameZtoA(students);

 950 

 951         refreshTable();

 952         createGraphArray();

 953 

 954     }                                                

 955 

 956     private void sortByAgeAscendingButtonMouseReleased(java.awt.event.MouseEvent evt) {                                                       

 957         // TODO add your handling code here:

 958         clearTable();

 959         sortAndSearch sortClass = new sortAndSearch();

 960         sortClass.sortByAgeAscending(students);

 961 

 962         refreshTable();

 963         createGraphArray();

 964     }                                                      

 965 

 966     private void sortByAgeDecendingButtonMouseReleased(java.awt.event.MouseEvent evt) {                                                       

 967         // TODO add your handling code here:

 968         clearTable();

 969         sortAndSearch sortClass = new sortAndSearch();

 970         sortClass.sortByAgeDescending(students);

 971 

 972         refreshTable();

 973         createGraphArray();

 974     }                                                      

 975 

 976     private void sortEmailAToZButtonMouseReleased(java.awt.event.MouseEvent evt) {                                                  

 977         // TODO add your handling code here:

 978         clearTable();

 979         sortAndSearch sortClass = new sortAndSearch();

 980         sortClass.sortByEmailAtoZ(students);

 981 

 982         refreshTable();

 983         createGraphArray();

 984     }                                                 

 985 

 986     private void sortEmailZtoAMouseReleased(java.awt.event.MouseEvent evt) {                                            

 987         // TODO add your handling code here:

 988         clearTable();

 989         sortAndSearch sortClass = new sortAndSearch();

 990         sortClass.sortByEmailZtoA(students);

 991 

 992         refreshTable();

 993         createGraphArray();

 994     }                                           

 995 

 996     private void msgPaneSearchButtonMouseReleased(java.awt.event.MouseEvent evt) {                                                  

 997         // TODO add your handling code here:

 998         sortAndSearch sortClass = new sortAndSearch();

 999         int key = sortClass.sequentialSearch(students, msgPaneNameTF.getText());

1000 

1001         msgPaneEmail.setText(students[key].getEmail());

1002         msgPaneQuickText.setText("Hello, " + msgPaneNameTF.getText() + ", this is an automated message, it is said that we are going to meet on "+times.get(0)+ ", to talk about " + students[key].getSubject() + ". See you soon!");

1003     }                                                 

1004 

1005     private void clearButtonActionPerformed(java.awt.event.ActionEvent evt) {                                            

1006         // TODO add your handling code here:

1007     }                                           

1008 

1009     private void clearButtonMouseReleased(java.awt.event.MouseEvent evt) {                                          

1010         clearTable();        // TODO add your handling code here:

1011     }                                         

1012 

1013     private void sortByGradeAscendingButtonMouseReleased(java.awt.event.MouseEvent evt) {                                                         

1014         // TODO add your handling code here:

1015         clearTable();

1016         sortAndSearch sortClass = new sortAndSearch();

1017         sortClass.sortByGradeAscending(students);

1018 

1019         refreshTable();

1020         createGraphArray();

1021     }                                                        

1022 

1023     private void sortByGradeDecendingButtonMouseReleased(java.awt.event.MouseEvent evt) {                                                         

1024         // TODO add your handling code here:

1025         clearTable();

1026         sortAndSearch sortClass = new sortAndSearch();

1027         sortClass.sortByGradeDescending(students);

1028 

1029         refreshTable();

1030         createGraphArray();

1031     }                                                        

1032 

1033     private void graphButtonMouseReleased(java.awt.event.MouseEvent evt) {                                          

1034         // TODO add your handling code here:

1035 

1036         graph chart = new graph("Student Statistics", "Student Status Report", dataset);

1037         chart.pack();

1038         RefineryUtilities.centerFrameOnScreen(chart);

1039         chart.setVisible(true);

1040     }                                         

1041 

1042     private void addNewTimeButtonActionPerformed(java.awt.event.ActionEvent evt) {                                                 

1043         // TODO add your handling code here:

1044     }                                                

1045 

1046     private void showNewestTimeButtonActionPerformed(java.awt.event.ActionEvent evt) {                                                     

1047         // TODO add your handling code here:

1048     }                                                    

1049 

1050     private void msgPaneSearchButtonActionPerformed(java.awt.event.ActionEvent evt) {                                                    

1051         // TODO add your handling code here:

1052     }                                                   

1053 

1054     private void showNewestTimeButtonMouseReleased(java.awt.event.MouseEvent evt) {                                                   

1055         // TODO add your handling code here:

1056         newestTimeTF.setText(times.get(0));

1057     }                                                  

1058 

1059     private void addNewTimeButtonMouseReleased(java.awt.event.MouseEvent evt) {                                               

1060         // TODO add your handling code here:

1061         times.add(0,newTimeTF.getText());

1062         newestTimeTF.setText(times.get(0));

1063     }                                              

1064 

1065     /**

1066      * @param args the command line arguments

1067      */

1068     public static void main(String args[]) {

1069         /* Set the Nimbus look and feel */

1070         //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">

1071         /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.

1072          * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html 

1073          */

1074         try {

1075             for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {

1076                 if ("Nimbus".equals(info.getName())) {

1077                     javax.swing.UIManager.setLookAndFeel(info.getClassName());

1078                     break;

1079                 }

1080             }

1081         } catch (ClassNotFoundException ex) {

1082             java.util.logging.Logger.getLogger(NewMainGUI.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);

1083         } catch (InstantiationException ex) {

1084             java.util.logging.Logger.getLogger(NewMainGUI.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);

1085         } catch (IllegalAccessException ex) {

1086             java.util.logging.Logger.getLogger(NewMainGUI.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);

1087         } catch (javax.swing.UnsupportedLookAndFeelException ex) {

1088             java.util.logging.Logger.getLogger(NewMainGUI.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);

1089         }

1090         //</editor-fold>

1091 

1092         /* Create and display the form */

1093         java.awt.EventQueue.invokeLater(new Runnable() {

1094             public void run() {

1095                 new NewMainGUI().setVisible(true);

1096             }

1097         });

1098     }


/**



SAMPLE OF GENERATED CODE BY NETBEANS












 116      * This method is called from within the constructor to initialize the form.

 117      * WARNING: Do NOT modify this code. The content of this method is always

 118      * regenerated by the Form Editor.

 119      */

 120     @SuppressWarnings("unchecked")

 121     // <editor-fold defaultstate="collapsed" desc="Generated Code">                          

 122     private void initComponents() {

 123 

 124        173         msgPaneSearchButton = new javax.swing.JButton();

 174         msgPaneEmail = new javax.swing.JTextArea();

 175         menuBar = new javax.swing.JMenuBar();

 176         fileMenu = new javax.swing.JMenu();

 177         openMenuItem = new javax.swing.JMenuItem();

 178         saveMenuItem = new javax.swing.JMenuItem();

 179         saveAsMenuItem = new javax.swing.JMenuItem();

 180         exitMenuItem = new javax.swing.JMenuItem();

 181         editMenu = new javax.swing.JMenu();

 182         cutMenuItem = new javax.swing.JMenuItem();

 183         copyMenuItem = new javax.swing.JMenuItem();

 184         pasteMenuItem = new javax.swing.JMenuItem();

 185         deleteMenuItem = new javax.swing.JMenuItem();

 186         helpMenu = new javax.swing.JMenu();

 187         contentsMenuItem = new javax.swing.JMenuItem();

 188         aboutMenuItem = new javax.swing.JMenuItem();

 189 

 190         setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

 191 

 192         inputButton.setText("Input");

 193         inputButton.addMouseListener(new java.awt.event.MouseAdapter() {

 194             public void mousePressed(java.awt.event.MouseEvent evt) {

 195                 inputButtonMousePressed(evt);

 196             }

 197             public void mouseReleased(java.awt.event.MouseEvent evt) {

 198                 inputButtonMouseReleased(evt);

 199             }

 200         });

 201         inputButton.addActionListener(new java.awt.event.ActionListener() {

 202             public void actionPerformed(java.awt.event.ActionEvent evt) {

 203                 inputButtonActionPerformed(evt);

 204             }

 205         });

 206 

 207         \ 216 

 217         maleRadioButton.setText("Male");

 218 

 219         femaleRadioButton.setText("Female");

 220 

 221         otherGenderRadioButton.setText("Other");

 222 

 223         subjectComboBox.setModel(new javax.swing.DefaultComboBoxModel<>(new String[] { "SAT", "ACT", "IB", "AP", "IELT", "TOFEL", " " }));

 224 

 225         emailLabel.setText("Email");

 226 

 227         ageTF.addActionListener(new java.awt.event.ActionListener() {

 228             public void actionPerformed(java.awt.event.ActionEvent evt) {

 229                 ageTFActionPerformed(evt);

 230             }

 231         });

 232 

 233         expectedGradeLabel.setText("Expected Grade");

 234 

 235         meetingTimeLabel.setText("Meeting Time");

 236 

 237         javax.swing.GroupLayout inputPaneLayout = new javax.swing.GroupLayout(inputPane);

 238        310                 .addGroup(inputPaneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)

 311                     .addComponent(gradeLabel)

 312                     .addComponent(gradeTF, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)

 313                     .addComponent(expectedGradeLabel)

 314                     .addComponent(expectedGradeTF, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))

 315                 .addGap(18, 18, 18)

 316                 .addGroup(inputPaneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)

 317                     .addComponent(emailLabel)

 318                     .addComponent(emailTF, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))

 319                 .addGap(18, 18, 18)

 320                 .addGroup(inputPaneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)

 321                     .addComponent(meetingTimeLabel)

 322                     .addComponent(timeTF, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))

 323                 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 136, Short.MAX_VALUE)

 324                 .addComponent(inputButton)

 325                 .addGap(28, 28, 28))

 326         );

 327 

 328         panes.addTab("Input", inputPane);

 329 

 330         displayTable.setModel(new javax.swing.table.DefaultTableModel(

 331             new Object [][] {

 332                 {null, null, null, null, null, null},

 333                 {null, null, null, null, null, null},

 334                 {null, null, null, null, null, null},

 335                 {null, null, null, null, null, null},

 336                 {null, null, null, null, null, null},

 337                 {null, null, null, null, null, null},

 338                 {null, null, null, null, null, null},

 339                 {null, null, null, null, null, null},

 340                 {null, null, null, null, null, null},

 341                 {null, null, null, null, null, null},

 342                 {null, null, null, null, null, null},

 343                 {null, null, null, null, null, null},

 344                 {null, null, null, null, null, null},

 345                 {null, null, null, null, null, null},

 346                 {null, null, null, null, null, null},

 347                 {null, null, null, null, null, null},

 348                 {null, null, null, null, null, null},

 349                 {null, null, null, null, null, null},

 350                 {null, null, null, null, null, null},

 351                 {null, null, null, null, null, null},

 352                 {null, null, null, null, null, null},

 353                 {null, null, null, null, null, null},

 354                 {null, null, null, null, null, null},

 355                 {null, null, null, null, null, null},

 356                 {null, null, null, null, null, null},

 357                 {null, null, null, null, null, null},

 358                 {null, null, null, null, null, null},

 359                 {null, null, null, null, null, null},

 360                 {null, null, null, null, null, null},

 361                 {null, null, null, null, null, null},

 362                 {null, null, null, null, null, null},

 363                 {null, null, null, null, null, null},

 364                 {null, null, null, null, null, null},

 365                 {null, null, null, null, null, null},

 366                 {null, null, null, null, null, null},

 367                 {null, null, null, null, null, null},

 368                 {null, null, null, null, null, null},

 369                 {null, null, null, null, null, null},

 370                 {null, null, null, null, null, null},

 371                 {null, null, null, null, null, null},

 372                 {null, null, null, null, null, null},

 373                 {null, null, null, null, null, null},

 374                 {null, null, null, null, null, null},

 375                 {null, null, null, null, null, null},

 376                 {null, null, null, null, null, null},

 377                 {null, null, null, null, null, null},

 378                 {null, null, null, null, null, null},

 379                 {null, null, null, null, null, null},

 380                 {null, null, null, null, null, null},

 381                 {null, null, null, null, null, null},

 382                 {null, null, null, null, null, null},

 383                 {null, null, null, null, null, null},

 384                 {null, null, null, null, null, null},

 385                 {null, null, null, null, null, null},

 386                 {null, null, null, null, null, null},

 387                 {null, null, null, null, null, null},

 388                 {null, null, null, null, null, null},

 389                 {null, null, null, null, null, null},

 390                 {null, null, null, null, null, null},

 391                 {null, null, null, null, null, null},

 392                 {null, null, null, null, null, null},

 393                 {null, null, null, null, null, null},

 394                 {null, null, null, null, null, null},

 395                 {null, null, null, null, null, null},

 396                 {null, null, null, null, null, null},

 397                 {null, null, null, null, null, null},

 398                 {null, null, null, null, null, null},

 399                 {null, null, null, null, null, null},

 400                 {null, null, null, null, null, null},

 401                 {null, null, null, null, null, null},

 402                 {null, null, null, null, null, null},

 403                 {null, null, null, null, null, null},

 404                 {null, null, null, null, null, null},

 405                 {null, null, null, null, null, null},

 406                 {null, null, null, null, null, null},

 407                 {null, null, null, null, null, null},

 408                 {null, null, null, null, null, null},

 409                 {null, null, null, null, null, null},

 410                 {null, null, null, null, null, null},

 411                 {null, null, null, null, null, null}

 412             },

 413             new String [] {

 414                 "Name", "Age", "Gender", "Subject", "Grade", "Email"

 415             }

 416         ));

 417         displayTable.setGridColor(new java.awt.Color(0, 0, 0));

 418         tableScrollPane.setViewportView(displayTable);

 419 

 420         sortNameZToAButton.setText("sortNameZToA");

 421         sortNameZToAButton.addMouseListener(new java.awt.event.MouseAdapter() {

 422             public void mouseReleased(java.awt.event.MouseEvent evt) {

 423                 sortNameZToAButtonMouseReleased(evt);

 424             }

 425         });

 426         sortNameZToAButton.addActionListener(new java.awt.event.ActionListener() {

 427             public void actionPerformed(java.awt.event.ActionEvent evt) {

 428                 sortNameZToAButtonActionPerformed(evt);

 429             }

 430         });

 431 

 432         sortNameAToZButton.setText("sortNameAToZ");

 433         sortNameAToZButton.addMouseListener(new java.awt.event.MouseAdapter() {

 434             public void mouseReleased(java.awt.event.MouseEvent evt) {

 435                 sortNameAToZButtonMouseReleased(evt);

 436             }

 437         });

 438         sortNameAToZButton.addActionListener(new java.awt.event.ActionListener() {

 439             public void actionPerformed(java.awt.event.ActionEvent evt) {

 440                 sortNameAToZButtonActionPerformed(evt);

 441             }

 442         });

 443 

 444         sortByAgeAscendingButton.setText("sortByAgeAscending");

 445         sortByAgeAscendingButton.addMouseListener(new java.awt.event.MouseAdapter() {

 446             public void mouseReleased(java.awt.event.MouseEvent evt) {

 447                 sortByAgeAscendingButtonMouseReleased(evt);

 448             }

 449         });

 450         sortByAgeAscendingButton.addActionListener(new java.awt.event.ActionListener() {

 451             public void actionPerformed(java.awt.event.ActionEvent evt) {

 452                 sortByAgeAscendingButtonActionPerformed(evt);

 453             }

 454         });

 455 

 456         sortByAgeDecendingButton.setText("sortByAgeDecending");

 457         sortByAgeDecendingButton.addMouseListener(new java.awt.event.MouseAdapter() {

 458             public void mouseReleased(java.awt.event.MouseEvent evt) {

 459                 sortByAgeDecendingButtonMouseReleased(evt);

 460             }

 461         });

 462         sortByAgeDecendingButton.addActionListener(new java.awt.event.ActionListener() {

 463             public void actionPerformed(java.awt.event.ActionEvent evt) {

 464                 sortByAgeDecendingButtonActionPerformed(evt);

 465             }

 466         });

 467 

 468         sortEmailAToZButton.setText("sortEmailAToZ");

 469         sortEmailAToZButton.addMouseListener(new java.awt.event.MouseAdapter() {

 470             public void mouseReleased(java.awt.event.MouseEvent evt) {

 471                 sortEmailAToZButtonMouseReleased(evt);

 472             }

 473         });

 474         sortEmailAToZButton.addActionListener(new java.awt.event.ActionListener() {

 475             public void actionPerformed(java.awt.event.ActionEvent evt) {

 476                 sortEmailAToZButtonActionPerformed(evt);

 477             }

 478         });

 479 

 480         sortEmailZtoA.setText("sortEmailZtoA");

 481         sortEmailZtoA.addMouseListener(new java.awt.event.MouseAdapter() {

 482             public void mouseReleased(java.awt.event.MouseEvent evt) {

 483                 sortEmailZtoAMouseReleased(evt);

 484             }

 485         });

 486         sortEmailZtoA.addActionListener(new java.awt.event.ActionListener() {

 487             public void actionPerformed(java.awt.event.ActionEvent evt) {

 488                 sortEmailZtoAActionPerformed(evt);

 489             }

 490         });

 491 

 492         refresh.setText("Refresh");

 493         refresh.addMouseListener(new java.awt.event.MouseAdapter() {

 494             public void mouseReleased(java.awt.event.MouseEvent evt) {

 495                 refreshMouseReleased(evt);

 496             }

 497         });

 498         refresh.addActionListener(new java.awt.event.ActionListener() {

 499             public void actionPerformed(java.awt.event.ActionEvent evt) {

 500                 refreshActionPerformed(evt);

 501             }

 502         });

 503 

 504         clearButton.setText("Clear");

 505         clearButton.addMouseListener(new java.awt.event.MouseAdapter() {

 506             public void mouseReleased(java.awt.event.MouseEvent evt) {

 507                 clearButtonMouseReleased(evt);

 508             }

 509         });

 510         clearButton.addActionListener(new java.awt.event.ActionListener() {

 511             public void actionPerformed(java.awt.event.ActionEvent evt) {

 512                 clearButtonActionPerformed(evt);

 513             }

 514         });

 515 

 516         sortByGradeAscendingButton.setText("sortByGradeAscending");

 517         sortByGradeAscendingButton.addMouseListener(new java.awt.event.MouseAdapter() {

 518             public void mouseReleased(java.awt.event.MouseEvent evt) {

 519                 sortByGradeAscendingButtonMouseReleased(evt);

 520             }

 521         });

 522 

 523         sortByGradeDecendingButton.setText("sortByGradeDecending");

 524         sortByGradeDecendingButton.addMouseListener(new java.awt.event.MouseAdapter() {

 525             public void mouseReleased(java.awt.event.MouseEvent evt) {

 526                 sortByGradeDecendingButtonMouseReleased(evt);

 527             }

 528         });

 529 

 530      

 580         );

 581 

 582         panes.addTab("Table", tablePane);

 583 

 584         graphButton.setText("Graph It");

 585         graphButton.addMouseListener(new java.awt.event.MouseAdapter() {

 586             public void mouseReleased(java.awt.event.MouseEvent evt) {

 587                 graphButtonMouseReleased(evt);

 588             }

 589         });

 590 

 591         javax.swing.GroupLayout graphPaneLayout = new javax.swing.GroupLayout(graphPane);

 592         graphPane.setLayout(graphPaneLayout);

 593         graphPaneLayout.setHorizontalGroup(

 594             graphPaneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

 595             .addGroup(graphPaneLayout.createSequentialGroup()

 596                 .addContainerGap(345, Short.MAX_VALUE)

 597                 .addComponent(graphButton)

 598                 .addGap(347, 347, 347))

 599         );

 600         graphPaneLayout.setVerticalGroup(

 601             graphPaneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

 602             .addGroup(graphPaneLayout.createSequentialGroup()

 603                 .addGap(217, 217, 217)

 604                 .addComponent(graphButton)

 605                 .addContainerGap(266, Short.MAX_VALUE))

 606         );

 607 

 608         panes.addTab("Graph", graphPane);

 609 

 610         newestMeetingTimeLabel.setText("Newest Meeting Time");

 611 

 612         newTimeLabel.setText("New Time");

 613 

 614         newestTimeTF.setColumns(20);

 615         newestTimeTF.setRows(1);

 616         newestTimeTF.setTabSize(5);

 617 

 618         newTimeTF.setColumns(20);

 619         newTimeTF.setRows(1);

 620         newTimeTF.setTabSize(5);

 621 

 622         showNewestTimeButton.setText("Show");

 623         showNewestTimeButton.addMouseListener(new java.awt.event.MouseAdapter() {

 624             public void mouseReleased(java.awt.event.MouseEvent evt) {

 625                 showNewestTimeButtonMouseReleased(evt);

 626             }

 627         });

 628         showNewestTimeButton.addActionListener(new java.awt.event.ActionListener() {

 629             public void actionPerformed(java.awt.event.ActionEvent evt) {

 630                 showNewestTimeButtonActionPerformed(evt);

 631             }

 632         });

 633 

 634         addNewTimeButton.setText("Add time");

 635         addNewTimeButton.addMouseListener(new java.awt.event.MouseAdapter() {

 636             public void mouseReleased(java.awt.event.MouseEvent evt) {

 637                 addNewTimeButtonMouseReleased(evt);

 638             }

 639         });

 640         addNewTimeButton.addActionListener(new java.awt.event.ActionListener() {

 641             public void actionPerformed(java.awt.event.ActionEvent evt) {

 642                 addNewTimeButtonActionPerformed(evt);

 643             }

 644         });

 645 

 646         javax.swing.GroupLayout meetingPaneLayout = new javax.swing.GroupLayout(meetingPane);

 647         meetingPane.setLayout(meetingPaneLayout);

 648         meetingPaneLayout.setHorizontalGroup(

 649             meetingPaneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

 650             .addGroup(meetingPaneLayout.createSequentialGroup()

 651                 .addGap(51, 51, 51)

 652                 .addGroup(meetingPaneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

 653                     .addComponent(newTimeLabel)

 654                     .addGroup(meetingPaneLayout.createSequentialGroup()

 655                         .addComponent(newestMeetingTimeLabel)

 656                         .addGap(33, 33, 33)

 657                         .addComponent(showNewestTimeButton)))

 658                 .addGap(112, 112, 112)

 659                 .addGroup(meetingPaneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

 660                     .addComponent(newestTimeTF, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)

 661                     .addComponent(newTimeTF, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))

 662                 .addGap(33, 33, 33)

 663                 .addComponent(addNewTimeButton)

 664                 .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))

 665         );

 666         meetingPaneLayout.setVerticalGroup(

 667             meetingPaneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

 668             .addGroup(meetingPaneLayout.createSequentialGroup()

 669                 .addGap(50, 50, 50)

 670                 .addGroup(meetingPaneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)

 671                     .addComponent(newestMeetingTimeLabel)

 672                     .addComponent(showNewestTimeButton)

 673                     .addComponent(newestTimeTF, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))

 674                 .addGap(53, 53, 53)

 675                 .addGroup(meetingPaneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

 676                     .addComponent(newTimeLabel)

 677                     .addGroup(meetingPaneLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)

 678                         .addComponent(addNewTimeButton)

 679                         .addComponent(newTimeTF, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))

 680                 .addContainerGap(351, Short.MAX_VALUE))

 681         );

 682 

 683         panes.addTab("Meetings", meetingPane);

 684 

 685         nameOfStudentLabel.setText("Name of Student");

 686 

 687         searchedEmailResultLabel.setText("Searched Email Result");

 688 

 689      

 779 

 780         menuBar.add(fileMenu);

 781 

 782         editMenu.setMnemonic('e');

 783         editMenu.setText("Edit");

 784 

 785         cutMenuItem.setMnemonic('t');

 786         cutMenuItem.setText("Cut");

 787         editMenu.add(cutMenuItem);

 788 

 789         copyMenuItem.setMnemonic('y');

 790         copyMenuItem.setText("Copy");

 791         editMenu.add(copyMenuItem);

 792 

 793         pasteMenuItem.setMnemonic('p');

 794         pasteMenuItem.setText("Paste");

 795         editMenu.add(pasteMenuItem);

 796 

 797         deleteMenuItem.setMnemonic('d');

 798         deleteMenuItem.setText("Delete");

 799         editMenu.add(deleteMenuItem);

 800 

 801         menuBar.add(editMenu);

 802 

 803         helpMenu.setMnemonic('h');

 804         helpMenu.setText("Help");

 805 

 806         contentsMenuItem.setMnemonic('c');

 807         contentsMenuItem.setText("Contents");

 808         helpMenu.add(contentsMenuItem);

 809 

 810         aboutMenuItem.setMnemonic('a');

 811         aboutMenuItem.setText("About");

 812         helpMenu.add(aboutMenuItem);

 813 

 814         menuBar.add(helpMenu);

 815 

 816         setJMenuBar(menuBar);

 817 

 818         javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());

 819         getContentPane().setLayout(layout);

 820         layout.setHorizontalGroup(

 821             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

 822             .addGroup(layout.createSequentialGroup()

 823                 .addContainerGap()

 824                 .addComponent(panes, javax.swing.GroupLayout.PREFERRED_SIZE, 807, javax.swing.GroupLayout.PREFERRED_SIZE)

 825                 .addContainerGap(375, Short.MAX_VALUE))

 826         );

 827         layout.setVerticalGroup(

 828             layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

 829             .addGroup(layout.createSequentialGroup()

 830                 .addContainerGap()

 831                 .addComponent(panes)

 832                 .addGap(620, 620, 620))

 833         );

 834 

 835         pack();

 836     }// </editor-fold>                        






1099 

1100     // Variables declaration - do not modify                     

1101     private javax.swing.JMenuItem aboutMenuItem;

1102     private javax.swing.JButton addNewTimeButton;

1103     private javax.swing.JLabel ageLabel;

1104     private javax.swing.JTextField ageTF;

1105     private javax.swing.JButton clearButton;

1106     private javax.swing.JMenuItem contentsMenuItem;

1107     private javax.swing.JMenuItem copyMenuItem;

1168 }

1169