public static ButtonEvent.Listener AddListener(string eventName, Action <bool, object> callback) { ButtonEvent.Listener listener = new ButtonEvent.Listener(); listener.eventName = eventName; listener.callback = callback; ButtonEvent.m_Listener.Add(listener); return(listener); }
protected override void OnDestroy() { if (this.m_Listener == null) { return; } ButtonEvent.RemoveListener(this.m_Listener); this.m_Listener = (ButtonEvent.Listener)null; }
protected override void Awake() { base.Awake(); if (string.IsNullOrEmpty(this.EventName)) { return; } this.m_Listener = ButtonEvent.AddListener(this.EventName, new Action <bool, object>(this.OnButtonEvent)); }
public static void ForceInvoke(string eventName, object value) { for (int index = 0; index < ButtonEvent.m_Listener.Count; ++index) { ButtonEvent.Listener listener = ButtonEvent.m_Listener[index]; if (listener.eventName == eventName) { listener.callback(true, value); } } }
public static void Invoke(string eventName, object value) { if (ButtonEvent.IsLock()) { return; } for (int index = 0; index < ButtonEvent.m_Listener.Count; ++index) { ButtonEvent.Listener listener = ButtonEvent.m_Listener[index]; if (listener.eventName == eventName) { listener.callback(false, value); } } }
public static void RemoveListener(ButtonEvent.Listener listener) { ButtonEvent.m_Listener.Remove(listener); }