private void SourceRemoved(object sender, Topology.EventArgsSource e) { bool removed = false; lock (this) { if (iSourceList.Remove(e.Source as Source)) { removed = true; } } if (removed && EventSourceRemoved != null) { EventSourceRemoved(this, new EventArgsSource(e.Source as Source)); } }
private void SourceAdded(object sender, Topology.EventArgsSource e) { bool added = false; lock (this) { if (iPredicate(e.Source as Source)) { iSourceList.Add(e.Source as Source); added = true; } } if (added && EventSourceAdded != null) { EventSourceAdded(this, new EventArgsSource(e.Source as Source)); } }