private ITaskGroup SetData(IDataSourceConfiguration configuration, ITaskGroup tasks) { IDataProividerResultTasksBase result = (IDataProividerResultTasksBase)dataProvider.SetData(configuration, tasks); if (!result.sucess) { notificationService.Error(notificationConstants.FileWritingTaks("Tasks.json", result.error)); } return(result.data); }
public static void AddGroup(ITaskGroup group) { lock (_manager_lock) { if (GetTaskGroup(group.GroupId) == null) { TaskGroups.Add(group); } } Debug.WriteLine(group.GroupName, "Add Group"); }
private IDataProividerResultTasksBase AddTaskToTasks(CLTask data, ITaskGroup tasks) { IDataProividerResultTasksBase result = new DataProviderResultTasks(); ITaskGroup tasksCoppy = tasks.Clone(); tasksCoppy.AddTask(data); result.data = tasksCoppy; result.sucess = true; return(result); }
public void Add(MapNode node) { DateTime dateTime = node.GetDueDate(); ControlGroup ctrlGroup = GetApplicableGroup(dateTime); if (ctrlGroup != null) { ITaskGroup taskGroup = (ITaskGroup)ctrlGroup.Tag; TaskView tv = new TaskView(node, taskGroup.ShortDueDateString(dateTime), OnTaskViewEvent); AddToGroup(ctrlGroup, tv); } }
public void Add(TaskView tv) { ControlGroup ctrlGroup = GetApplicableGroup(tv.DueDate); if (ctrlGroup != null) { ITaskGroup taskGroup = (ITaskGroup)ctrlGroup.Tag; tv.TaskDueOnText = taskGroup.ShortDueDateString(tv.DueDate); tv.RefreshTaskPath(); tv.TaskTitle = tv.MapNode.Text; AddToGroup(ctrlGroup, tv); } }
public static void MoveTask(ITaskGroup fromGroup, ITaskGroup toGroup, DailyTask dailyTask) { lock (_manager_lock) { if (TaskGroups.SingleOrDefault(p => p.GroupId.Equals(fromGroup.GroupId)) != null && TaskGroups.SingleOrDefault(p => p.GroupId.Equals(toGroup.GroupId)) != null) { fromGroup.DailyTasks.Remove(dailyTask); toGroup.DailyTasks.Add(dailyTask); dailyTask.GroupId = toGroup.GroupId; } } }
public static void AddTask(ITaskGroup group, DailyTask task) { lock (_manager_lock) { if (TaskGroups.SingleOrDefault(p => p.GroupId.Equals(group.GroupId)) == null) { AddGroup(group); } group.DailyTasks.Add(task); task.GroupId = group.GroupId; } Debug.WriteLine(task.Title, "Add Task"); }
public ControlGroup GetApplicableGroup(DateTime dueDate) { for (int i = 0; i < this.ControlGroups.Count; i++) { ControlGroup ctrlGroup = this.ControlGroups[i]; ITaskGroup taskGroup = (ITaskGroup)ctrlGroup.Tag; if (taskGroup.CanContain(dueDate)) { return(ctrlGroup); } } // not found return(null); }
private IDataProividerResultTasksBase SetTaskStatusInTasks(CLTask data, ITaskGroup tasks) { IDataProividerResultTasksBase result = new DataProviderResultTasks(); ITaskGroup tasksCoppy = tasks.Clone(); try { tasksCoppy.SetTask(data); result.data = tasksCoppy; result.sucess = true; } catch (Exception error) { result.sucess = false; result.error = error.Message; } return(result); }
public static bool InsertTask(ITaskGroup group, DailyTask task) { lock (_manager_lock) { if (!task.Title.IsNullOrWhiteSpace() || (task.TaskItems != null && task.TaskItems.Count > 0)) { if (TaskGroups.SingleOrDefault(p => p.GroupId.Equals(group.GroupId)) == null) { AddGroup(group); } group.DailyTasks.Insert(0, task); task.GroupId = group.GroupId; OnTaskListChanged(task, TaskChangedType.Insert); return(true); } return(false); } }
/// <summary> /// returns null if TaskView is not found /// </summary> /// <param name="node"></param> /// <param name="dueDate">DueDate is available from MapNode (first parameter) also. But it is important to pass it separately as TaskList might be out of order, in such a case old value can be provided in dueDate parameter</param> /// <returns>returns null if not found</returns> public TaskView FindTaskView(MapNode node, DateTime dueDate) { if (!todayDate.Equals(DateTime.Today)) { RefreshTaskList(); } for (int i = 0; i < this.ControlGroups.Count; i++) { ControlGroup ctrlGroup = this.ControlGroups[i]; ITaskGroup taskGroup = (ITaskGroup)ctrlGroup.Tag; if (taskGroup.CanContain(dueDate)) { return(FindTaskViewInGroup(ctrlGroup, node, dueDate)); } } return(null); }
public void Merge(ITaskGroup <TaskResultT, ITaskItem <TaskResultT> > parentTaskGroup) { DAG.Merge(parentTaskGroup.DAG); }
public IDataProviderResultBase SetData(IDataSourceConfiguration configuration, ITaskGroup tasks) { IDataProividerResultTasksBase result = new DataProviderResultTasks(); if (!configuration.IsValid()) { result.sucess = false; return(result); } try { if (configuration.AddTask) { result = AddTaskToTasks(configuration.Task, tasks); } if (configuration.DeliteTask) { result = RemoveTaskFromTasks(configuration.Task, tasks); } if (configuration.SetTask) { result = SetTaskStatusInTasks(configuration.Task, tasks); } result = WriteTasksToFile(configuration, result.data); result.sucess = true; } catch (Exception error) { result.sucess = false; result.error = error.Message; return(result); } return(result); }
private IDataProividerResultTasksBase WriteTasksToFile(IDataSourceConfiguration configuration, ITaskGroup tasks) { IDataProividerResultTasksBase result = new DataProviderResultTasks(); IsConfigurationValid(configuration); try { using (StreamWriter r = new StreamWriter(configuration.File.File)) { string data = JsonConvert.SerializeObject(tasks); r.Write(data); } result.data = tasks; } catch (Exception error) { result.sucess = false; result.error = error.Message; } return(result); }