Exemplo n.º 1
0
 private void Tree_TreeStructureChanged(MapNode node, TreeStructureChangedEventArgs e)
 {
     if (e.ChangeType == TreeStructureChange.Deleted || e.ChangeType == TreeStructureChange.Detached)
     {
         node.ForEach(n =>
         {
             if (n.IsTaskPending())
             {
                 Remove(n);
                 var evtTask        = new PendingTaskEventArgs();
                 evtTask.TaskChange = PendingTaskChange.TaskRemoved;
                 if (n.DueDateExists())
                 {
                     evtTask.OldDueDate = n.GetDueDate();
                 }
                 evtTask.OldTaskStatus = n.GetTaskStatus();
                 TaskChanged(n, evtTask);
             }
         });
     }
     else if (e.ChangeType == TreeStructureChange.Attached)
     {
         node.ForEach((n) =>
         {
             if (n.IsTaskPending())
             {
                 Add(n);
                 var evtTask        = new PendingTaskEventArgs();
                 evtTask.TaskChange = PendingTaskChange.TaskAdded;
                 if (n.DueDateExists())
                 {
                     evtTask.OldDueDate = n.GetDueDate();
                 }
                 evtTask.OldTaskStatus = n.GetTaskStatus();
                 TaskChanged(n, evtTask);
             }
         });
     }
 }
Exemplo n.º 2
0
 public PendingTaskList() : base(n => n.GetDueDate())
 {
     pendingTaskArgs = new PendingTaskEventArgs();
 }