commit 243464a2c5a7ab08cccb2fa0277673f527dfad4d
parent 8c048ec17ab0d9d27da60fb5e8f3d4e102038e4f
Author: TranLili <tranlili96@gmail.com>
Date: Mon, 13 Feb 2023 15:23:19 +0100
Created switch case for sorting. Changed scroll speed on frame.
Diffstat:
2 files changed, 24 insertions(+), 23 deletions(-)
diff --git a/OOP2023_a22willi_a21liltr_assignment2/src/assignment2/GUI.java b/OOP2023_a22willi_a21liltr_assignment2/src/assignment2/GUI.java
@@ -79,10 +79,6 @@ public class GUI implements ActionListener {
@Override
public void actionPerformed(ActionEvent e) {
- if (e.getSource() == buttons.get("work")) {
- System.out.println("Test worked");
- }
-
if (e.getSource().equals(buttons.get("sort"))) {
taskHandler.Sort(selectSort());
}
diff --git a/OOP2023_a22willi_a21liltr_assignment2/src/assignment2/TaskHandler.java b/OOP2023_a22willi_a21liltr_assignment2/src/assignment2/TaskHandler.java
@@ -24,6 +24,7 @@ public class TaskHandler implements TaskListener {
taskList.setLayout(new BoxLayout(taskList, BoxLayout.PAGE_AXIS));
scrollPane = new JScrollPane();
+ scrollPane.getVerticalScrollBar().setUnitIncrement(16);
scrollPane.getViewport().add(taskList);
completedTaskCount = 0;
@@ -40,30 +41,34 @@ public class TaskHandler implements TaskListener {
return taskProgress;
}
- public void Sort() {
+ public void Sort(String sortingOption) {
List<Task> sortedList = new ArrayList<Task>();
for (int i = 0; i < taskList.getComponentCount(); i++) {
sortedList.add((Task)taskList.getComponent(i));
}
- //if or switch case for sorting method.
-
- /*Collections.sort(sortedList,
- (o1, o2) ->
- o1.isComplete()
- .compareTo(o2.isComplete()));
- */
-
- /*Collections.sort(sortedList,
- (o1, o2) ->
- o1.getText()
- .compareTo(o2.getText()));
- */
-
- Collections.sort(sortedList,
- (o1, o2) ->
- o1.getTaskType()
- .compareTo(o2.getTaskType()));
+ switch (sortingOption)
+ {
+ case "Alphabetical":
+ Collections.sort(sortedList,
+ (o1, o2) ->
+ o1.getText().toLowerCase()
+ .compareTo(o2.getText().toLowerCase()));
+ break;
+ case "Type":
+ Collections.sort(sortedList,
+ (o1, o2) ->
+ o1.getTaskType()
+ .compareTo(o2.getTaskType()));
+ break;
+ case "Completed":
+ Collections.sort(sortedList,
+ (o1, o2) ->
+ Boolean.compare(o1.isComplete(), o2.isComplete()));
+ break;
+ default:
+
+ }
taskList.removeAll();
for (int i = 0; i < sortedList.size(); i++) {