/// <summary> /// Adds a listener to be signaled when the event is raised. /// </summary> /// <param name="listener">Listener to add.</param> /// <returns>True if successfully registered; false otherwise.</returns> public bool RegisterListener(EventObjectListener listener) { // If this ever bogs down, begin using a HashSet in addition // to a list. However, this could get quite memory heavy if we // did it all the time. if (!listeners.Contains(listener)) { listeners.Add(listener); return(true); } else { return(false); } }
/// <summary> /// Adds a listener to be signaled when the event is raised. /// </summary> /// <param name="listener">Listener to add.</param> /// <returns>True if successfully registered; false otherwise.</returns> public void RegisterListener(EventObjectListener listener) { // If this ever bogs down, begin using a HashSet in addition // to a list. However, this could get quite memory heavy if we // did it all the time. /* * if(!listeners.Contains(listener)) { * listeners.Add(listener); * return true; * } * else { * return false; * }*/ listeners += listener.OnRaiseEvent; }
/// <summary> /// Unregisters the listener. /// </summary> /// <param name="listener">Listener to unregister.</param> /// <returns>True if successfully unregistered; false otherwise.</returns> public void UnregisterListener(EventObjectListener listener) { //return listeners.Remove(listener); listeners -= listener.OnRaiseEvent; }
/// <summary> /// Unregisters the listener. /// </summary> /// <param name="listener">Listener to unregister.</param> /// <returns>True if successfully unregistered; false otherwise.</returns> public bool UnregisterListener(EventObjectListener listener) { return(listeners.Remove(listener)); }