YSTest  PreAlpha_b400_20130424
The YSLib Test Project
 全部  命名空间 文件 函数 变量 类型定义 枚举 枚举值 友元 宏定义  
yevt.hpp 文件参考

事件回调。 更多...

#include "yobject.h"
#include "yfunc.hpp"
#include <ystdex/iterator.hpp>
#include <ystdex/container.hpp>
yevt.hpp 的引用(Include)关系图:
此图展示该文件直接或间接的被哪些文件引用了:

浏览源代码.

struct  YSLib::GIHEvent< _tParams >
 事件处理器接口模板。 更多...
 
class  GHEvent< typename >
 标准事件处理器类模板。 更多...
 
class  YSLib::GHEvent< _tRet(_tParams...)>
 
struct  YSLib::GHEvent< _tRet(_tParams...)>::GEquality< _tFunctor >
 
class  GEvent< typename >
 事件类模板。 更多...
 
class  YSLib::GEvent< _tRet(_tParams...)>
 
class  YSLib::GDependencyEvent< _tEvent, _tOwnerPointer >
 依赖事件项类模板。 更多...
 
class  YSLib::GEventWrapper< _tEvent, _tBaseArgs >
 事件处理器包装类模板。 更多...
 
class  YSLib::GEventPointerWrapper< _tBaseArgs >
 事件项类型。 更多...
 

命名空间

namespace  YSLib
 

宏定义

#define DeclDelegate(_name, _tEventArgs)   typedef GHEvent<void(_tEventArgs)> _name;
 定义事件处理器委托类型。
 
#define DefExtendEventMap(_n, _b)   DefExtendClass(YF_API, _n, public _b)
 定义扩展事件类。
 
#define EventT(_tEventHandler)   GEvent<void(_tEventHandler::EventArgsType)>
 事件类型宏。
 
#define DepEventT(_tEventHandler)   typename GDependencyEvent(EventT(_tEventHandler))
 
#define DeclEvent(_tEventHandler, _name)   EventT(_tEventHandler) _name;
 声明事件。
 
#define DeclDepEvent(_tEventHandler, _name)   DepEventT(_tEventHandler) _name;
 
#define DeclEventRef(_tEventHandler, _name)   EventT(_tEventHandler)& _name;
 声明事件引用。
 
#define DeclDepEventRef(_tEventHandler, _name)   DepEventT(_tEventHandler)& _name;
 
#define DeclIEventEntry(_tEventHandler, _name)   DeclIEntry(const EventT(_tEventHandler)& yJOIN(Get, _name)() const)
 声明事件接口函数。
 
#define DeclIDepEventEntry(_tEventHandler, _name)   DeclIEntry(const DepEventT(_tEventHandler)& yJOIN(Get, _name)() const)
 since build 188 。
 
#define DefEventGetter(_q, _tEventHandler, _name, _member)   DefGetter(_q, EventT(_tEventHandler)&, _name, _member)
 定义事件访问器。
 
#define DefEventGetterBase(_q, _tEventHandler, _name, _base)   DefGetterBase(_q, EventT(_tEventHandler)&, _name, _base)
 
#define DefEventGetterMem(_q, _tEventHandler, _name, _member)   DefGetterMem(_q, EventT(_tEventHandler)&, _name, _member)
 
#define DefDepEventGetter(_q, _tEventHandler, _name, _member)   DefGetter(_q, DepEventT(_tEventHandler)&, _name, _member)
 
#define DefDepEventGetterBase(_q, _tEventHandler, _name, _base)   DefGetterBase(_q, DepEventT(_tEventHandler)&, _name, _base)
 
#define DefDepEventGetterMem(_q, _tEventHandler, _name, _member)   DefGetterMem(_q, DepEventT(_tEventHandler)&, _name, _member)
 

类型定义

typedef u8 YSLib::EventPriority
 事件优先级。
 

函数

yconstexpr EventPriority YSLib::DefaultEventPriority (0x80)
 默认事件优先级。
 
template<typename _tRet , typename... _tParams>
GEvent< _tRet(_tParams...)> & YSLib::AddUnique (GEvent< _tRet(_tParams...)> &evt, const typename GEvent< _tRet(_tParams...)>::HandlerType &h, EventPriority prior=DefaultEventPriority)
 添加单一事件响应:删除后添加。
 
template<typename _tRet , typename... _tParams>
GEvent< _tRet(_tParams...)> & YSLib::AddUnique (GEvent< _tRet(_tParams...)> &evt, typename GEvent< _tRet(_tParams...)>::HandlerType &&h, EventPriority prior=DefaultEventPriority)
 
