Example #1
0
        private void AddChildTask(object obj)
        {
            FilterTaskText = "";
            FilterTree(obj);
            Task newTask = new Task();

            newTask.ParentTaskID = SelectedTaskNode.Task.ID;
            newTask.TaskName     = "Новая подзадача";
            newTask.CreateDate   = DateTime.Now;

            int newIndexNumber = TasksVM.DictionaryFull.Max(t => (int)t.Value.Task.IndexNumber) + 1;

            if (SelectedTaskNode.TreeNodes.Count > 0)
            {
                newIndexNumber = SelectedTaskNode.TreeNodes.Max(n => (int)n.Task.IndexNumber) + 1;
            }
            else
            {
                newIndexNumber = (int)SelectedTaskNode.Task.IndexNumber + 1;
            }
            newTask.IndexNumber = newIndexNumber;

            dialog = new View.AddDialogWindow(new TaskDialogViewModel(this, newTask, TaskCommandEnum.Add, SelectedTaskNode));
            dialog.Show();
        }
Example #2
0
        private void AddNearTask(object obj)
        {
            FilterTaskText = "";
            FilterTree(obj);
            Task newTask = new Task();

            if (SelectedTaskNode != null && SelectedTaskNode.Task.ID != SelectedTaskNode.Task.ParentTaskID)
            {
                newTask.ParentTaskID = SelectedTaskNode.Task.ParentTaskID;
            }
            newTask.TaskName   = "Новая задача";
            newTask.CreateDate = DateTime.Now;

            int newIndexNumber = TasksVM.DictionaryFull.Max(t => (int)t.Value.Task.IndexNumber) + 1;

            if (newTask.ParentTaskID != null)
            {
                var parentNode = TasksVM.DictionaryFull.FirstOrDefault(n => n.Value.Task.ID == newTask.ParentTaskID).Value;
                if (parentNode != null)
                {
                    newIndexNumber = parentNode.TreeNodes.Max(n => (int)n.Task.IndexNumber) + 1;
                }
            }
            newTask.IndexNumber = newIndexNumber;

            dialog = new View.AddDialogWindow(new TaskDialogViewModel(this, newTask, TaskCommandEnum.Add, SelectedTaskNode.ParentNode));
            dialog.Show();
        }