Example #1
0
    private EventListener _AddEventListener(string name, Delegate handler, string extendInfo = null)
    {
        var lss = m_listeners.GetDefault(name);
        var ls  = lss.Find(l => l.EqualsTo(handler));

        if (ls)
        {
            return(ls);
        }

        ls = EventListener.Create(name, handler, this, extendInfo);
        lss.Add(ls);

        m_states.GetDefault(name);    // we always add default event queue state when add a new event listener

        return(ls);
    }
Example #2
0
    private static EventListener _AddEventListener(string name, Delegate handler, string extendInfo = null)
    {
        var lss = m_globalListeners.GetDefault(name);
        var ls  = lss.Find(l => l.EqualsTo(handler));

        if (ls)
        {
            return(ls);
        }

        ls = EventListener.Create(name, handler, null, extendInfo);
        lss.Add(ls);

        m_linkedStates.GetDefault(name);     // we always add global linkedState queue when add a new event listener
        m_removeListeners.GetDefault(name);  // and also remove queue...

        ++listenersCount;

        return(ls);
    }