コード例 #1
0
ファイル: FastTreeNode.cs プロジェクト: ywscr/FastTree
 public virtual void AddNode(FastTreeNode node)
 {
     if (node.Parent != this)
     {
         childs.Add(node);
     }
     SetParent(this);
 }
コード例 #2
0
ファイル: FastTreeNode.cs プロジェクト: ywscr/FastTree
        protected virtual void SetParent(FastTreeNode value)
        {
            if (parent != null && parent != value)
            {
                parent.childs.Remove(this);
            }

            parent = value;
        }
コード例 #3
0
ファイル: FastTreeNode.cs プロジェクト: ywscr/FastTree
        public FastTreeNode GetParent(Predicate <object> tagCondition)
        {
            var parent = Parent;

            while (parent != null && !tagCondition(parent))
            {
                parent = parent.parent;
            }
            return(parent);
        }
コード例 #4
0
ファイル: FastTreeNode.cs プロジェクト: ywscr/FastTree
        public virtual void InsertNodeBefore(FastTreeNode existsNode, FastTreeNode node)
        {
            var i = childs.IndexOf(existsNode);

            if (i < 0)
            {
                i = 0;
            }

            InsertNode(i, node);
        }
コード例 #5
0
ファイル: FastTreeNode.cs プロジェクト: ywscr/FastTree
        public virtual void InsertNodeBefore(FastTreeNode existsNode, IEnumerable <FastTreeNode> nodes)
        {
            var i = childs.IndexOf(existsNode);

            if (i < 0)
            {
                i = 0;
            }

            InsertNode(i, nodes);
        }
コード例 #6
0
ファイル: FastTreeNode.cs プロジェクト: ywscr/FastTree
        public virtual void InsertNodeAfter(FastTreeNode existsNode, FastTreeNode node)
        {
            var i = childs.IndexOf(existsNode) + 1;

            InsertNode(i, node);
        }
コード例 #7
0
ファイル: FastTreeNode.cs プロジェクト: ywscr/FastTree
 public virtual void InsertNode(int index, FastTreeNode node)
 {
     childs.Insert(index, node);
     SetParent(this);
 }
コード例 #8
0
ファイル: FastTreeNode.cs プロジェクト: ywscr/FastTree
 public virtual void RemoveNode(FastTreeNode node)
 {
     childs.Remove(node);
     SetParent(null);
 }
コード例 #9
0
ファイル: FastTreeNode.cs プロジェクト: ywscr/FastTree
 public int IndexOf(FastTreeNode node)
 {
     return(childs.IndexOf(node));
 }
コード例 #10
0
ファイル: FastTreeNode.cs プロジェクト: ywscr/FastTree
        public virtual void InsertNodeAfter(FastTreeNode existsNode, IEnumerable <FastTreeNode> nodes)
        {
            var i = childs.IndexOf(existsNode) + 1;

            InsertNode(i, nodes);
        }