#pragma once #include "kbase.hpp" #include "kxml.hpp" #include "kcontrol.hpp" namespace Hxsoft{ namespace XFrame { class IXFWin { public: HWND GetHWND(); public: IXFWin* GetFrameWindow(); public: int CloseWindow(); public: int SetStyle(DWORD dwStyle); int SetStyleEx(DWORD dwStyleEx); public: //static IXFWin * OpenWindow(LPCTSTR pServer,LPCTSTR pStrUrl,IXFWin* pParent,LPARAM lParam,IXFWin *pCmdWin,DWORD dwStyleEx=0,DWORD DwStyle=0,LPCTSTR pCtrl=NULL); static IXFWin * OpenWindow(LPCTSTR pServer,LPCTSTR pStrUrl,IXFWin* pParent,LPARAM lParam,IXFWin *pCmdWin,DWORD dwStyleEx=0,DWORD DwStyle=0,LPRECT pRect=NULL); static IXFWin * OpenWindow(LPCTSTR pServer,LPCTSTR pStrUrl,IXFWin* pParent=NULL,LPARAM lParam=NULL,DWORD dwStyleEx=0,DWORD DwStyle=0,LPRECT pRect=NULL); static IXFWin * OpenWindow(ITrans * pTrans,LPCTSTR pStrUrl,IXFWin* pParent,LPARAM lParam,IXFWin *pCmdWin,DWORD dwStyleEx=0,DWORD DwStyle=0,LPRECT pRect=NULL); static IXFWin * OpenWindow(ITrans * pTrans,LPCTSTR pStrUrl,IXFWin* pParent=NULL,LPARAM lParam=NULL,DWORD dwStyleEx=0,DWORD DwStyle=0,LPRECT pRect=NULL); IXFWin * OpenWindow(LPCTSTR pStrUrl,IXFWin* pParent,LPARAM lParam,IXFWin *pCmdWin,DWORD dwStyleEx=0,DWORD DwStyle=0,LPRECT pRect=NULL); IXFWin * OpenWindow(LPCTSTR pStrUrl,IXFWin* pParent=NULL,LPARAM lParam=NULL,DWORD dwStyleEx=0,DWORD DwStyle=0,LPRECT pRect=NULL); static IXFWin * OpenWindow(KXMLDOMElement pElement,IXFWin* pParent,LPARAM lParam,IXFWin *pCmdWin,DWORD dwStyleEx=0,DWORD DwStyle=0,LPRECT pRect=NULL); static IXFWin * OpenWindow(KXMLDOMElement ,IXFWin* pParent=NULL,LPARAM lParam=NULL,DWORD dwStyleEx=0,DWORD DwStyle=0,LPRECT pRect=NULL); static IXFWin * OpenWindow(KXMLDOMDocument &xml,IXFWin* pParent=NULL,LPARAM lParam=NULL,DWORD dwStyleEx=0,DWORD DwStyle=0,LPRECT pRect=NULL); static IXFWin * OpenWindow(IXPage * pPage,IXFWin* pParent,LPARAM lParam,IXFWin *pCmdWin,DWORD dwStyleEx=0,DWORD DwStyle=0,LPRECT pRect=NULL); static IXFWin * OpenWindow(IXPage * pPage,IXFWin* pParent=NULL,LPARAM lParam=NULL,DWORD dwStyleEx=0,DWORD DwStyle=0,LPRECT pRect=NULL); public: IXFControl * GetControl(LPCTSTR pControlName); IXFControl * GetControl(LPCTSTR pControlName,IXNode * pNode); IXFControl * GetControl(LPCTSTR pControlName,bool bInsUnlayered); public: int GetAttachObject(); static int GetAttachObject(HWND hWnd); public: LPCTSTR GetServerUrl(); public: int Redraw(); public: IXNode * GetAgentNode(LPCTSTR pStrName = L"agentarea"); IXNode* SetAgentNodeContent(IXNode* pAgentNode,KXMLDOMElement pElement,IXNode * pOwnerNode); IXNode* SetAgentNodeContent(IXNode* pAgentNode,LPCTSTR pStrXml,IXNode * pOwnerNode); IXNode* SetAgentNodeContent(IXNode* pAgentNode,IXNode *Node,IXNode * pOwnerNode); IXNode* SetAgentNodeContent(IXNode* pAgentNode,LPCTSTR pStrXml); IXNode* SetAgentNodeContent(IXNode* pAgentNode,KXMLDOMElement pElement); IXNode* SetAgentNodeContent(IXNode* pAgentNode,IXNode *pNode); int ClearAgentNodeContent(IXNode* pAgentNode = NULL,LPCTSTR pStrName = NULL); int ClearAgentNodeContentEx(IXNode* pAgentNode = NULL,LPCTSTR pStrName = NULL); int RemoveAgentNodeContent(IXNode* pAgentNode , IXNode *pNode); public: IXNode * GetXNode(); IXPage * GetXPage(); KXMLDOMElement GetElement(); public: void* GetParam(); bool SetParam(void* pParam); void* GetFrameParam(); bool SetFrameParam(void* pParam); public: void SwitchLayer(LPTSTR pStrLayerSheet,LPTSTR pStrLayerFrame); public: xbObject * QueryItem(LPCTSTR pControlName,LPCTSTR pItem); public: bool AttachEvent(LPTSTR msgid,FEvent pEvt,void * pThis); bool AttachEvent(LPTSTR pCtlName, LPTSTR msgid,FEvent pEvt,void * pThis); }; }}