コード例 #1
0
 public void RemoveChild(ExampleTreeElement child)
 {
     if (Children.Contains(child))
     {
         Children.Remove(child);
         child.Parent = null;
     }
 }
コード例 #2
0
 private void AddChildrenRecursive(ExampleTreeElement model, TreeViewItem item)
 {
     foreach (var childModel in model.Children)
     {
         var childItem = CreateTreeViewItem(childModel);
         item.AddChild(childItem);
         AddChildrenRecursive(childModel, childItem);
     }
 }
コード例 #3
0
 public void AddChild(ExampleTreeElement child)
 {
     if (child.Parent != null)
     {
         child.Parent.RemoveChild(child);
     }
     Children.Add(child);
     child.Parent = this;
 }
コード例 #4
0
    //Treeの準備
    private void SetTreeData()
    {
        if (_treeViewState == null)
        {
            _treeViewState = new TreeViewState();
        }

        int currentId = 0;
        ExampleTreeElement root;

        if (BonesTree == null || BonesTree.Count == 0)
        {
            _treeView = new ExampleTreeView(_treeViewState);
            currentId = 0;
            root      = new ExampleTreeElement {
                id = ++currentId, Name = "NoData"
            };
        }
        else
        {
            _treeView = new ExampleTreeView(_treeViewState);
            currentId = 0;
            root      = new ExampleTreeElement {
                id = ++currentId, Name = BonesTree[0][0].transform.root.name
            };

            for (var i = 0; i < BonesTree.Count; i++)
            {
                var element = new ExampleTreeElement {
                    id = ++currentId, Name = BonesTree[i][0].name
                };
                for (var j = 1; j < BonesTree[i].Count; j++) //0はrootが入ってるので除外
                {
                    element.AddChild(new ExampleTreeElement {
                        id = ++currentId, Name = BonesTree[i][j].name
                    });
                }
                root.AddChild(element);
            }
        }

        _treeView.Setup(new List <ExampleTreeElement> {
            root
        }.ToArray());

        _searchField = new SearchField();
        _searchField.downOrUpArrowKeyPressed += _treeView.SetFocusAndEnsureSelectedItem;
    }
コード例 #5
0
 private TreeViewItem CreateTreeViewItem(ExampleTreeElement model)
 {
     return(new TreeViewItem {
         id = model.id, displayName = model.Name
     });
 }