diff --git a/src/main/java/controller/TaskManager.java b/src/main/java/controller/TaskManager.java index 1b7de5b2d..a23ef8c36 100644 --- a/src/main/java/controller/TaskManager.java +++ b/src/main/java/controller/TaskManager.java @@ -5,6 +5,7 @@ import task.Task; import task.Todo; +import java.util.ArrayList; import java.util.Scanner; public class TaskManager { @@ -15,7 +16,7 @@ public class TaskManager { private static int taskCount=0; - private static Task[] taskList = new Task[MAX_TASK_COUNT] ; + private static ArrayList taskList = new ArrayList<>(); private static Scanner sc = new Scanner(System.in); @@ -31,7 +32,7 @@ public static void main(String[] args) { listTask(); break; case "mark": - updateTask(Integer.parseInt(input.split(SPACE)[1])-1,true); + updateTask(Integer.parseInt(input.split(SPACE)[1])-1,true); //refractor get index break; case "unmark": updateTask(Integer.parseInt(input.split(SPACE)[1])-1,false); @@ -41,6 +42,9 @@ public static void main(String[] args) { case "event": addTaskByMessage(action, input); break; + case "delete": + deleteTask(Integer.parseInt(input.split(SPACE)[1])-1); + break; default: printErrorInputMessage(); } @@ -52,6 +56,17 @@ public static void main(String[] args) { bye(); } + private static void deleteTask(int idx){ + System.out.println(INDENT+"Noted. I've removed this task:"); + printTask(taskList.get(idx)); + taskList.remove(idx); + printTaskCount(); + } + + private static void updateTaskCount(){ + taskCount = taskList.size(); + } + private static void bye() { System.out.println(INDENT + "Bye. Hope to see you again soon!"); printLine(); @@ -59,8 +74,8 @@ private static void bye() { private static void listTask() { System.out.println(INDENT+"Here are the tasks in your list:"); - for(int i =0 ; i