private void Tree_AttributeChanged(MapNode node, AttributeChangeEventArgs e) { //// Task List Change // task completed if (e.ChangeType == AttributeChange.Added && e.AttributeSpec.IsCompletionDate()) { Add(node); TaskChanged(node, GetEventArgs(node, CompletedTaskChange.TaskCompleted, e)); } // task removed else if (e.ChangeType == AttributeChange.Removed && e.AttributeSpec.IsCompletionDate()) { if (Remove(node)) { TaskChanged(node, GetEventArgs(node, CompletedTaskChange.TaskRemoved, e)); } } // completion date updated else if (e.ChangeType == AttributeChange.ValueUpdated && e.AttributeSpec.IsCompletionDate()) { Remove(node); Add(node); TaskChanged(node, GetEventArgs(node, CompletedTaskChange.CompletionDateUpdated, e)); } //// Task Property Change (which doesn't affect list) else if (CompletedTaskPropertyChanged != null && e.AttributeSpec.IsStartDate() && node.IsTaskComplete()) { var args = new CompletedTaskPropertyEventArgs() { PropertyChanged = CompletedTaskProperty.StartDate }; if (!string.IsNullOrEmpty(e.oldValue)) { args.OldValue = DateHelper.ToDateTime(e.oldValue); } CompletedTaskPropertyChanged(node, args); } }
private void Tree_AttributeChanged(MapNode node, AttributeChangeEventArgs e) { //// Task List Change // task completed if (e.ChangeType == AttributeChange.Added && e.AttributeSpec.IsCompletionDate()) { Add(node); TaskChanged(node, GetEventArgs(node, CompletedTaskChange.TaskCompleted, e)); } // task removed else if (e.ChangeType == AttributeChange.Removed && e.AttributeSpec.IsCompletionDate()) { if (Remove(node)) { TaskChanged(node, GetEventArgs(node, CompletedTaskChange.TaskRemoved, e)); } } // completion date updated else if(e.ChangeType == AttributeChange.ValueUpdated && e.AttributeSpec.IsCompletionDate()) { Remove(node); Add(node); TaskChanged(node, GetEventArgs(node, CompletedTaskChange.CompletionDateUpdated, e)); } //// Task Property Change (which doesn't affect list) else if(CompletedTaskPropertyChanged != null && e.AttributeSpec.IsStartDate() && node.IsTaskComplete()) { var args = new CompletedTaskPropertyEventArgs(){ PropertyChanged = CompletedTaskProperty.StartDate }; if (!string.IsNullOrEmpty(e.oldValue)) args.OldValue = DateHelper.ToDateTime(e.oldValue); CompletedTaskPropertyChanged(node, args); } }