Пример #1
0
 public void Set(KeyCode keyCode, EventDel keyEvent_OnceDown, EventDel keyEvent_Down)
 {
     keyCodes.Add(keyCode);
     keyEvent_OnceDowns.Add(keyEvent_OnceDown);
     keyEvent_Downs.Add(keyEvent_Down);
     OnceDowns.Add(false);
 }
Пример #2
0
 public TcpConnection(int ID, Form1 f1, EventDel onConnected, EventDel onDataReceived, EventDel onDisconnect)
 {
     this.ID             = ID;
     this.f1             = f1;
     this.onConnected    = onConnected;
     this.onDataReceived = onDataReceived;
     this.onDisconnect   = onDisconnect;
 }
Пример #3
0
        public void dropListener(MyEvent.EventType evtName, EventDel callback)
        {
            List <EventDel> evtListener = null;

            if (m_listeners.TryGetValue(evtName, out evtListener))
            {
                evtListener.Remove(callback);
            }
        }
Пример #4
0
    /// <summary>
    /// 消除某事件的回调
    /// </summary>
    /// <param name="evtName"></param>
    /// <param name="callback"></param>
    public void DropEvent(EveType evtName, EventDel callback)
    {
        List <EventDel> evtList = null;

        if (m_listeners.TryGetValue(evtName, out evtList))
        {//如果找到了这个事件的链表
            evtList.Remove(callback);
        }
    }
Пример #5
0
 public void AddLocalEvent(int localId, MyEvent.EventType type, EventDel cb)
 {
     regLoalEvtEvts.Add(type, new LocalReg()
     {
         localId = localId,
         cb      = cb,
     });
     MyEventSystem.myEventSystem.RegisterLocalEvent(localId, type, cb);
 }
Пример #6
0
        public void AddLocalEvent(MyEvent.EventType type, EventDel cb)
        {
            var localId = GetComponent <NpcAttribute>().GetLocalId();

            regLoalEvtEvts.Add(type, new LocalReg()
            {
                localId = localId,
                cb      = cb,
            });
            MyEventSystem.myEventSystem.RegisterLocalEvent(localId, type, cb);
        }
Пример #7
0
        public void AddListener(Enum e, EventDel del)
        {
            EventDel d = null;

            _delDic.TryGetValue(e, out d);
            if (d == null)
            {
                _delDic.Add(e, del);
            }
            //   else Delegate.Combine(d, del);
        }
Пример #8
0
        public void DropLocalListener(int localId, MyEvent.EventType type, EventDel callback)
        {
            List <EventDel> evtListeners = null;
            var             key          = (long)localId * LocalCoff + (int)type;

            Log.Sys("DropLocalListener " + localId + " " + type + " " + key);
            if (localListener.TryGetValue(key, out evtListeners))
            {
                evtListeners.Remove(callback);
            }
        }
Пример #9
0
        public void Dispath(EventArg arg)
        {
            EventDel del = null;

            _delDic.TryGetValue(arg.eID, out del);
            if (del != null)
            {
                del(arg);
            }
            else
            {
                Debug.LogWarning("entity is didnot add listenner, enum = " + arg.eID);
            }
        }
Пример #10
0
    public IEnumerator TimerCor(float time, EventDel eventDel, bool isInfinity)
    {
        float timeCurrent;

        do
        {
            timeCurrent = time;
            while ((timeCurrent -= Time.deltaTime) >= 0)
            {
                yield return(null);
            }
            eventDel();
            yield return(null);
        } while (isInfinity);
    }
Пример #11
0
 private void OnSent(object sender, EventArgs e)
 {
     if (sentTextBox.InvokeRequired)
     {
         // this is worker thread
         EventDel del = new EventDel(this.OnSent);
         sentTextBox.Invoke(del, new object[] { sender, e });
     }
     else
     {
         // this is UI thread
         this.sent++;
         this.sentTextBox.Text = sent.ToString();
     }
 }
Пример #12
0
        IEnumerator WaitForSpeakOver()
        {
            bool     ret = false;
            EventDel del = delegate(MyEvent evt)
            {
                ret = true;
            };

            MyEventSystem.myEventSystem.RegisterEvent(MyEvent.EventType.SpeakOver, del);
            while (!ret)
            {
                yield return(new WaitForSeconds(1));
            }
            MyEventSystem.myEventSystem.dropListener(MyEvent.EventType.SpeakOver, del);
            isFirst = false;
        }
Пример #13
0
    /// <summary>
    /// 注册事件
    /// </summary>
    /// <param name="evtName">事件类型</param>
    /// <param name="callback">事件回调</param>
    public void RegisterEvent(EveType evtName, EventDel callback)
    {
        List <EventDel> evtList = null;

        //如果有这个事件类型,直接在这个类型链表上添加事件回调
        if (m_listeners.TryGetValue(evtName, out evtList))
        {
            m_listeners[evtName].Add(callback);
        }
        else
        {//如果没有这个事件类型,新建链表再添加事件回调
            evtList = new List <EventDel>();
            evtList.Add(callback);
            m_listeners.Add(evtName, evtList);
        }
    }
