Kiwano Engine v1.3.x
kiwano::EventListener类 参考abstract

事件监听器 更多...

#include <EventListener.h>

类 kiwano::EventListener 继承关系图:
kiwano::ObjectBase kiwano::IntrusiveListValue< RefPtr< EventListener > > kiwano::RefObject kiwano::Serializable kiwano::Noncopyable kiwano::KeyEventListener kiwano::MouseDragEventListener kiwano::MouseEventListener

Public 类型

using Callback = Function< void(Event *)>
 监听器回调函数
 

Public 成员函数

void Start ()
 启动监听器
 
void Stop ()
 停止监听器
 
void Remove ()
 移除监听器
 
bool IsRunning () const
 是否正在运行
 
bool IsRemoveable () const
 是否可移除
 
bool IsSwallowEnabled () const
 是否开启消息吞没
 
void SetSwallowEnabled (bool enabled)
 设置消息吞没功能 更多...
 
virtual void Handle (Event *evt)=0
 处理消息 更多...
 
- Public 成员函数 继承自 kiwano::ObjectBase
 ObjectBase ()
 构造基础对象
 
void SetName (StringView name)
 设置对象名
 
StringView GetName () const
 获取对象名
 
bool IsName (StringView name) const
 判断对象的名称是否相同 更多...
 
void * GetUserData () const
 获取用户数据
 
void SetUserData (void *data)
 设置用户数据 更多...
 
void Hold (RefPtr< ObjectBase > other)
 持有一个对象并管理其生命周期 更多...
 
void Unhold (RefPtr< ObjectBase > other)
 放弃持有的对象 更多...
 
uint64_t GetObjectID () const
 获取对象ID
 
void DoSerialize (Serializer *serializer) const override
 序列化 更多...
 
void DoDeserialize (Deserializer *deserializer) override
 反序列化 更多...
 
virtual bool IsValid () const
 判断对象是否有效 更多...
 
ObjectStatusGetStatus () const
 获取对象状态
 
void SetStatus (const ObjectStatus &status)
 设置对象状态
 
void Fail (StringView msg, int code=ObjectStatus::fail)
 将对象标记为失败状态
 
void ClearStatus ()
 清除对象状态
 
- Public 成员函数 继承自 kiwano::RefObject
void Retain ()
 增加引用计数
 
void Release ()
 减少引用计数
 
uint32_t GetRefCount () const
 获取引用计数
 
- Public 成员函数 继承自 kiwano::Serializable
Vector< uint8_t > Serialize () const
 序列化为字节串
 
void Deserialize (const Vector< uint8_t > &data)
 从字节串反序列化
 
virtual void DoSerialize (Serializer *serializer) const =0
 执行序列化 更多...
 
virtual void DoDeserialize (Deserializer *deserializer)=0
 执行反序列化 更多...
 

静态 Public 成员函数

static RefPtr< EventListenerCreate (const Callback &callback)
 创建监听器 更多...
 
static RefPtr< EventListenerCreate (StringView name, const Callback &callback)
 创建监听器 更多...
 
static RefPtr< EventListenerCreate (EventType type, const Callback &callback)
 创建监听器 更多...
 
static RefPtr< EventListenerCreate (StringView name, EventType type, const Callback &callback)
 创建监听器 更多...
 
- 静态 Public 成员函数 继承自 kiwano::ObjectBase
static void SetObjectPolicy (const ObjectPolicyFunc &policy)
 设置对象处理策略
 
static bool IsTracingLeaks ()
 是否启用了内存泄漏追踪
 
static void StartTracingLeaks ()
 开始追踪内存泄漏
 
static void StopTracingLeaks ()
 停止追踪内存泄漏
 
static void DumpTracingObjects ()
 打印所有追踪中的对象信息
 
static Vector< ObjectBase * > & GetTracingObjects ()
 获取所有追踪中的对象
 
- 静态 Public 成员函数 继承自 kiwano::RefObject
static void * operator new (size_t size)
 
static void operator delete (void *ptr)
 
static void * operator new (size_t size, std::nothrow_t const &) noexcept
 
static void operator delete (void *ptr, std::nothrow_t const &) noexcept
 
static void * operator new (size_t size, void *ptr) noexcept
 
static void operator delete (void *ptr, void *place) noexcept
 

友元

class EventDispatcher
 

额外继承的成员函数

- Protected 类型 继承自 kiwano::IntrusiveListValue< RefPtr< EventListener > >
using value_type = typename std::pointer_traits< RefPtr< EventListener > >::pointer
 
using reference = value_type &
 
using pointer = value_type *
 
- Protected 成员函数 继承自 kiwano::IntrusiveListValue< RefPtr< EventListener > >
 IntrusiveListValue (value_type rhs)
 
const value_type & GetPrev () const
 获取前一元素
 
value_type & GetPrev ()
 获取前一元素
 
const value_type & GetNext () const
 获取下一元素
 
value_type & GetNext ()
 获取下一元素
 

详细描述

事件监听器

成员函数说明

◆ Create() [1/4]

RefPtr< EventListener > kiwano::EventListener::Create ( const Callback callback)
static

创建监听器

参数
callback回调函数

◆ Create() [2/4]

RefPtr< EventListener > kiwano::EventListener::Create ( EventType  type,
const Callback callback 
)
static

创建监听器

参数
type监听的事件类型
callback回调函数

◆ Create() [3/4]

RefPtr< EventListener > kiwano::EventListener::Create ( StringView  name,
const Callback callback 
)
static

创建监听器

参数
name监听器名称
type监听的事件类型
callback回调函数

◆ Create() [4/4]

RefPtr< EventListener > kiwano::EventListener::Create ( StringView  name,
EventType  type,
const Callback callback 
)
static

创建监听器

参数
name监听器名称
type监听的事件类型
callback回调函数

◆ Handle()

virtual void kiwano::EventListener::Handle ( Event evt)
pure virtual

◆ SetSwallowEnabled()

void kiwano::EventListener::SetSwallowEnabled ( bool  enabled)
inline

设置消息吞没功能

参数
enabled是否启用