Esempio n. 1
0
        /// <summary>
        /// Removes provided item (<paramref name="item"/>) from the node.
        /// </summary>
        ///
        /// <param name="item">Item to be removed from the node</param>
        ///
        /// <seealso cref="INode{TItem, TNode}.Clear"/>
        protected internal void RemoveOwnItem(TItem item)
        {
            // remove the item from the node
            _items.Remove(item);
            // update its parent node
            item.ParentNode = null;

            if (IsEmpty())
            {
                // remove subnodes if subtree of this node is empty
                SubNodes.Clear();
            }
        }
Esempio n. 2
0
 public void Clear()
 {
     _items.Clear();
     SubNodes.Clear();
 }