LRESULT HandleMessage(UINT uMsg, WPARAM wParam, LPARAM lParam) { if( uMsg == WM_CREATE ) { paint_manager_.Init(m_hWnd); CDialogBuilder builder; CControlUI* pRoot = builder.Create(GetDialogResource(), (UINT)0, NULL, &paint_manager_); paint_manager_.AttachDialog(pRoot); paint_manager_.AddNotifier(this); CControlUI *pText = paint_manager_.FindControl(_T("content")); if( pText ) pText->SetText(m_sContent); CenterWindow(); return 0; } else if( uMsg == WM_KEYDOWN ) { if( wParam == VK_RETURN ) { m_iRetCode = IDOK; Close(); return 0; } else if( wParam == VK_ESCAPE ) { m_iRetCode = IDCANCEL; Close(); return 0; } } LRESULT lRes = 0; if( paint_manager_.MessageHandler(uMsg, wParam, lParam, lRes) ) return lRes; return CWindowWnd::HandleMessage(uMsg, wParam, lParam); }
LRESULT CStandardPageWnd::HandleMessage(UINT uMsg, WPARAM wParam, LPARAM lParam) { if( uMsg == WM_CREATE ) { m_pm.Init(m_hWnd); CDialogBuilder builder; CControlUI* pRoot = builder.Create(GetDialogResource()); ASSERT(pRoot && _T("Failed to parse XML")); m_pm.AttachDialog(pRoot); m_pm.AddNotifier(this); Init(); return 0; } LRESULT lRes = 0; if( m_pm.MessageHandler(uMsg, wParam, lParam, lRes) ) return lRes; return CWindowWnd::HandleMessage(uMsg, wParam, lParam); }