/// <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)); }
/// <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); }
/// <summary> /// 获取指定节点的父节点是自身,并且指定节点并非子节点的父节点的子节点 /// </summary> /// <param name="node"></param> /// <returns></returns> public NodeModifier[] GetNextNodes(NodeModifier node) { return(_nextNodeList.FindAll((n) => !node.IsParent(n) && n.Parent == node).ToArray()); }
/// <summary> /// 获取指定节点的父节点是自身,并且指定节点并非子节点的父节点的子节点 /// </summary> /// <param name="node"></param> /// <returns></returns> public NodeModifier[] GetNextNodes(NodeModifier node) { return _nextNodeList.FindAll((n) => !node.IsParent(n) && n.Parent == node).ToArray(); }
/// <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; }