Пример #14
0
        public void AddListener <T>(EventDel <T> e) where T : GameEvent
        {
            if (_eventHash.ContainsKey(e))
            {
                return;
            }
            EventDel newEvent = (x) => e((T)x);

            _eventHash[e] = newEvent;

            EventDel tmpVar;

            _events[typeof(T)] = (_events.TryGetValue(typeof(T), out tmpVar)) ?
                                 (tmpVar += newEvent) :
                                 newEvent;
        }
Пример #15
0
        public void RegisterLocalEvent(int localId, MyEvent.EventType type, EventDel callback)
        {
            List <EventDel> evtListeners = null;
            var             key          = (long)localId * LocalCoff + (int)type;

            Log.Sys("RegLocalEvent is " + localId + " " + key + " " + type.ToString());
            if (localListener.TryGetValue(key, out evtListeners))
            {
                evtListeners.Add(callback);
            }
            else
            {
                evtListeners = new List <EventDel>();
                evtListeners.Add(callback);
                localListener.Add(key, evtListeners);
            }
        }
Пример #16
0
        public void RegisterEvent(MyEvent.EventType evtName, EventDel callback)
        {
            List <EventDel> evtListeners = null;

            if (m_listeners.TryGetValue(evtName, out evtListeners))
            {
                //evtListeners.Remove (callback);
                evtListeners.Add(callback);
            }
            else
            {
                evtListeners = new List <EventDel>();
                evtListeners.Add(callback);
                m_listeners.Add(evtName, evtListeners);
            }
            Log.Important("RegisterEvent " + evtName + " " + callback);
        }
Пример #17
0
        private static Button CreateButton(string text, EventDel eventClick, int fontSize          = 20, int width = 0,
                                           Avalonia.Layout.HorizontalAlignment horizontalAlignment = Avalonia.Layout.HorizontalAlignment.Center)
        {
            var button = new Button();

            button.Content  = text;
            button.FontSize = fontSize;
            if (width != 0)
            {
                button.Width = width;
            }
            button.Click += new EventHandler <Avalonia.Interactivity.RoutedEventArgs>(eventClick);
            button.HorizontalAlignment = horizontalAlignment;

            button.HorizontalContentAlignment = Avalonia.Layout.HorizontalAlignment.Center;

            return(button);
        }
Пример #18
0
 public void AddEvent(MyEvent.EventType type, EventDel cb)
 {
     if (cb != null)
     {
         regEvts.Add(type, cb);
         MyEventSystem.myEventSystem.RegisterEvent(type, cb);
     }
     else
     {
         var del = new EventDel(delegate(MyEvent evt){
             if (!happenedEvt.ContainsKey(type))
             {
                 happenedEvt.Add(type, evt);
             }
         });
         MyEventSystem.myEventSystem.RegisterEvent(type, del);
     }
 }
Пример #19
0
        public void RemoveListener <T> (EventDel <T> e) where T : GameEvent
        {
            EventDel lookupEvent;

            if (_eventHash.TryGetValue(e, out lookupEvent))
            {
                EventDel tempDel;
                if (_events.TryGetValue(typeof(T), out tempDel))
                {
                    tempDel -= lookupEvent;
                    if (tempDel == null)
                    {
                        _events.Remove(typeof(T));
                    }
                    else
                    {
                        _events[typeof(T)] = tempDel;
                    }
                }
                _eventHash.Remove(e);
            }
        }
Пример #20
0
 public void AddListener(Enum e, EventDel del)
 {
     enity.AddListener(e, del);
 }
Пример #21
0
 public static void TimerEvent(float time, EventDel eventDel, bool isInfinity)
 {
 }
Пример #22
0
 /// <summary>
 /// 设置当特定Key为按下状态的时候,进行的操作。(持续触发)
 /// </summary>
 /// <param name="keyCode"></param>
 /// <param name="keyEvent_Down"></param>
 public void Set_Down(KeyCode keyCode, EventDel keyEvent_Down)
 {
     Set(keyCode, () => { }, keyEvent_Down);
 }
Пример #23
0
 /// <summary>
 /// 设置当按下特定Key瞬间,进行的操作。
 /// </summary>
 /// <param name="keyCode"></param>
 /// <param name="keyEvent_OnceDown"></param>
 public void Set_OnceDown(KeyCode keyCode, EventDel keyEvent_OnceDown)
 {
     Set(keyCode, keyEvent_OnceDown, () => { });
 }
Пример #24
0
 /// <summary>
 /// 注册事件
 /// </summary>
 /// <param name="del"></param>
 public void AddEvent_OnlyInsideMouseLeftUp(EventDel del)
 {
     event_OnlyInsideMouseLeftUp += del;
 }
Пример #25
0
 public void AddEvent_InsideMouseLeftDown(EventDel del)
 {
     event_InsideMouseLeftDown += del;
 }
Пример #26
0
 public void AddEvent_MouseHoverFromInsideOut(EventDel del)
 {
     event_MouseHoverFromInsideOut += del;
 }
Пример #27
0
 public void AddEvent_InsideMouseRightUp(EventDel del)
 {
     event_InsideMouseRightUp += del;
 }
Пример #28
0
 public void AddEvent_MouseDownDragOutside_MouseUp(EventDel del)
 {
     event_MouseDownDragOutside_MouseUp += del;
 }
Пример #29
0
 /// <summary>
 /// 注册事件
 /// </summary>
 /// <param name="del"></param>
 public void AddEvent_MouseDownDragInside(EventDel del)
 {
     event_MouseDownDragInside += del;
 }