2#include <event/SEventSet.h>
16 for (UINT i = 0; i <
m_evtSlots.GetCount(); i++)
44 for (UINT i = 0; i <
m_evtSlots.GetCount(); i++)
61 for (
int i = 0; i < slots; i++)
65 for (
int i = slots - 1; i >= 0; i--)
67 BOOL bHandled = evtSlots[i]->Run(args);
70 args->IncreaseHandleCount();
71 if (!args->IsBubbleUp())
121 for (UINT i = 0; i <
m_evtArr.GetCount(); i++)
123 if (
m_evtArr[i]->GetID() == dwEventID)
151 for (UINT i = 0; i <
m_evtArr.GetCount(); i++)
153 if (
m_evtArr[i]->GetID() == dwEventID)
170 for (UINT i = 0; i <
m_evtArr.GetCount(); i++)
203 for (UINT i = 0; i <
m_evtArr.GetCount(); i++)
205 if (
m_evtArr[i]->GetName() == strEventName)
207 m_evtArr[i]->SetScriptHandler(strScriptHandler);
216 for (UINT i = 0; i <
m_evtArr.GetCount(); i++)
218 if (
m_evtArr[i]->GetName() == strEventName)
220 return m_evtArr[i]->GetScriptHandler();
Smart pointer class for managing COM-style reference-counted objects.
int findSlotFunctor(const IEvtSlot *slot)
查找事件槽对象
SStringA m_strScriptHandler
脚本处理程序字符串
BOOL unsubscribe(const IEvtSlot *slot)
取消订阅事件
SStringW m_strEventName
事件名称
BOOL subscribe(const IEvtSlot *slot)
订阅事件
SEvent(DWORD dwEventID, LPCWSTR pszEventName)
构造函数
void fire(IEvtArgs *args)
触发事件
SArray< IEvtSlot * > m_evtSlots
事件槽数组
SStringA GetScriptHandler() const
获取脚本处理程序
SStringW GetName() const
获取事件名称
void SetScriptHandler(const SStringA &strScriptHandler)
设置脚本处理程序
SEvent * GetEventObject(const DWORD dwEventID)
获取事件对象
BOOL subscribeEvent(DWORD dwEventID, const IEvtSlot &subscriber)
订阅事件
virtual ~SEventSet(void)
析构函数
void FireEvent(IEvtArgs *args)
触发事件
void removeAllEvents(void)
移除所有事件对象
SArray< SEvent * > m_evtArr
事件数组
BOOL setEventScriptHandler(const SStringW &strEventName, const SStringA strScriptHandler)
设置事件的脚本处理程序
BOOL isEventPresent(DWORD dwEventID)
检查事件集是否包含指定ID的事件
BOOL unsubscribeEvent(DWORD dwEventID, const IEvtSlot *subscriber)
取消订阅事件
BOOL addEvent(DWORD dwEventID, LPCWSTR pszEventHandlerName)
添加一个新事件到事件集
BOOL removeEvent(DWORD dwEventID)
移除指定ID的事件
void setMutedState(BOOL setting)
设置事件集的静音状态
SStringA getEventScriptHandler(const SStringW &strEventName) const
获取事件的脚本处理程序
A class representing an ASCII string.
A class representing an ASCII string.