Пример #1
0
 public ListenerInfo(DlgtMouseEventListener listener, object objListener = null)
 {
     this.listener    = listener;
     this.objListener = objListener;
 }
Пример #2
0
 public void RemoveMouseEventListener(EMouseEvent eventtype, EMouseKey mousekey, DlgtMouseEventListener listener, object objListener = null)
 {
     RemoveMouseEventListener(null, eventtype, mousekey, listener, objListener);
 }
Пример #3
0
 public void AddMouseEventListener(EMouseEvent eventtype, EMouseKey mousekey, DlgtMouseEventListener newListener, object objListener = null, bool insertFirst = false)
 {
     AddMouseEventListener(null, eventtype, mousekey, newListener, objListener, insertFirst);
 }
Пример #4
0
    public void RemoveMouseEventListener(GameObject objTarget, EMouseEvent eventtype, EMouseKey mousekey, DlgtMouseEventListener listener, object objListener = null)
    {
        List <ListenerInfo> listListeners = null;
        MouseEventKey       eventkey      = new MouseEventKey(objTarget, eventtype, mousekey);

        m_dicMouseEvents.TryGetValue(eventkey, out listListeners);
        if (listListeners != null)
        {
            for (int i = 0; i < listListeners.Count; i++)
            {
                if (listListeners[i].listener == listener && listListeners[i].objListener == objListener)
                {
                    listListeners.RemoveAt(i);
                    break;
                }
            }
            if (listListeners.Count == 0)
            {
                m_dicMouseEvents.Remove(eventkey);
            }
        }
    }
Пример #5
0
    /// <summary>
    /// 添加鼠标监听
    /// </summary>
    /// <param name="objTarget">监听对象</param>
    /// <param name="eventtype">监听事件类型</param>
    /// <param name="mousekey">鼠标键</param>
    /// <param name="newListener">监听者接口</param>
    public void AddMouseEventListener(GameObject objTarget, EMouseEvent eventtype, EMouseKey mousekey, DlgtMouseEventListener newListener, object objListener = null, bool insertFirst = false)
    {
        List <ListenerInfo> listListeners = null;
        MouseEventKey       eventkey      = new MouseEventKey(objTarget, eventtype, mousekey);

        m_dicMouseEvents.TryGetValue(eventkey, out listListeners);
        if (listListeners == null)
        {
            listListeners = new List <ListenerInfo>();
            ListenerInfo listenerinfo = new ListenerInfo(newListener, objListener);
            listListeners.Add(listenerinfo);
            m_dicMouseEvents[eventkey] = listListeners;
        }
        else
        {
            bool bFound = false;
            for (int i = 0; i < listListeners.Count; i++)
            {
                if (listListeners[i].listener == newListener && listListeners[i].objListener == objListener)
                {
                    break;
                }
            }

            if (!bFound)
            {
                ListenerInfo listenerinfo = new ListenerInfo(newListener, objListener);
                if (insertFirst)
                {
                    listListeners.Insert(0, listenerinfo);
                }
                else
                {
                    listListeners.Add(listenerinfo);
                }
            }
        }
    }