⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 guiimectrl.h

📁 五行MMORPG引擎系统V1.0
💻 H
字号:
//-----------------------------------------------------------------------------
// guiIMECtrl.h
// 输入法界面
// 李亦编写 2005.11.20
//-----------------------------------------------------------------------------

#ifndef _GUIIMECTRL_H_
#define _GUIIMECTRL_H_

#ifndef _GUITOOLWINDOWCTRL_H_
#include "gui/containers/guiToolWindowCtrl.h"
#endif


class GuiIMECtrl : public GuiToolWindowCtrl
{
	friend class GuiIMECtrl;
private:
	typedef GuiToolWindowCtrl Parent;

	enum EConstants
	{
		//以下顺序不可变更
		E_SHARP	= 0,
		E_SYMBOL,
		E_NEXT,
		E_TOGGLE,
      E_INPUT,
      E_INPUT2,
		E_LIST,
		//...
		E_MAX
	};

protected:
	//GuiControl*		m_pProxyTop;
	GuiControl*		m_arCtrls[E_MAX];
	//GuiControl*		m_pContainer;
	//GuiMLTextCtrl*		m_pTxtInput;
	//GuiMLTextCtrl*		m_pTxtInput2;
	//GuiMLTextCtrl*		m_pTxtList;
	bool			m_bDefault;

	static	StringTableEntry	s_szSymbol[];
	static	StringTableEntry	s_szSymbol2[];

public:
	//creation methods
	DECLARE_CONOBJECT(GuiIMECtrl);
	GuiIMECtrl();
 	~GuiIMECtrl();

  static void initPersistFields();

   //Parental methods
   bool onWake();
   //void onSleep();

	//bool onAdd();

   //初始化默认IME
   void InitDefaultIME();
   static void DestroyDefaultIME(GuiIMECtrl* pCtrl);
   void CalcDefaultPos();
   void FitControl();

	void SetIMEText(U32 eType,CSTR sText);
   void FitPosByCursor(S32 nCursorPos);

   virtual void OnInputLangChange(bool bOpen);
   virtual void OnIMENotify(U32 uCode);
   virtual void OnIMEComposition(U32 uFlag);
   virtual void OnToggleIME(bool bSet);
   //void onRender(Point2I offset, const RectI &updateRect);

   //事件实现
   //bool onInputEvent(const InputEvent &event);

   //void SetProxyTop(GuiControl* pProxy)	{m_pProxyTop = pProxy;}
   //bool IsProxyTop(GuiControl* pProxy)	{return m_pProxyTop == pProxy;}
   //GuiControl*  GetProxyTop()			{return m_pProxyTop;}
protected:
	void SetIMEButton(U32 eType);
	void AddNewText(U32 eType);
	void ToggleCtrl(EConstants eType,bool bSet);

};

//extern GuiIMECtrl* g_pGuiIMEPanel;

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -