/// <summary>
        /// Create a new task
        /// </summary>
        public void CreateNewTask()
        {
            TaskToDo newTask = null;

            using (FormTaskEditor dialog = new FormTaskEditor("- New task"))
            {
                if (dialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                {
                    newTask = dialog.Task;
                }
            }
            if (newTask != null)
            {
                //save the new task
                _tasks.AddTask(newTask);
                SaveTasksToFile();
                //select this new task
                _selectedTask    = newTask;
                _selectedSubtask = newTask;
                //Refresh GUI
                RefreshContext refresher = new RefreshContext();
                refresher.SetAll();
                RefreshGui(refresher);
            }
        }
        public override void Execute(TaskCollection tasks)
        {
            var title       = ConsoleUtilities.ReadString("Name your task: ");
            var description = ConsoleUtilities.ReadString("Describe your task: ");

            Console.Write("Specify tags (separated by comma): ");

            var tags = Console.ReadLine()
                       .Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries)
                       .Select(tag => tag.Trim());

            if (!tags.Any())
            {
                Console.WriteLine($"{Environment.NewLine}You need to speficy a tag. TRY AGAIN FOOL");

                this.Execute(tasks);

                return;
            }

            tasks.AddTask(title, description, tags.ToList());

            tasks.ActiveTask = tasks.Last();

            Program.Status = $"Task Added! Active task is now {tasks.ActiveTask.Title}";
        }
Example #3
0
        private TaskCollection InitTaskCollection(ICommandRunner runner)
        {
            var taskCollection = new TaskCollection();
            taskCollection.ProgressUpdated += UpdateProgress;

            runner.TaskStarted += (sender, e) => taskCollection.AddTask(e.Task);

            return taskCollection;
        }