public static DataSetRoot Instance() { if (instance == null) { instance = new DataSetRoot(); } return(instance); }
/// <summary> /// 创建新事件 /// </summary> /// <param name="eventName"></param> /// <returns></returns> public MMEvent CreateEvent(string eventName) { MMEvent mEvent = new MMEvent(); mEvent.Name = eventName; DataSetRoot.Instance().eventList.Add(mEvent); return(mEvent); }
/// <summary> /// 解除注册 /// </summary> /// <param name="eventName"></param> /// <param name="responseFunc"></param> public EventError Unregister(string eventName, Response responseFunc) { var query = from item in DataSetRoot.Instance().eventList where item.Name == eventName select item; if (query.Count <MMEvent>() == 0) { return(EventError.NOEVENT); } foreach (MMEvent mevent in query) { mevent.OnMMEvent -= new MMEvent.MMEventHandler(responseFunc); } return(EventError.OK); }
/// <summary> /// 触发事件 /// </summary> /// <param name="eventName"></param> /// <param name="param"></param> /// <returns></returns> public EventError Trigger(string eventName, ArrayList param) { var query = from item in DataSetRoot.Instance().eventList where item.Name == eventName select item; if (query.Count <MMEvent>() == 0) { return(EventError.NOEVENT); } foreach (MMEvent mevent in query) { mevent.OnTrigger(param); } return(EventError.OK); }