void _frames_Removed(object sender, TrackedBindingListEventArgs<DocumentFrame> e) { e.Item.Document = null; }
void _items_Removed(object sender, TrackedBindingListEventArgs<ListingItem> e) { e.Item.Parent = null; }
void _frames_Added(object sender, TrackedBindingListEventArgs<DocumentFrame> e) { if (e.Item.Document != null) throw new InvalidOperationException(); e.Item.Document = this; }
void _declarations_Removed(object sender, TrackedBindingListEventArgs<Declaration> e) { e.Item.Parent = null; }
void _items_Added(object sender, TrackedBindingListEventArgs<ListingItem> e) { // This actually violates the (implicit) invariant that a parent of a node has that node as a child, // and not just as a descendant: e.Item.Parent = this.Parent; }
void _declarations_Added(object sender, TrackedBindingListEventArgs<Declaration> e) { e.Item.Parent = this; }
void _blocks_Removed(object sender, TrackedBindingListEventArgs<Block> e) { e.Item.Parent = null; }
void _blocks_Added(object sender, TrackedBindingListEventArgs<Block> e) { e.Item.Parent = this; }
void _members_Removed(object sender, TrackedBindingListEventArgs<EnumerationMember> e) { e.Item.Parent = null; }
void _members_Added(object sender, TrackedBindingListEventArgs<EnumerationMember> e) { e.Item.Parent = this; }