/************************************************************************/ //管理部件 //部件自动根据Z顺序调整消息的优先级 /************************************************************************/ #ifndef __WIDGETMGR_H__ #define __WIDGETMGR_H__ #include "GameFrameHead.h" class CXWindow; class CXWidget; class GAMEFRAME_API CWidgetMgr { public: //消息的优先级,值越大级别越高 enum PRIORITY { TP_BOTTOM = 2, //低级别 TP_NORMAL = 5, //正常级别 TP_TOPMOST = 9, //高级别 }; public: ~CWidgetMgr(); static CWidgetMgr* getInstance(); static void destroy(); bool addWnd(CXWindow* pWnd, PRIORITY tpOrder = TP_NORMAL); void eraseWnd(int nId); CXWindow* getWnd(int nId); void clearAllWnd(); //通过配置创建UI CXWindow* loadWidget(CXWidget* pWnd, int nId); private: CWidgetMgr(); private: static CWidgetMgr* g_pUiMgr; deque<CXWindow*> m_deqWnd; }; #endif //__WIDGETMGR_H__