Exemple #1
0
 /// <summary>
 /// 是否属于自身的父节点
 /// </summary>
 /// <param name="node">可能是父节点的节点</param>
 /// <returns></returns>
 public bool IsParent(NodeModifier node)
 {
     if (_lastNode == null)
     {
         return(false);
     }
     if (_lastNode == node)
     {
         return(true);
     }
     return(_lastNode.IsParent(node));
 }
Exemple #2
0
 /// <summary>
 /// 是否可以将指定节点设置为自身的父节点
 /// </summary>
 /// <param name="node"></param>
 /// <returns></returns>
 public bool CanSetParent(NodeModifier node)
 {
     if (node == this)
     {
         return(false);
     }
     if (node.IsChild(this, false))
     {
         return(false);
     }
     if (node.IsParent(this))
     {
         return(false);
     }
     return(true);
 }
Exemple #3
0
 /// <summary>
 /// 获取指定节点的父节点是自身,并且指定节点并非子节点的父节点的子节点
 /// </summary>
 /// <param name="node"></param>
 /// <returns></returns>
 public NodeModifier[] GetNextNodes(NodeModifier node)
 {
     return(_nextNodeList.FindAll((n) => !node.IsParent(n) && n.Parent == node).ToArray());
 }