Ejemplo n.º 1
0
 public void SendSignalWithNoPara(EventSignalEnum eventSignal)
 {
     if (mEventDict0.ContainsKey(eventSignal))
     {
         foreach (ActionWithNoPara action in mEventDict0[eventSignal])
         {
             action();
         }
     }
 }
Ejemplo n.º 2
0
 public void SendSignalWithParaS <T>(EventSignalEnum eventSignal, params T[] paras)
 {
     if (mEventDictS.ContainsKey(eventSignal))
     {
         foreach (Object action in mEventDictS[eventSignal])
         {
             ActionWithParaS <T> actionWithParaS = action as ActionWithParaS <T>;
             if (actionWithParaS != null)
             {
                 actionWithParaS(paras);
             }
         }
     }
 }
Ejemplo n.º 3
0
 public void SendSignalWithPara2 <T1, T2>(EventSignalEnum eventSignal, T1 para1, T2 para2)
 {
     if (mEventDict2.ContainsKey(eventSignal))
     {
         foreach (Object action in mEventDict2[eventSignal])
         {
             ActionWithPara2 <T1, T2> actionWithPara2 = action as ActionWithPara2 <T1, T2>;
             if (actionWithPara2 != null)
             {
                 actionWithPara2(para1, para2);
             }
         }
     }
 }
Ejemplo n.º 4
0
 public void SendSignalWithPara1 <T>(EventSignalEnum eventSignal, T para)
 {
     if (mEventDict1.ContainsKey(eventSignal))
     {
         foreach (Object action in mEventDict1[eventSignal])
         {
             ActionWithPara1 <T> actionWithPara1 = action as ActionWithPara1 <T>;
             if (actionWithPara1 != null)
             {
                 actionWithPara1(para);
             }
         }
     }
 }
Ejemplo n.º 5
0
        //注册辅助函数
        private void RegisterEvent(EventSignalEnum eventSignal, Object tag, Dictionary <EventSignalEnum, List <Object> > eventDict, Object action)
        {
            List <Object> actionList = null;

            if (eventDict.ContainsKey(eventSignal))
            {
                actionList = eventDict[eventSignal];
            }
            else
            {
                actionList = new List <Object>();
                eventDict.Add(eventSignal, actionList);
            }
            actionList.Add(action);
            AddToTagList(tag, actionList, action);
        }
Ejemplo n.º 6
0
 //任意参数事件
 public void RegisterEventWithParaS <T>(EventSignalEnum eventSignal, Object tag, ActionWithParaS <T> actionWithParaS)
 {
     RegisterEvent(eventSignal, tag, mEventDictS, actionWithParaS);
 }
Ejemplo n.º 7
0
 //双参数事件
 public void RegisterEventWithPara2 <T1, T2>(EventSignalEnum eventSignal, Object tag, ActionWithPara2 <T1, T2> actionWithPara2)
 {
     RegisterEvent(eventSignal, tag, mEventDict2, actionWithPara2);
 }
Ejemplo n.º 8
0
 //事件的注册与信号的发送
 //无参数事件
 public void RegisterEventWithNoPara(EventSignalEnum eventSignal, Object tag, ActionWithNoPara actionWithNoPara)
 {
     RegisterEvent(eventSignal, tag, mEventDict0, actionWithNoPara);
 }