public bool UnregisterAll(CNotificationDelegate del)
        {
            bool removed = false;

            foreach (KeyValuePair <string, CNotificationDelegateList> e in m_registerMap)
            {
                CNotificationDelegateList list = e.Value;
                removed |= list.Remove(del);
            }
            return(removed);
        }
        public bool Unregister(string name, CNotificationDelegate del)
        {
            CNotificationDelegateList list = FindList(name);

            if (list != null)
            {
                return(list.Remove(del));
            }

            return(false);
        }
        public void Register(string name, CNotificationDelegate del)
        {
            if (name == null)
            {
                throw new ArgumentNullException("name");
            }

            if (del == null)
            {
                throw new NullReferenceException("del");
            }

            CNotificationDelegateList list = FindList(name);

            if (list == null)
            {
                list = new CNotificationDelegateList();
                m_registerMap [name] = list;
            }

            list.Add(del);
        }
 public static void UnregisterNotifications(CNotificationDelegate del)
 {
     s_sharedInstance.UnregisterAll(del);
 }
 public static void UnregisterNotification(string name, CNotificationDelegate del)
 {
     s_sharedInstance.Unregister(name, del);
 }
 public CNotificationInfo(string name, CNotificationDelegate del)
 {
     this.name = name;
     this.del  = del;
 }