示例#1
0
 /// <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);
     }
 }
示例#2
0
        /// <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;
        }
示例#3
0
 /// <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;
 }
示例#4
0
 /// <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));
 }