public bool AddReference(ISVGReference reference) { if (_references == null) { _references = new List <ISVGReference> { reference }; if (onReferenceAdded != null) { onReferenceAdded(reference); } return(true); } else { if (!_references.Contains(reference)) { _references.Add(reference); if (onReferenceAdded != null) { onReferenceAdded(reference); } return(true); } else { return(false); } } }
public int CountReferences(ISVGReference reference) { int count = 0; if (_references != null) { for (int i = 0; i < _references.Count; i++) { if (_references[i] == reference) { count++; } } } return(count); }
public bool RemoveReference(ISVGReference reference) { if (_references != null) { bool removed = _references.Remove(reference); if (removed) { if (onReferenceRemoved != null) { onReferenceRemoved(reference); } } return(removed); } else { return(false); } }