Exemplo n.º 1
0
        public static Task TaskSelector()
        {
            ConsoleMenu       taskMenu = new ConsoleMenu("Task Menu");
            ConsoleMenuOption taskOption;

            Task task = null;

            if (ListOfTasks.Count <= 0)
            {
                Console.WriteLine("No tasks found... returning to main menu.");
                Console.WriteLine(); //Pretty lines
                return(null);
            }

            //Add tasks to the menu
            for (int i = 0; i < ListOfTasks.Count; i++)
            {
                Task currentTask = ListOfTasks[i];

                taskOption = new ConsoleMenuOption(currentTask.Title, currentTask.Description, i.ToString() /*Selector*/, () => task = currentTask);
                taskMenu.Options.Add(taskOption);
            }

            ConsoleMenuOption selectedTaskFromTaskMenu = taskMenu.InputFromMenu(false);

            selectedTaskFromTaskMenu.Outcome.Invoke();
            return(task);
        }
Exemplo n.º 2
0
        public static void RemoveAllTask()
        {
            ListOfTasks.Clear();
            Console.WriteLine("All tasks have been removed.");

            ConsoleMenuOption definedOption = _mainMenu.InputFromMenu(false);

            definedOption.Outcome.Invoke();
        }
Exemplo n.º 3
0
        public static void ListAllTasks()
        {
            for (int i = 0; i < ListOfTasks.Count; i++)
            {
                Task   task     = ListOfTasks[i];
                string taskInfo = task.DisplayInfo();
                Console.WriteLine(taskInfo);
            }

            ConsoleMenuOption definedOption = _mainMenu.InputFromMenu(false);

            definedOption.Outcome.Invoke();
        }
Exemplo n.º 4
0
        //<Task1, Task2, Task3>

        public static void RemoveTask()
        {
            Task selectedTask = TaskSelector();

            if (selectedTask != null)
            {
                ListOfTasks.Remove(selectedTask);
            }

            ConsoleMenuOption definedOption = _mainMenu.InputFromMenu(false);

            definedOption.Outcome.Invoke();
        }
Exemplo n.º 5
0
        public static void EditTask()
        {
            Task selectedTask = TaskSelector();

            if (selectedTask != null)
            {
                (string title, string timeDuration, string priority, string description)taskTuple = TaskInput();

                selectedTask.Title        = taskTuple.title;
                selectedTask.TimeDuration = int.Parse(taskTuple.timeDuration);
                selectedTask.Priority     = int.Parse(taskTuple.priority);
                selectedTask.Description  = taskTuple.description;
            }

            ConsoleMenuOption definedOption = _mainMenu.InputFromMenu(false);

            definedOption.Outcome.Invoke();
        }
Exemplo n.º 6
0
        //Properties
        /*Non in this program*/

        //Contructors
        static Program()
        {
            _mainMenu       = new ConsoleMenu("Main Menu");
            _selectedOption = new ConsoleMenuOption();
            _taskList       = new TaskList("List of tasks");

            ConsoleMenuOption[] _baseOptions
                =
                {
                new ConsoleMenuOption("Add Task",          "NN" /*Not Needed*/, "1", AddTask),
                new ConsoleMenuOption("Edit Task",         "NN" /*Not Needed*/, "2", EditTask),
                new ConsoleMenuOption("Remove Task",       "NN" /*Not Needed*/, "3", RemoveTasks),
                new ConsoleMenuOption("Remove All Tasks",  "NN" /*Not Needed*/, "4", RemoveAllTasks),
                new ConsoleMenuOption("Display All Tasks", "NN" /*Not Needed*/, "5", DisplayTasks),
                new ConsoleMenuOption("Exit",              "Exits program",     "0", () => Environment.Exit(0))
                };

            _mainMenu.Options.AddRange(_baseOptions);
        }
Exemplo n.º 7
0
        private Task TaskSelector()
        {
            ConsoleMenu       taskMenu = new ConsoleMenu("Task Menu");
            ConsoleMenuOption taskOption;

            Task task = null;

            //Add tasks to the menu
            for (int i = 0; i < this.Tasks.Count; i++)
            {
                Task currentTask = this.Tasks[i];

                taskOption = new ConsoleMenuOption(currentTask.Title, null, i.ToString() /*Selector*/, () => task = currentTask);
                taskMenu.Options.Add(taskOption);
            }

            ConsoleMenuOption selectedTaskFromTaskMenu = taskMenu.InputFromMenu(false);

            selectedTaskFromTaskMenu.Outcome.Invoke();
            return(task);
        }
