本文来自http://blog.csdn.net/runaying ,引用必须注明出处!
cocos2d-x节点(CCIMEDispatcher.h)API
温馨提醒:为了大家能更好学习,强烈推荐大家看看本人的这篇博客 Cocos2d-X权威指南笔记
IME调度
//cocos2d-x-3.0alpha0/cocos2dx/text_input_node
//IME调度
#ifndef __CC_IME_DISPATCHER_H__
#define __CC_IME_DISPATCHER_H__
#include "CCIMEDelegate.h"
NS_CC_BEGIN
/**
* @addtogroup input
* @{
*/
/**
@brief 输入法编辑调度信息.
*/
class CC_DLL IMEDispatcher
{
public:
/**
* @js NA
* @lua NA
*/
~IMEDispatcher();
/**
@brief Returns 系统共享的 IMEDispatcher 对象
* @js NA
* @lua NA
*/
static IMEDispatcher* sharedDispatcher();
// /**
// @brief 从共享的 dispatcher 释放所有的 IMEDelegates
// */
// static void purgeSharedDispatcher();
/**
@brief 调度 IME 输入文字.
* @js NA
* @lua NA
*/
void dispatchInsertText(const char * pText, int nLen);
/**
@brief 调度 delete-backward 操作
* @js NA
* @lua NA
*/
void dispatchDeleteBackward();
/**
@brief 从 IMEDelegate 获取内容文本,
* @js NA
* @lua NA
*/
const char * getContentText();
//
// dispatch keyboard notification //调度键盘通知
//
/**
* @js NA
* @lua NA
*/
void dispatchKeyboardWillShow(IMEKeyboardNotificationInfo& info);
/**
* @js NA
* @lua NA
*/
void dispatchKeyboardDidShow(IMEKeyboardNotificationInfo& info);
/**
* @js NA
* @lua NA
*/
void dispatchKeyboardWillHide(IMEKeyboardNotificationInfo& info);
/**
* @js NA
* @lua NA
*/
void dispatchKeyboardDidHide(IMEKeyboardNotificationInfo& info);
protected:
friend class IMEDelegate;
/**
@brief 添加代理接受 IME 消息.
*/
void addDelegate(IMEDelegate * pDelegate);
/**
@brief 把 pDelegate 关联到 IME.
@return 如果旧的 delegate 可以脱离 IME, 新的 delegate
可以关联到 IME, return true, otherwise false.
*/
bool attachDelegateWithIME(IMEDelegate * pDelegate);
bool detachDelegateWithIME(IMEDelegate * pDelegate);
/**
@brief 从接收 IME 消息的 delegates 移除制定 delegate
*/
void removeDelegate(IMEDelegate * pDelegate);
private:
IMEDispatcher();
class Impl;
Impl * _impl;
};
// end of input group
/// @}
NS_CC_END
#endif // __CC_IME_DISPATCHER_H__