/// <summary> /// Adds the item. /// </summary> /// <param name="taskDescription">The task description.</param> /// <param name="parent">The parent.</param> public void AddDescription(TaskDescription taskDescription, TaskDescription parent) { TaskDescriptionEventArgs tdea = new TaskDescriptionEventArgs(taskDescription, parent); OnAddingItemEvent(new TaskDescriptionEventArgs(taskDescription, parent)); if (tdea.Cancel == false) { parent.Children.Add(taskDescription); } OnTaskDescriptionsChangedEvent(EventArgs.Empty); }
/// <summary> /// Removes the item. /// </summary> /// <param name="description">The description.</param> public void RemoveDescription(TaskDescription description) { TaskDescription parent = null; foreach (TaskDescription child in TaskDescriptions) { parent = FindParentInHierarchy(child, description); if (parent != null) { break; } } if (parent != null) { TaskDescriptionEventArgs tdea = new TaskDescriptionEventArgs(description, parent); OnRemovingItemEvent(tdea); if (tdea.Cancel == false) { parent.Children.Remove(description); ProviderRemoveDescription(description); } OnTaskDescriptionsChangedEvent(EventArgs.Empty); } }
/// <summary> /// /// </summary> /// <param name="e"></param> private void OnRemovingItemEvent(TaskDescriptionEventArgs e) { EventHandler<TaskDescriptionEventArgs> handler = RemovingItem; if (handler != null) { handler(this, e); } }
/// <summary> /// Removes the item. /// </summary> /// <param name="description">The description.</param> public void RemoveDescription(TaskDescription description) { TaskDescription parent = null; foreach(TaskDescription child in TaskDescriptions) { parent = FindParentInHierarchy(child, description); if (parent != null) { break; } } if (parent != null) { TaskDescriptionEventArgs tdea = new TaskDescriptionEventArgs(description, parent); OnRemovingItemEvent(tdea); if (tdea.Cancel == false) { parent.Children.Remove(description); ProviderRemoveDescription(description); } OnTaskDescriptionsChangedEvent(EventArgs.Empty); } }
/// <summary> /// /// </summary> /// <param name="e"></param> private void OnRemovingItemEvent(TaskDescriptionEventArgs e) { RemovingItem?.Invoke(this, e); }