Exemplo n.º 8
0
        public static void AddTask()
        {
            Task task;

            (string title, string timeDuration, string priority, string description) = TaskInput();

            if (description == null)
            {
                task = new Task(title, int.Parse(timeDuration), int.Parse(priority));
            }
            else
            {
                task = new Task(title, int.Parse(timeDuration), int.Parse(priority), description);
            }
            ListOfTasks.Add(task);

            //Go back to menu
            ConsoleMenuOption definedOption = _mainMenu.InputFromMenu(false);

            definedOption.Outcome.Invoke();
        }
Exemplo n.º 9
0
        static void Main(string[] args)
        {
            #region ConsoleMenuOptionCreation
            ConsoleMenuOption[] actionOptions
                =
                {
                new ConsoleMenuOption("Add Defined Task",           "Invokes method AddTask",               "1", AddTask),
                new ConsoleMenuOption("Edit Selected Task",         "Invokes to method EditTask",           "2", EditTask),
                new ConsoleMenuOption("Remove Selected Task",       "Invokes to method RemoveTask",         "3", RemoveTask),
                new ConsoleMenuOption("Remove All Tasks From List", "Invokes to method RemoveAllTask",      "4", RemoveAllTask),
                new ConsoleMenuOption("List All Tasks",             "Invokes to method listAllTaskOptions", "5", ListAllTasks),
                new ConsoleMenuOption("Exit Program",               "Exits program",                        "6", () => Environment.Exit(0))
                };
            #endregion

            _mainMenu.Options.AddRange(actionOptions);

            ConsoleMenuOption selectedOption = _mainMenu.InputFromMenu(false);
            Console.WriteLine(); //Makes Things Pretty
            Console.WriteLine(selectedOption.Title);
            selectedOption.Outcome.Invoke();
        }
Exemplo n.º 10
0
 static void ReturnToMenu()
 {
     Console.WriteLine(); //Makes things pretty
     _selectedOption = _mainMenu.InputFromMenu(false);
     _selectedOption.Outcome.Invoke();
 }
Exemplo n.º 11
0
 //Methods
 static void Main(string[] args)
 {
     _selectedOption = _mainMenu.InputFromMenu(false);
     _selectedOption.Outcome.Invoke();
 }
Exemplo n.º 12
0
        public void ValidateInput(ConsoleMenuOption selectedOption)
        {
            bool errorDedected = true; //Used so GetInput() isn't invoked twice in ValidateInput()

            timesThroughLoop = 0;

            while (errorDedected)
            {
                if (errorDedected && timesThroughLoop > 0)
                {
                    Console.WriteLine("Previous input was not valid, please try again.");
                    Console.WriteLine(); //Makes things look pretty
                }

                //Gets input
                Console.WriteLine("Enter the first number: ");
                firstInput = Console.ReadLine();
                Console.WriteLine("Enter the second number: ");
                secondInput = Console.ReadLine();

                //Validates input and Invoked method from Methods above.
                switch (selectedOption.Selector)
                {
                case "1":
                    if (int.TryParse(firstInput, out firstValidInput) && int.TryParse(secondInput, out secondValidInput))
                    {
                        Add();
                        errorDedected = false;
                    }
                    break;

                case "2":
                    if (decimal.TryParse(firstInput, out firstDecValidInput) && decimal.TryParse(secondInput, out secondDecValidInput))
                    {
                        Divide();
                        errorDedected = false;
                    }
                    break;

                case "3":
                    if (int.TryParse(firstInput, out firstValidInput) && int.TryParse(secondInput, out secondValidInput))
                    {
                        Multiply();
                        errorDedected = false;
                    }
                    break;

                case "4":
                    if (int.TryParse(firstInput, out firstValidInput) && int.TryParse(secondInput, out secondValidInput))
                    {
                        Minus();
                        errorDedected = false;
                    }
                    break;

                default:
                    errorDedected = true;
                    break;
                }
                timesThroughLoop++;
            }
        }
Exemplo n.º 13
0
 static void OperateConsoleMenu()
 {
     _selectedOption = _mainMenu.InputFromMenu(false);
     _selectedOption.Outcome.Invoke();
 }
Exemplo n.º 14
0
 public void AddExitOption(ConsoleMenuOption option)
 {
     AddOption(new ConsoleMenuOption(option.OptionCode, option.OptionDescription, () => infinity = false));
 }
Exemplo n.º 15
0
 public void AddOption(ConsoleMenuOption option)
 {
     options.Add(option.OptionCode, option);
 }