Esempio n. 1
0
 public static void AddListener(MESSAGE_EVENTS eventType, Action <T> handler)
 {
     if (!Messenger <T> .eventTable.ContainsKey(eventType))
     {
         Messenger <T> .eventTable.Add(eventType, null);
     }
     Messenger <T> .eventTable[eventType] = (Action <T>)Delegate.Combine(Messenger <T> .eventTable[eventType], handler);
 }
Esempio n. 2
0
    public static void Broadcast(MESSAGE_EVENTS eventType, T arg1)
    {
        Action <T> @delegate;

        if (Messenger <T> .eventTable.TryGetValue(eventType, out @delegate) && @delegate != null)
        {
            @delegate(arg1);
        }
    }
Esempio n. 3
0
 public static void RemoveListener(MESSAGE_EVENTS eventType, Action <T> handler)
 {
     Messenger <T> .eventTable[eventType] = (Action <T>)Delegate.Remove(Messenger <T> .eventTable[eventType], handler);
 }