/Users/19314/NetBeansProjects/4.4.1 Computational Thinkning/src/MainGUI.java |
1
2 /*
3 Program can be altered to a schedule format, calculate free time, randomized time generator
4
5 desired time vs. actual time --> effiency tracker
6 program can become a tracker and display a week or a month of how the client allocated his time
7 --> pie chart or a graph to showcase time allocation
8 */
9
10 public class MainGUI extends javax.swing.JFrame {
11
12 private Task[] tasks = new Task[10];
13 private int counter = 0;
14 private SortingAndSearching sortAndSearch;
15
16 public MainGUI() {
17 initComponents();
18 myIntComponents();
19 }
20
21 public void myIntComponents(){
22
23 for(int i = 0; i < tasks.length; i++){
24 tasks[i] = new Task();
25
26 }
27
28 sortAndSearch = new SortingAndSearching();
29 }
30
31 //method that will be used in To-Do List Display tab to update the table of tasks
32 private void refreshDisplay(){
33 System.out.println("The length of the table is: " + displayTable.getRowCount());
34 int nextRow = -1;
35 for(int i = 0; i < counter; i++){
36 nextRow++;
37 System.out.println(i);
38 displayTable.setValueAt(tasks[i].getName(),nextRow, 0);
39 displayTable.setValueAt(tasks[i].getTime(),nextRow, 1);
40 displayTable.setValueAt(tasks[i].getDescription(),nextRow, 2);
41 displayTable.setValueAt(tasks[i].getDifficulty(),nextRow, 3);
42 }
43 }
44
45
676 private void exitMenuItemActionPerformed(java.awt.event.ActionEvent evt) {
677 System.exit(0);
678 }
679
680 private void completedTaskButtonActionPerformed(java.awt.event.ActionEvent evt) {
681 // TODO add your handling code here:
682 }
683
684 private void sortTimeButtonActionPerformed(java.awt.event.ActionEvent evt) {
685 // TODO add your handling code here:
686 }
687
688 private void refreshButtonMouseReleased(java.awt.event.MouseEvent evt) {
689
690 refreshDisplay();
691
692 }
693
694 private void sortDifficultyButtonMouseReleased(java.awt.event.MouseEvent evt) {
695
696 // calling from sortingAndSearching class
697 sortAndSearch.sortByDifficulty(tasks);
698 refreshDisplay();
699
700 }
701
702 private void inputTaskButtonActionPerformed(java.awt.event.ActionEvent evt) {
703 }
704
705 private void inputTaskButtonMouseReleased(java.awt.event.MouseEvent evt) {
706
707 //when the client clicks on the button on the Input Task Tab, it will store the inputted values
708 //Using parameters, the new "task" takes in the name, description, time, and difficulty level which
709 //is set at false and 0
710 Task task = new Task (taskNameTF.getText(), descriptionArea.getText(),
711 Integer.parseInt(timeToSpendOnTaskTF.getText()),
712 Integer.parseInt((String)difficultyLevelComboBox.getSelectedItem()), false, 0);
713
714 tasks [counter] = task;
715 counter++;
716
717 //clear the text field
718 taskNameTF.setText("");
719 descriptionArea.setText("");
720 timeToSpendOnTaskTF.setText("");
721 difficultyLevelComboBox.setSelectedIndex(0);
722 //text fields are cleared and ready for the next task to be inputted
723
724 }
725
726 private void completedTaskButtonMouseReleased(java.awt.event.MouseEvent evt) {
727
728 /*Once the client has completed a task, they fill out which task has been completed
729 and how long it actually took
730 */
731 String key = completedTaskTF.getText();
732
733 for(int i = 0; i < counter; i++){
734 System.out.println("key: " + key);
735 System.out.println("tasks[counter].getName()) " + tasks[i].getName());
736
737 if(key.equalsIgnoreCase(tasks[i].getName())){
738 tasks[i].setCompleted(true);
739 tasks[i].setActualtime(Integer.parseInt(spentTimeOnTaskTF.getText()));
740 }
741 //clear the text field box by ""
742 completedTaskTF.setText("");
743 spentTimeOnTaskTF.setText("");
744 }
745 }
746
747 private void refreshHistoryButtonMouseReleased(java.awt.event.MouseEvent evt) {
748 int nextRow = -1;
749
750 for(int i = 0; i < counter; i++){
751 nextRow++;
752 historyTable.setValueAt(tasks[i].getName(),nextRow, 0);
753 historyTable.setValueAt(tasks[i].getActualtime(),nextRow, 1);
754 historyTable.setValueAt(tasks[i].getCompleted(),nextRow, 2);
755
756 }
757 }
758
759 private void taskToSearchForButtonMouseReleased(java.awt.event.MouseEvent evt) {
760
761 /*
762 Looping through all of the inputted tasks, the getName should equal the key and if
763 the tasks meets the getCompleted condition- if it is true, then display "task is completed"
764 else, display task is not completed
765 In order to line break, use "\n" after every new object for convience
766 */
767 String key = taskToSearchForTF.getText();
768 String display = "";
769 for(int i = 0; i < counter; i++){
770 System.out.println("key: " + key);
771 System.out.println("tasks[counter].getName()) " + tasks[i].getName());
772
773 if(key.equalsIgnoreCase(tasks[i].getName())){
774 if(tasks[i].getCompleted()==true){
775 display = display + "Task is completed!" + "\n";
776 }
777 else{
778 display = display + "Task is not completed" + "\n";
779 }
780
781 display = display + "Description: " + tasks[i].getDescription() + "\n";
782 display = display + "Desired amount of time to spend: " + tasks[i].getTime() + "\n";
783 display = display + "Difficulty level: " + tasks[i].getDifficulty();
784
785 }
786
787 taskToSearchForAreaTF.setText(display);
788
789 }
790
791
792
793 }
794
795 private void sortTimeButtonMouseReleased(java.awt.event.MouseEvent evt) {
796
797 //bubble sorting method from sorting and searching class
798 sortAndSearch.sortByTime(tasks);
799 refreshDisplay();
800
801 }
802
803 private void progressBarButtonMouseReleased(java.awt.event.MouseEvent evt) {
804
805 }
806
807 private void progressBarButtonActionPerformed(java.awt.event.ActionEvent evt) {
808 /*
809 pre-conditions: As there is a loop going through all of the inputted tasks,
810 The task has to be true from the getCompleted object,
811 this means that the task is completed
812 */
813 double numberCompleted = 0;
814 for(int i = 0; i < counter; i++){
815 if(tasks[i].getCompleted()==true){
816 numberCompleted++;
817 }
818
819 }
820 double percentCompleted = (numberCompleted/counter) * 100;
821 progressbar.setValue((int)percentCompleted);
822
823 /*
824 Calculations are made to find the percentage of the number of completed
825 tasks out of the total amount of tasks
826 then the value is set to be displayed on the progress bar
827 */
828 }
829
830 /**
831 * @param args the command line arguments
832 */
833 public static void main(String args[]) {
834 /* Set the Nimbus look and feel */
835 //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
836 /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
837 * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
838 */
839 try {
840 for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
841 if ("Nimbus".equals(info.getName())) {
842 javax.swing.UIManager.setLookAndFeel(info.getClassName());
843 break;
844 }
845 }
846 } catch (ClassNotFoundException ex) {
847 java.util.logging.Logger.getLogger(MainGUI.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
848 } catch (InstantiationException ex) {
849 java.util.logging.Logger.getLogger(MainGUI.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
850 } catch (IllegalAccessException ex) {
851 java.util.logging.Logger.getLogger(MainGUI.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
852 } catch (javax.swing.UnsupportedLookAndFeelException ex) {
853 java.util.logging.Logger.getLogger(MainGUI.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
854 }
855 //</editor-fold>
856 //</editor-fold>
857 //</editor-fold>
858 //</editor-fold>
859
860 /* Create and display the form */
861 java.awt.EventQueue.invokeLater(new Runnable() {
862 public void run() {
863 new MainGUI().setVisible(true);
864 }
865 });
866 }
867
SAMPLE OF GENERATED CODE BY NETBEANS
/**
46 * This method is called from within the constructor to initialize the form.
47 * WARNING: Do NOT modify this code. The content of this method is always
48 * regenerated by the Form Editor.
49 */
50 @SuppressWarnings("unchecked")
51 // <editor-fold defaultstate="collapsed" desc="Generated Code">
52 private void initComponents() {
53
100 exitMenuItem = new javax.swing.JMenuItem();
101 editMenu = new javax.swing.JMenu();
102 cutMenuItem = new javax.swing.JMenuItem();
103 copyMenuItem = new javax.swing.JMenuItem();
104 pasteMenuItem = new javax.swing.JMenuItem();
105 deleteMenuItem = new javax.swing.JMenuItem();
106 helpMenu = new javax.swing.JMenu();
107 contentsMenuItem = new javax.swing.JMenuItem();
108 aboutMenuItem = new javax.swing.JMenuItem();
109
110 jRadioButtonMenuItem1.setSelected(true);
111 jRadioButtonMenuItem1.setText("jRadioButtonMenuItem1");
112
113 setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
114 setBackground(new java.awt.Color(51, 153, 255));
115
116 inputTaskPanel.setBackground(new java.awt.Color(153, 153, 153));
117
118 timeToSpendOnTaskLabel.setText("Time you would like to spend on the task (hours)");
119
120 taskNameLabel.setText("Task name");
121
122 taskDescriptionLabel.setText("Detail description of task");
123
124 inputTaskButton.setText("OK");
125 inputTaskButton.addMouseListener(new java.awt.event.MouseAdapter() {
126 public void mouseReleased(java.awt.event.MouseEvent evt) {
127 inputTaskButtonMouseReleased(evt);
128 }
129 });
130 inputTaskButton.addActionListener(new java.awt.event.ActionListener() {
131 public void actionPerformed(java.awt.event.ActionEvent evt) {
132 inputTaskButtonActionPerformed(evt);
133 }
134 });
135
136 descriptionArea.setColumns(20);
137 descriptionArea.setRows(5);
138 taskDescriptionAreaTextBox.setViewportView(descriptionArea);
139
140 difficultyLevelLabel.setText("Level of Difficulty (1-10)");
141
142 difficultyLevelComboBox.setModel(new javax.swing.DefaultComboBoxModel<>(new String[] { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10" }));
143
144 javax.swing.GroupLayout inputTaskPanelLayout = new javax.swing.GroupLayout(inputTaskPanel);
145 inputTaskPanel.setLayout(inputTaskPanelLayout);
146 inputTaskPanelLayout.setHorizontalGroup(
147 inputTaskPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
148 .addGroup(inputTaskPanelLayout.createSequentialGroup()
149 .addGap(27, 27, 27)
150 .addGroup(inputTaskPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
151 .addGroup(inputTaskPanelLayout.createSequentialGroup()
152 .addGroup(inputTaskPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
153 .addGroup(inputTaskPanelLayout.createSequentialGroup()
154 .addComponent(timeToSpendOnTaskLabel)
155 .addGap(27, 27, 27)
156 .addComponent(timeToSpendOnTaskTF, javax.swing.GroupLayout.PREFERRED_SIZE, 123, javax.swing.GroupLayout.PREFERRED_SIZE))
157 .addComponent(jSeparator2, javax.swing.GroupLayout.PREFERRED_SIZE, 679, javax.swing.GroupLayout.PREFERRED_SIZE)
158 .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, 679, javax.swing.GroupLayout.PREFERRED_SIZE))
159 .addGap(0, 283, Short.MAX_VALUE))
160 .addGroup(inputTaskPanelLayout.createSequentialGroup()
161 .addGroup(inputTaskPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
162 .addGroup(inputTaskPanelLayout.createSequentialGroup()
163 .addComponent(taskNameLabel)
164 .addGap(47, 47, 47)
165 .addComponent(taskNameTF, javax.swing.GroupLayout.PREFERRED_SIZE, 212, javax.swing.GroupLayout.PREFERRED_SIZE))
166 .addGroup(inputTaskPanelLayout.createSequentialGroup()
167 .addComponent(taskDescriptionLabel)
168 .addGap(68, 68, 68)
169 .addComponent(taskDescriptionAreaTextBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
170 .addContainerGap(490, Short.MAX_VALUE))))
171 .addGroup(inputTaskPanelLayout.createSequentialGroup()
172 .addGroup(inputTaskPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
173 .addGroup(inputTaskPanelLayout.createSequentialGroup()
174 .addGap(33, 33, 33)
175 .addComponent(difficultyLevelLabel)
176 .addGap(18, 18, 18)
177 .addComponent(difficultyLevelComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
178 .addGroup(inputTaskPanelLayout.createSequentialGroup()
179 .addGap(240, 240, 240)
180 .addComponent(inputTaskButton)))
181 .addGap(0, 0, Short.MAX_VALUE))
182 );
183 inputTaskPanelLayout.setVerticalGroup(
184 inputTaskPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
185 .addGroup(inputTaskPanelLayout.createSequentialGroup()
186 .addGap(56, 56, 56)
187 .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, 10, javax.swing.GroupLayout.PREFERRED_SIZE)
188 .addGap(24, 24, 24)
189 .addGroup(inputTaskPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
190 .addComponent(taskNameTF, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
191 .addComponent(taskNameLabel))
192 .addGroup(inputTaskPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
193 .addGroup(inputTaskPanelLayout.createSequentialGroup()
194 .addGap(59, 59, 59)
195 .addComponent(taskDescriptionLabel)
196 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 81, Short.MAX_VALUE))
197 .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, inputTaskPanelLayout.createSequentialGroup()
198 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
199 .addComponent(taskDescriptionAreaTextBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
200 .addGap(34, 34, 34)))
201 .addGroup(inputTaskPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
202 .addComponent(timeToSpendOnTaskLabel, javax.swing.GroupLayout.PREFERRED_SIZE, 26, javax.swing.GroupLayout.PREFERRED_SIZE)
203 .addComponent(timeToSpendOnTaskTF, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
204 .addGap(43, 43, 43)
205 .addGroup(inputTaskPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
206 .addComponent(difficultyLevelComboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
207 .addComponent(difficultyLevelLabel))
208 .addGap(34, 34, 34)
209 .addComponent(jSeparator2, javax.swing.GroupLayout.PREFERRED_SIZE, 10, javax.swing.GroupLayout.PREFERRED_SIZE)
210 .addGap(18, 18, 18)
211 .addComponent(inputTaskButton)
212 .addGap(50, 50, 50))
213 );
214
215 inputTaskTab.addTab("Input Task", inputTaskPanel);
216
217 toDoListDisplayPanel.setBackground(new java.awt.Color(51, 51, 51));
218
219 displayTable.setModel(new javax.swing.table.DefaultTableModel(
220 new Object [][] {
221 {"", null, null, null},
222 {null, null, null, null},
223 {null, null, null, null},
224 {null, null, null, null},
225 {null, null, null, null},
226 {null, null, null, null},
227 {null, null, null, null},
228 {null, null, null, null},
229 {null, null, null, null},
230 {null, null, null, null},
231 {null, null, null, null},
232 {null, null, null, null},
233 {null, null, null, null},
234 {null, null, null, null},
235 {null, null, null, null},
236 {null, null, null, null},
237 {null, null, null, null},
238 {null, null, null, null},
239 {null, null, null, null},
240 {null, null, null, null},
241 {null, null, null, null},
242 {null, null, null, null},
243 {null, null, null, null},
244 {null, null, null, null}
245 },
246 new String [] {
247 "Tasks", "Estimated Time", "Description", "Difficulty Level"
248 }
249 ));
250 toDoListDisplay.setViewportView(displayTable);
251
252 refreshButton.setText("Refresh");
253 refreshButton.addMouseListener(new java.awt.event.MouseAdapter() {
254 public void mouseReleased(java.awt.event.MouseEvent evt) {
255 refreshButtonMouseReleased(evt);
256 }
257 });
258
259 completedTaskLabel.setForeground(new java.awt.Color(204, 204, 204));
260 completedTaskLabel.setText("What task have you completed?");
261
262 spentTimeOnTaskLabel.setForeground(new java.awt.Color(204, 204, 204));
263 spentTimeOnTaskLabel.setText("How long did you spend on that task? ");
264
265 completedTaskButton.setText("OK");
266 completedTaskButton.addMouseListener(new java.awt.event.MouseAdapter() {
267 public void mouseReleased(java.awt.event.MouseEvent evt) {
268 completedTaskButtonMouseReleased(evt);
269 }
270 });
271 completedTaskButton.addActionListener(new java.awt.event.ActionListener() {
272 public void actionPerformed(java.awt.event.ActionEvent evt) {
273 completedTaskButtonActionPerformed(evt);
274 }
275 });
276
277 sortDifficultyButton.setText("Sort by difficulty");
278 sortDifficultyButton.addMouseListener(new java.awt.event.MouseAdapter() {
279 public void mouseReleased(java.awt.event.MouseEvent evt) {
280 sortDifficultyButtonMouseReleased(evt);
281 }
282 });
283
284 sortTimeButton.setText("Sort by time (shortest to longest)");
285 sortTimeButton.addMouseListener(new java.awt.event.MouseAdapter() {
286 public void mouseReleased(java.awt.event.MouseEvent evt) {
287 sortTimeButtonMouseReleased(evt);
288 }
289 });
290 sortTimeButton.addActionListener(new java.awt.event.ActionListener() {
291 public void actionPerformed(java.awt.event.ActionEvent evt) {
292 sortTimeButtonActionPerformed(evt);
293 }
336 );
337 toDoListDisplayPanelLayout.setVerticalGroup(
338 toDoListDisplayPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
339 .addGroup(toDoListDisplayPanelLayout.createSequentialGroup()
340 .addGap(31, 31, 31)
341 .addComponent(toDoListDisplay, javax.swing.GroupLayout.PREFERRED_SIZE, 91, javax.swing.GroupLayout.PREFERRED_SIZE)
342 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
343 .addGroup(toDoListDisplayPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
344 .addComponent(sortDifficultyButton)
345 .addComponent(sortTimeButton)
346 .addComponent(refreshButton))
347 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
348 .addComponent(jSeparator3, javax.swing.GroupLayout.PREFERRED_SIZE, 10, javax.swing.GroupLayout.PREFERRED_SIZE)
349 .addGap(52, 52, 52)
350 .addGroup(toDoListDisplayPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
351 .addComponent(completedTaskLabel)
352 .addComponent(completedTaskTF, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
353 .addGap(39, 39, 39)
354 .addGroup(toDoListDisplayPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
355 .addComponent(spentTimeOnTaskLabel)
356 .addComponent(spentTimeOnTaskTF, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
357 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 47, Short.MAX_VALUE)
358 .addComponent(completedTaskButton)
359 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
360 .addComponent(jSeparator4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
361 .addGap(87, 87, 87))
362 );
363
364 inputTaskTab.addTab("To Do List Display", toDoListDisplayPanel);
365
366 jPanel1.setBackground(new java.awt.Color(0, 51, 102));
367
368 historyTable.setModel(new javax.swing.table.DefaultTableModel(
369 new Object [][] {
370 {null, null, null},
455 {null, null, null},
456 {null, null, null},
457 {null, null, null},
458 {null, null, null},
459 {null, null, null},
460 {null, null, null},
461 {null, null, null},
462 {null, null, null},
463 {null, null, null},
464 {null, null, null},
465 {null, null, null},
466 {null, null, null},
467 {null, null, null},
468 {null, null, null}
469 },
470 new String [] {
471 "Task ", "Actual Time", "Completed"
472 }
473 ));
474 jScrollPane1.setViewportView(historyTable);
475
476 refreshHistoryButton.setText("Refresh");
477 refreshHistoryButton.addMouseListener(new java.awt.event.MouseAdapter() {
478 public void mouseReleased(java.awt.event.MouseEvent evt) {
479 refreshHistoryButtonMouseReleased(evt);
480 }
481 });
482
483 progressBarLabel.setForeground(new java.awt.Color(255, 255, 255));
484 progressBarLabel.setText("Progress of completed of tasks");
485
486 progressbar.setBackground(new java.awt.Color(255, 255, 255));
487 progressbar.setFont(new java.awt.Font("Kannada Sangam MN", 1, 14)); // NOI18N
488 progressbar.setForeground(new java.awt.Color(255, 255, 255));
489 progressbar.setStringPainted(true);
490
491 progressBarButton.setText("See Progress");
492 progressBarButton.addMouseListener(new java.awt.event.MouseAdapter() {
493 public void mouseReleased(java.awt.event.MouseEvent evt) {
494 progressBarButtonMouseReleased(evt);
495 }
496 });
497 progressBarButton.addActionListener(new java.awt.event.ActionListener() {
498 public void actionPerformed(java.awt.event.ActionEvent evt) {
499 progressBarButtonActionPerformed(evt);
500 }
501 });
502
503 javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
504 jPanel1.setLayout(jPanel1Layout);
505 jPanel1Layout.setHorizontalGroup(
506 jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
507 .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
508 .addContainerGap(263, Short.MAX_VALUE)
509 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
510 .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
511 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
512 .addComponent(progressbar, javax.swing.GroupLayout.PREFERRED_SIZE, 469, javax.swing.GroupLayout.PREFERRED_SIZE)
513 .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
514 .addGap(257, 257, 257))
515 .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
516 .addComponent(progressBarLabel)
517 .addGap(396, 396, 396))))
518 .addGroup(jPanel1Layout.createSequentialGroup()
519 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
520 .addGroup(jPanel1Layout.createSequentialGroup()
521 .addGap(432, 432, 432)
522 .addComponent(progressBarButton))
523 .addGroup(jPanel1Layout.createSequentialGroup()
524 .addGap(446, 446, 446)
525 .addComponent(refreshHistoryButton)))
526 .addGap(0, 0, Short.MAX_VALUE))
527 );
528 jPanel1Layout.setVerticalGroup(
529 jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
530 .addGroup(jPanel1Layout.createSequentialGroup()
531 .addGap(21, 21, 21)
532 .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 287, javax.swing.GroupLayout.PREFERRED_SIZE)
533 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
534 .addComponent(refreshHistoryButton)
535 .addGap(48, 48, 48)
536 .addComponent(progressBarLabel)
537 .addGap(18, 18, 18)
538 .addComponent(progressbar, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
539 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
540 .addComponent(progressBarButton)
541 .addContainerGap(20, Short.MAX_VALUE))
542 );
543
544 inputTaskTab.addTab("History", jPanel1);
545
546 taskToSearchForTab.setBackground(new java.awt.Color(102, 102, 102));
547
548 taskToSearchForLabel.setForeground(new java.awt.Color(255, 255, 255));
549 taskToSearchForLabel.setText("Task to search for");
550
551 taskToSearchForButton.setText("OK");
552 taskToSearchForButton.addMouseListener(new java.awt.event.MouseAdapter() {
553 public void mouseReleased(java.awt.event.MouseEvent evt) {
554 taskToSearchForButtonMouseReleased(evt);
555 }
556 });
557
558 taskToSearchForAreaTF.setColumns(20);
559 taskToSearchForAreaTF.setRows(5);
560 jScrollPane2.setViewportView(taskToSearchForAreaTF);
561
562 javax.swing.GroupLayout taskToSearchForTabLayout = new javax.swing.GroupLayout(taskToSearchForTab);
563 taskToSearchForTab.setLayout(taskToSearchForTabLayout);
564 taskToSearchForTabLayout.setHorizontalGroup(
565 taskToSearchForTabLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
566 .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, taskToSearchForTabLayout.createSequentialGroup()
567 .addContainerGap(278, Short.MAX_VALUE)
568 .addGroup(taskToSearchForTabLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
569 .addGroup(taskToSearchForTabLayout.createSequentialGroup()
570 .addComponent(taskToSearchForLabel)
571 .addGap(53, 53, 53)
572 .addComponent(taskToSearchForTF, javax.swing.GroupLayout.PREFERRED_SIZE, 126, javax.swing.GroupLayout.PREFERRED_SIZE)
573 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
574 .addComponent(taskToSearchForButton))
575 .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 436, javax.swing.GroupLayout.PREFERRED_SIZE))
576 .addGap(275, 275, 275))
577 );
578 taskToSearchForTabLayout.setVerticalGroup(
579 taskToSearchForTabLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
580 .addGroup(taskToSearchForTabLayout.createSequentialGroup()
581 .addGap(95, 95, 95)
582 .addGroup(taskToSearchForTabLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
583 .addComponent(taskToSearchForLabel)
584 .addComponent(taskToSearchForTF, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
585 .addComponent(taskToSearchForButton))
586 .addGap(54, 54, 54)
587 .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 192, javax.swing.GroupLayout.PREFERRED_SIZE)
588 .addContainerGap(139, Short.MAX_VALUE))
589 );
590
591 inputTaskTab.addTab("Task to Search For", taskToSearchForTab);
592
593 fileMenu.setMnemonic('f');
594 fileMenu.setText("File");
595
596 openMenuItem.setMnemonic('o');
597 openMenuItem.setText("Open");
598 fileMenu.add(openMenuItem);
599
600 saveMenuItem.setMnemonic('s');
601 saveMenuItem.setText("Save");
602 fileMenu.add(saveMenuItem);
603
604 saveAsMenuItem.setMnemonic('a');
605 saveAsMenuItem.setText("Save As ...");
606 saveAsMenuItem.setDisplayedMnemonicIndex(5);
607 fileMenu.add(saveAsMenuItem);
608
609 exitMenuItem.setMnemonic('x');
610 exitMenuItem.setText("Exit");
611 exitMenuItem.addActionListener(new java.awt.event.ActionListener() {
612 public void actionPerformed(java.awt.event.ActionEvent evt) {
613 exitMenuItemActionPerformed(evt);
614 }
615 });
616 fileMenu.add(exitMenuItem);
617
618 menuBar.add(fileMenu);
619
620 editMenu.setMnemonic('e');
621 editMenu.setText("Edit");
654 setJMenuBar(menuBar);
655
656 javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
657 getContentPane().setLayout(layout);
658 layout.setHorizontalGroup(
659 layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
660 .addGroup(layout.createSequentialGroup()
661 .addContainerGap()
662 .addComponent(inputTaskTab, javax.swing.GroupLayout.PREFERRED_SIZE, 1010, javax.swing.GroupLayout.PREFERRED_SIZE)
663 .addContainerGap(142, Short.MAX_VALUE))
664 );
665 layout.setVerticalGroup(
666 layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
667 .addGroup(layout.createSequentialGroup()
668 .addGap(31, 31, 31)
669 .addComponent(inputTaskTab)
670 .addContainerGap())
671 );
672
673 pack();
674 }// </editor-fold>
675
868 // Variables declaration - do not modify
869 private javax.swing.JMenuItem aboutMenuItem;
870 private javax.swing.JToggleButton completedTaskButton;
871 private javax.swing.JLabel completedTaskLabel;
872 private javax.swing.JTextField completedTaskTF;
873 private javax.swing.JMenuItem contentsMenuItem;
874 private javax.swing.JMenuItem copyMenuItem;
875 private javax.swing.JMenuItem cutMenuItem;
876 private javax.swing.JMenuItem deleteMenuItem;
877 private javax.swing.JTextArea descriptionArea;
878 private javax.swing.JComboBox<String> difficultyLevelComboBox;
879 private javax.swing.JLabel difficultyLevelLabel;
880 private javax.swing.JTable displayTable;
881 private javax.swing.JMenu editMenu;
882 private javax.swing.JMenuItem exitMenuItem;
883 private javax.swing.JMenu fileMenu;
884 private javax.swing.JMenu helpMenu;
885 private javax.swing.JTable historyTable;
886 private javax.swing.JToggleButton inputTaskButton;
922 private javax.swing.JScrollPane toDoListDisplay;
923 private javax.swing.JPanel toDoListDisplayPanel;
924 // End of variables declaration
925
926 }
927