template<typename _type , typename _tRet , typename... _tParams>
GEvent< _tRet(_tParams...)> & YSLib::AddUnique (GEvent< _tRet(_tParams...)> &evt, _type &&arg, EventPriority prior=DefaultEventPriority)
 
template<class _type , typename _tRet , typename... _tParams>
GEvent< _tRet(_tParams...)> & YSLib::AddUnique (GEvent< _tRet(_tParams...)> &evt, _type &obj, void(_type::*pm)(typename GEvent< _tRet(_tParams...)>::EventArgsType), EventPriority prior=DefaultEventPriority)
 

详细描述

事件回调。

版本
r4316
作者
FrankHB frank.nosp@m.hb19.nosp@m.89@gm.nosp@m.ail..nosp@m.com
自从
早于 build 132
创建时间:
2010-04-23 23:08:23 +0800
修改时间:
2013-03-23 20:36 +0800
文本编码:
UTF-8
模块名称:
YSLib::Core::YEvent

在文件 yevt.hpp 中定义.

宏定义说明

#define DeclDelegate (   _name,
  _tEventArgs 
)    typedef GHEvent<void(_tEventArgs)> _name;

定义事件处理器委托类型。

自从
build 268

在文件 yevt.hpp501 行定义.

#define DeclDepEvent (   _tEventHandler,
  _name 
)    DepEventT(_tEventHandler) _name;

在文件 yevt.hpp610 行定义.

#define DeclDepEventRef (   _tEventHandler,
  _name 
)    DepEventT(_tEventHandler)& _name;

在文件 yevt.hpp621 行定义.

#define DeclEvent (   _tEventHandler,
  _name 
)    EventT(_tEventHandler) _name;

声明事件。

自从
build 188

在文件 yevt.hpp608 行定义.

#define DeclEventRef (   _tEventHandler,
  _name 
)    EventT(_tEventHandler)& _name;

声明事件引用。

自从
build 188

在文件 yevt.hpp619 行定义.

#define DeclIDepEventEntry (   _tEventHandler,
  _name 
)    DeclIEntry(const DepEventT(_tEventHandler)& yJOIN(Get, _name)() const)

since build 188 。

在文件 yevt.hpp633 行定义.

#define DeclIEventEntry (   _tEventHandler,
  _name 
)    DeclIEntry(const EventT(_tEventHandler)& yJOIN(Get, _name)() const)

声明事件接口函数。

since build 166 。

在文件 yevt.hpp630 行定义.

#define DefDepEventGetter (   _q,
  _tEventHandler,
  _name,
  _member 
)    DefGetter(_q, DepEventT(_tEventHandler)&, _name, _member)

在文件 yevt.hpp648 行定义.

#define DefDepEventGetterBase (   _q,
  _tEventHandler,
  _name,
  _base 
)    DefGetterBase(_q, DepEventT(_tEventHandler)&, _name, _base)

在文件 yevt.hpp650 行定义.

#define DefDepEventGetterMem (   _q,
  _tEventHandler,
  _name,
  _member 
)    DefGetterMem(_q, DepEventT(_tEventHandler)&, _name, _member)

在文件 yevt.hpp652 行定义.

#define DefEventGetter (   _q,
  _tEventHandler,
  _name,
  _member 
)    DefGetter(_q, EventT(_tEventHandler)&, _name, _member)

定义事件访问器。

自从
build 188

在文件 yevt.hpp642 行定义.

#define DefEventGetterBase (   _q,
  _tEventHandler,
  _name,
  _base 
)    DefGetterBase(_q, EventT(_tEventHandler)&, _name, _base)

在文件 yevt.hpp644 行定义.

#define DefEventGetterMem (   _q,
  _tEventHandler,
  _name,
  _member 
)    DefGetterMem(_q, EventT(_tEventHandler)&, _name, _member)

在文件 yevt.hpp646 行定义.

#define DefExtendEventMap (   _n,
  _b 
)    DefExtendClass(YF_API, _n, public _b)

定义扩展事件类。

自从
build 240

在文件 yevt.hpp740 行定义.

#define DepEventT (   _tEventHandler)    typename GDependencyEvent(EventT(_tEventHandler))

在文件 yevt.hpp599 行定义.

#define EventT (   _tEventHandler)    GEvent<void(_tEventHandler::EventArgsType)>

事件类型宏。

自从
build 188

在文件 yevt.hpp598 行定义.

参考自 YSLib::UI::DoEvent(),YSLib::UI::FetchEvent() , 以及 YSLib::UI::NewEvent().