void getChildren(TaskContainer parentContainer) { foreach (TimelinerTask child in parentContainer.Task.Children) { Collection<int> index = timeliner.TaskCreateIndexPath(child); TaskContainer childContainer = new TaskContainer(child.DisplayName, index); this.tasks.Add(childContainer); parentContainer.Children.Add(childContainer); getChildren(childContainer); } }
/// <summary> /// Рекурсивный обход дерева тасков и сбор всех тасков в один массив. /// </summary> void getChildren(TimelinerTask rootTask) { foreach (TimelinerTask child in rootTask.Children) { Collection<int> index = timeliner.TaskCreateIndexPath(child); TaskContainer Task = new TaskContainer(child.DisplayName, index); this.tasks.Add(Task); getChildren(Task); } }
public void WriteTaskToTimeliner(TaskContainer taskC, string setName = null) { WriteTaskToTimeliner(taskC.Index, setName); }
void FillTreeViewWithChildrenTasks(TaskContainer tc, TreeNode node, bool highlight) { foreach (TaskContainer childContainer in tc.Children) { TreeNode childNode = new TreeNode(childContainer.TaskName); Core.Self.CalculateTaskSummaryProgress(childContainer.Task); childNode.Tag = childContainer.Index; node.Nodes.Add(childNode); node.ExpandAll(); if (highlight) setNodeFontAndColor(childNode, childContainer.Task); FillTreeViewWithChildrenTasks(childContainer, childNode, highlight); } }
/// <summary> /// Убирает селекшны у конкретного таска. /// </summary> public void ClearSelection(TaskContainer taskC) { WriteTaskToTimeliner(taskC); }