/** * Método de adição de nodos filhos ao artefato. * @param Nodo a ser adicionado como filho. * @return Retorna status da operção. */ public bool AddChildNode(gBConcrete child_node) { if (this != child_node) { //Adiciona nodo na lista de nodos filhos this.child_nodes.Add(child_node); //Notifica gerenciador que estrutura de nodos fora alterada gBManager.Instance.NodeHierarchyChanged(); child_node.parent_node = this; child_node.OnParentNodeSet(this); this.OnChildNodeAdd(child_node); return true; } else { return false; } }
/** * Método de remoção de nodo filho do artefato. * @param Nodo a ser removido da lista de nodos filhos. * @return Retorna o status da operação. */ public bool RemoveChildNode(gBConcrete child_node) { if (this.child_nodes.Remove(child_node)) { //Notifica gerenciador que estrutura de nodos fora alterada gBManager.Instance.NodeHierarchyChanged(); child_node.parent_node = null; child_node.OnParentNodeSet(null); this.OnChildNodeRemove(child_node); return true; } return false; }