public static void RemoveEventListener <T, V, K>(EventListenerType enEventType, Action <T, V, K> callback) { lock (m_eventListenerDic_3) { if (m_eventListenerDic_3.ContainsKey(enEventType)) { if (m_eventListenerDic_3[enEventType].Contains(callback)) { m_eventListenerDic_3[enEventType].Remove(callback); } else { Debug.Log("该事件尚未注册: " + "事件ype:" + enEventType.ToString() + "callback:" + callback.ToString()); } } } }
public static void AddEventListener <T, V>(EventListenerType enEventType, Action <T, V> callback) { lock (m_eventListenerDic_2) { if (!m_eventListenerDic_2.ContainsKey(enEventType)) { m_eventListenerDic_2.Add(enEventType, new List <Delegate>()); } if (m_eventListenerDic_2[enEventType].Contains(callback)) { Debug.Log("该事件已经注册: " + "事件type" + enEventType.ToString() + "callback:" + callback.ToString()); } else { m_eventListenerDic_2[enEventType].Add(callback); } } }
public static void Trigger <T, V, K>(EventListenerType enEventType, T arg1, V arg2, K arg3) { lock (m_eventListenerDic_3) { if (m_eventListenerDic_3.ContainsKey(enEventType)) { //把回调事件缓存起来,防止在执行的时候对链表进行了操作,导致某些回调未执行 List <Delegate> tempList = new List <Delegate>(); for (int i = 0; i < m_eventListenerDic_3[enEventType].Count; i++) { tempList.Add(m_eventListenerDic_3[enEventType][i]); } for (int i = 0; i < tempList.Count; i++) { Action <T, V, K> callback = (Action <T, V, K>)tempList[i]; if (callback != null) { callback(arg1, arg2, arg3); } } } } }
public static void Trigger(EventListenerType enEventType) { lock (m_eventListenerDic) { if (m_eventListenerDic.ContainsKey(enEventType)) { //把回调事件缓存起来,防止在执行的时候对链表进行了操作,导致某些回调未执行 List <Delegate> tempList = new List <Delegate>(); for (int i = 0; i < m_eventListenerDic[enEventType].Count; i++) { tempList.Add(m_eventListenerDic[enEventType][i]); } for (int i = 0; i < tempList.Count; i++) { Action callback = (Action)tempList[i]; if (callback != null) { callback(); } } } } }
public override bool IsDefined(Type attributeType, bool inherit) { return(EventListenerType.IsDefined(attributeType, inherit)); }
public override object[] GetCustomAttributes(Type attributeType, bool inherit) { return(EventListenerType.GetCustomAttributes(attributeType, inherit)); }
protected void SetEventListener(string objname, EventListenerType listenerType, EventCallback1 callback) { GButton button = FindChildren <GButton>(objname); if (button == null) { return; } switch (listenerType) { case EventListenerType.onClick: button.onClick.Add(callback); break; case EventListenerType.onRightClick: button.onRightClick.Add(callback); break; case EventListenerType.onTouchBegin: button.onTouchBegin.Add(callback); break; case EventListenerType.onTouchMove: button.onTouchMove.Add(callback); break; case EventListenerType.onTouchEnd: button.onTouchEnd.Add(callback); break; case EventListenerType.onRollOver: button.onRollOver.Add(callback); break; case EventListenerType.onRollOut: button.onRollOut.Add(callback); break; case EventListenerType.onAddedToStage: button.onAddedToStage.Add(callback); break; case EventListenerType.onRemovedFromStage: button.onRemovedFromStage.Add(callback); break; case EventListenerType.onKeyDown: button.onKeyDown.Add(callback); break; case EventListenerType.onClickLink: button.onClickLink.Add(callback); break; case EventListenerType.onPositionChanged: button.onPositionChanged.Add(callback); break; case EventListenerType.onSizeChanged: button.onSizeChanged.Add(callback); break; case EventListenerType.onDragStart: button.onDragStart.Add(callback); break; case EventListenerType.onDragMove: button.onDragMove.Add(callback); break; case EventListenerType.onDragEnd: button.onDragEnd.Add(callback); break; case EventListenerType.OnGearStop: button.OnGearStop.Add(callback); break; default: button.onClick.Add(callback); break; } }
internal static void RemoveEventListener <T>(EventListenerType changeCraneParameter, T m_CraneParameterVO) { throw new NotImplementedException(); }