//{{VCI_IMPLEMENT_BEGIN int CDuiPlugin::OnInit(UINT nIDTemplate, HWND hWnd, LPCTSTR lpszName, CRect rc) { // 调用DuiSystem创建一个Panel控件对象,并加载xml文件 TRACE("CDuiPlugin::OnInit, name=%s, rc=%d,%d,%d,%d\n", lpszName, rc.left, rc.top, rc.right, rc.bottom); USES_CONVERSION; // 设置DuiVision库的根目录 DuiSystem::SetRootPath(GetPlugInRootPath()); // 初始化DUI库 DWORD dwLangID = 0; new DuiSystem(NULL, dwLangID, _T(""), 1116, nIDTemplate, _T("")); DuiSystem::LogEvent(DUIV_LOG_LEVELDEBUG, _T("CDuiPlugin::OnInit root path is %s"), GetPlugInRootPath()); // 加载xml m_pDuiPanel = (CDuiPanel*)DuiSystem::CreateControlByName(_T("div"), hWnd, NULL); if(m_pDuiPanel) { // 给插件的panel对象注册事件处理对象 CDuiHandlerPlugin* pHandler = new CDuiHandlerPlugin(); pHandler->SetDuiPanel(m_pDuiPanel); DuiSystem::RegisterHandler(m_pDuiPanel, pHandler); // 加载插件界面文件 //BOOL bRet = m_pDuiPanel->LoadXmlFile(A2W(lpszName)); BOOL bRet = m_pDuiPanel->LoadXmlFile(lpszName); // 事件处理对象初始化 pHandler->OnInit(); //DuiSystem::LogEvent(DUIV_LOG_LEVELDEBUG, _T("CDuiPlugin::OnInit load %s %s"), A2W(lpszName), bRet ? _T("succ") : _T("fail")); DuiSystem::LogEvent(DUIV_LOG_LEVELDEBUG, _T("CDuiPlugin::OnInit load %s %s"), lpszName, bRet ? _T("succ") : _T("fail")); } return 0; }
//{{VCI_IMPLEMENT_BEGIN int CDuiPlugin::OnInit(UINT nIDTemplate, HWND hWnd, LPCTSTR lpszName, CRect rc, IDuiHostWnd* pIDuiHostWnd) { // 调用DuiSystem创建一个Panel控件对象,并加载xml文件 TRACE(_T("CDuiPlugin::OnInit, name=%s, rc=%d,%d,%d,%d\n"), lpszName, rc.left, rc.top, rc.right, rc.bottom); USES_CONVERSION; // 设置DuiVision库的根目录 DuiSystem::SetRootPath(GetPlugInRootPath()); // 初始化DUI库 DWORD dwLangID = 0; UINT uAppID = 0; if(pIDuiHostWnd) { dwLangID = (DWORD)pIDuiHostWnd->GetCurrentLanguage(); uAppID = (UINT)pIDuiHostWnd->GetAppID(); } new DuiSystem(NULL, dwLangID, _T(""), uAppID, nIDTemplate, _T("")); DuiSystem::LogEvent(LOG_LEVEL_DEBUG, _T("CDuiPlugin::OnInit root path is %s"), GetPlugInRootPath()); [!if OPTION_CHECK_USEWKE] // 注册WKE控件 REGISTER_DUICONTROL(CDuiWkeView, CDuiWkeView::WkeShutdown); [!endif] // 加载xml m_pDuiPanel = (CDuiPanel*)DuiSystem::CreateControlByName(_T("div"), hWnd, NULL); if(m_pDuiPanel) { // 设置panel控件的宿主窗口功能接口指针 m_pDuiPanel->SetIDuiHostWnd(pIDuiHostWnd); // 给插件的panel对象注册事件处理对象 CDuiHandlerPlugin* pHandler = new CDuiHandlerPlugin(); pHandler->SetDuiPanel(m_pDuiPanel); DuiSystem::RegisterHandler(m_pDuiPanel, pHandler); // 加载插件界面文件 BOOL bRet = m_pDuiPanel->LoadXmlFile(lpszName); DuiSystem::LogEvent(LOG_LEVEL_DEBUG, _T("CDuiPlugin::OnInit load %s %s"), lpszName, bRet ? _T("succ") : _T("fail")); } return 0; }