BOOL CCtrlView::PreCreateWindow(CREATESTRUCT& cs) { ASSERT(cs.lpszClass == NULL); cs.lpszClass = m_strClass; // initialize common controls VERIFY(AfxDeferRegisterClass(AFX_WNDCOMMCTLS_REG)); AfxDeferRegisterClass(AFX_WNDCOMMCTLSNEW_REG); // map default CView style to default style // WS_BORDER is insignificant if ((cs.style | WS_BORDER) == AFX_WS_DEFAULT_VIEW) cs.style = m_dwDefaultStyle & (cs.style | ~WS_BORDER); return CView::PreCreateWindow(cs); }
BOOL CGuiFrameWnd::LoadFrame(UINT nIDResource, DWORD dwDefaultStyle, CWnd* pParentWnd, CCreateContext* pContext) { // only do this once ASSERT_VALID_IDR(nIDResource); ASSERT(m_nIDHelp == 0 || m_nIDHelp == nIDResource); m_nIDHelp = nIDResource; // ID for help context (+HID_BASE_RESOURCE) CString strFullString; if (strFullString.LoadString(nIDResource)) AfxExtractSubString(m_strTitle, strFullString, 0); // first sub-string VERIFY(AfxDeferRegisterClass(AFX_WNDFRAMEORVIEW_REG)); // attempt to create the window LPCTSTR lpszClass = GetIconWndClass(dwDefaultStyle, nIDResource); LPCTSTR lpszTitle = m_strTitle; if (!Create(lpszClass, lpszTitle, dwDefaultStyle, rectDefault,pParentWnd, NULL, 0L, pContext)) { return FALSE; // will self destruct on failure normally } // save the default menu handle ASSERT(m_hWnd != NULL); m_hMenuDefault = ::GetMenu(m_hWnd); // load accelerator resource LoadAccelTable(MAKEINTRESOURCE(nIDResource)); if (pContext == NULL) // send initial update SendMessageToDescendants(WM_INITIALUPDATE, 0, 0, TRUE, TRUE); return TRUE; }
//**************************************************************************************** BOOL CBCGPReBar::Create(CWnd* pParentWnd, DWORD dwCtrlStyle, DWORD dwStyle, UINT nID) { ASSERT_VALID(pParentWnd); // must have a parent ASSERT (!((dwStyle & CBRS_SIZE_FIXED) && (dwStyle & CBRS_SIZE_DYNAMIC))); // save the style m_dwStyle = (dwStyle & CBRS_ALL); if (nID == AFX_IDW_REBAR) m_dwStyle |= CBRS_HIDE_INPLACE; dwStyle &= ~CBRS_ALL; dwStyle |= CCS_NOPARENTALIGN|CCS_NOMOVEY|CCS_NODIVIDER|CCS_NORESIZE|RBS_VARHEIGHT; dwStyle |= dwCtrlStyle | WS_CLIPCHILDREN; m_pDockSite = pParentWnd; // initialize common controls VERIFY(AfxDeferRegisterClass(AFX_WNDCOMMCTL_COOL_REG)); // create the HWND CRect rect; rect.SetRectEmpty(); if (!CWnd::Create(REBARCLASSNAME, NULL, dwStyle, rect, pParentWnd, nID)) return FALSE; if (m_bLocked) { ModifyStyle (0, RBS_FIXEDORDER); } return TRUE; }
BOOL CReflectorWnd::Create(const CRect& rect, HWND hWndParent) { // make sure the default window class is registered VERIFY(AfxDeferRegisterClass(AFX_WNDOLECONTROL_REG)); return CreateEx(0, AFX_WNDOLECONTROL, NULL, WS_VISIBLE | WS_CHILD | WS_CLIPSIBLINGS, rect.left, rect.top, rect.right - rect.left, rect.bottom - rect.top, hWndParent, 0); }
BOOL CComboBoxEx::Create(DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID) { // initialize common controls VERIFY(AfxDeferRegisterClass(AFX_WNDCOMMCTL_USEREX_REG)); CWnd* pWnd = this; return pWnd->Create(WC_COMBOBOXEX, NULL, dwStyle, rect, pParentWnd, nID); }
BOOL CMonthCalCtrl::Create(DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID) { // initialize common controls VERIFY(AfxDeferRegisterClass(AFX_WNDCOMMCTL_DATE_REG)); CWnd* pWnd = this; return pWnd->Create(MONTHCAL_CLASS, NULL, dwStyle, rect, pParentWnd, nID); }
BOOL CMDIFrameWnd::PreCreateWindow(CREATESTRUCT& cs) { if (cs.lpszClass == NULL) { VERIFY(AfxDeferRegisterClass(AFX_WNDMDIFRAME_REG)); cs.lpszClass = _afxWndMDIFrame; } return TRUE; }
BOOL CReBarCtrl::Create(DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID) { // initialize common controls VERIFY(AfxDeferRegisterClass(AFX_WNDCOMMCTL_COOL_REG)); CWnd* pWnd = this; return pWnd->Create(REBARCLASSNAME, NULL, dwStyle, rect, pParentWnd, nID); }
BOOL CReflectorWnd::Create(const CRect& rect, HWND hWndParent) { // make sure the default window class is registered if (!AfxDeferRegisterClass(AFX_WND_REG)) return FALSE; static const TCHAR szAfxWnd[] = AFX_WND; return CreateEx(0, szAfxWnd, NULL, WS_CHILD | WS_CLIPSIBLINGS, rect.left, rect.top, rect.right - rect.left, rect.bottom - rect.top, hWndParent, 0); }
BOOL CControlFrameWnd::PreCreateWindow(CREATESTRUCT& cs) { // make sure the default window class is registered if (!AfxDeferRegisterClass(AFX_WND_REG)) return FALSE; if (cs.lpszClass == NULL) cs.lpszClass = AFX_WND; return TRUE; }
BOOL CIPAddressCtrl::Create(DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID) { // initialize common controls VERIFY(AfxDeferRegisterClass(AFX_WNDCOMMCTL_INTERNET_REG)); // the IP Address Control must be a child ASSERT(dwStyle & WS_CHILD); CWnd* pWnd = this; return pWnd->Create(WC_IPADDRESS, NULL, dwStyle, rect, pParentWnd, nID); }
void CXTPPropertyGridItemDate::OnInplaceButtonDown(CXTPPropertyGridInplaceButton* pButton) { if (m_pGrid->SendNotifyMessage(XTP_PGN_INPLACEBUTTONDOWN, (LPARAM)pButton) == TRUE) return; if (!OnRequestEdit()) return; CXTPPropertyGridInplaceMonthCal* pMonthCtrl = new CXTPPropertyGridInplaceMonthCal(this); #if _MSC_VER < 1200 // MFC 5.0 INITCOMMONCONTROLSEX icex; icex.dwSize = sizeof(icex); icex.dwICC = ICC_DATE_CLASSES; VERIFY(InitCommonControlsEx(&icex)); #else VERIFY(AfxDeferRegisterClass(AFX_WNDCOMMCTL_DATE_REG)); #endif // _MSC_VER < 1200 CRect rect(0, 0, 0, 0); pMonthCtrl->CreateEx(WS_EX_TOPMOST | (m_pGrid->GetExStyle() & WS_EX_LAYOUTRTL), MONTHCAL_CLASS, NULL, WS_BORDER | WS_POPUP | WS_VISIBLE, rect, m_pGrid, 0); SYSTEMTIME sysTime; if (GetAsSystemTime(sysTime)) pMonthCtrl->SendMessage(MCM_SETCURSEL, 0, (LPARAM) &sysTime); if (pMonthCtrl->GetMinReqRect(rect)) { CRect rcItem = GetItemRect(); rect.SetRect(rcItem.right - rect.Width(), rcItem.bottom, rcItem.right, rcItem.bottom + rect.Height()); m_pGrid->ClientToScreen(&rect); CRect rcWork = XTPMultiMonitor()->GetWorkArea(rect); if (rect.bottom > rcWork.bottom && rect.top > rcWork.CenterPoint().y) rect.OffsetRect(0, - rect.Height() - rcItem.Height() - 1); if (rect.left < rcWork.left) rect.OffsetRect(rcWork.left - rect.left, 0); if (rect.right > rcWork.right) rect.OffsetRect(rcWork.right - rect.right, 0); pMonthCtrl->SetWindowPos(NULL, rect.left, rect.top, rect.Width(), rect.Height(), SWP_NOZORDER | SWP_NOACTIVATE); } pMonthCtrl->SetOwner(m_pGrid); pMonthCtrl->SetFocus(); }
BOOL CToolTipCtrl::Create(CWnd* pParentWnd, DWORD dwStyle /* = 0 */) { // initialize common controls VERIFY(AfxDeferRegisterClass(AFX_WNDCOMMCTL_BAR_REG)); BOOL bResult = CWnd::CreateEx(NULL, TOOLTIPS_CLASS, NULL, WS_POPUP | dwStyle, // force WS_POPUP CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, pParentWnd->GetSafeHwnd(), NULL, NULL); if (bResult) SetOwner(pParentWnd); return bResult; }
BOOL COleResizeBar::Create(CWnd* pParentWnd, DWORD dwStyle, UINT nID) { ASSERT_VALID(this); if (pParentWnd != NULL) ASSERT_VALID(pParentWnd); // must have a parent // force WS_CLIPSIBLINGS (avoids SetWindowPos bugs) dwStyle |= WS_CLIPSIBLINGS; VERIFY(AfxDeferRegisterClass(AFX_WNDCONTROLBAR_REG)); // create the HWND CRect rect; rect.SetRectEmpty(); // Note: Parent must resize itself for control bar to be resized return CWnd::Create(AFX_WNDCONTROLBAR, NULL, dwStyle, rect, pParentWnd, nID); }
BOOL CView::PreCreateWindow(CREATESTRUCT & cs) { ASSERT(cs.style & WS_CHILD); if (cs.lpszClass == NULL) { VERIFY(AfxDeferRegisterClass(AFX_WNDFRAMEORVIEW_REG)); cs.lpszClass = _afxWndFrameOrView; // COLOR_WINDOW background } if (afxData.bWin4 && (cs.style & WS_BORDER)) { cs.dwExStyle |= WS_EX_CLIENTEDGE; cs.style &= ~WS_BORDER; } return TRUE; }
BOOL CProgressBar::Create(CFrameWnd* pParentWnd, String_64 *JobDescrip, DWORD dwStyle, UINT32 nID) { ASSERT_VALID(pParentWnd); // must have a parent CurrentPercent = -1; if (JobDescrip == NULL) JobDescription = NULL; else JobDescription = new String_64(*JobDescrip); #if WIN32 // this element of CControlBar does not exist in MFC 2.5 16-bit m_dwStyle = dwStyle; #endif #if _MFC_VER == 0x400 // MFC 4 defers registering of window classes, so make sure the window class // is registered before we use it. // (code taken from mfc/src/bardock.cpp, in MFC 4) if (!AfxDeferRegisterClass(AFX_WNDCONTROLBAR_REG)) return FALSE; #endif // Work out the position of the bar. CRect rect; rect.SetRectEmpty(); // create the window if (!CWnd::Create(_afxWndControlBar, NULL, dwStyle, rect, pParentWnd, nID)) return FALSE; // NOTE: Parent must resize itself for control bar to be resized // set initial font and calculate bar height OnSetFont((WPARAM)m_hFont, 0); // initialize font height etc pParentWnd->RecalcLayout(); // Cause ourself to be shown SetPercent(0, TRUE); // Force redraw of window _including background_ return TRUE; }
BOOL CXTComboBoxEx::Create(DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID) { #if (_MSC_VER <= 1100) // Using Visual C++ 5.0 // initialize common controls INITCOMMONCONTROLSEX icex; icex.dwSize = sizeof(icex); icex.dwICC = ICC_USEREX_CLASSES; VERIFY(InitCommonControlsEx(&icex)); #else // initialize common controls VERIFY(AfxDeferRegisterClass(AFX_WNDCOMMCTL_USEREX_REG)); #endif//#if (_MSC_VER <= 1100) // Using Visual C++ 5.0 CWnd* pWnd = this; return pWnd->Create(WC_COMBOBOXEX, NULL, dwStyle, rect, pParentWnd, nID); }
BOOL CMyToolBar::Create(CWnd* pParentWnd, DWORD dwStyle, UINT nID) { VERIFY(AfxDeferRegisterClass(AFX_WNDCONTROLBAR_REG)); DWORD dwNewStyle = (dwStyle & CBRS_ALIGN_ANY) | (dwStyle & CBRS_BORDER_ANY) | WS_CHILD | WS_CLIPCHILDREN | WS_CLIPSIBLINGS; // Save the style m_dwStyle = (dwNewStyle & CBRS_ALL); if (!CControlBar::Create(_afxWndControlBar, NULL, dwNewStyle, CRect(0, 0, 0, 0), pParentWnd, nID)) return false; DWORD dwToolBarStyle = dwStyle | WS_VISIBLE | WS_CLIPCHILDREN; if (!m_toolBar.Create(this, dwToolBarStyle, 1)) return false; m_toolBar.GetToolBarCtrl().SetExtendedStyle(TBSTYLE_EX_DOUBLEBUFFER); return true; }
BOOL CWnd::CreateDlgIndirect(LPCDLGTEMPLATE lpDialogTemplate, CWnd* pParentWnd, HINSTANCE hInst) { ASSERT(lpDialogTemplate != NULL); if (pParentWnd != NULL) ASSERT_VALID(pParentWnd); if (hInst == NULL) hInst = AfxGetInstanceHandle(); #ifndef _AFX_NO_OCC_SUPPORT _AFX_OCC_DIALOG_INFO occDialogInfo; COccManager* pOccManager = afxOccManager; #endif HGLOBAL hTemplate = NULL; HWND hWnd = NULL; #ifdef _DEBUG DWORD dwError = 0; #endif TRY { VERIFY(AfxDeferRegisterClass(AFX_WNDCOMMCTLS_REG)); AfxDeferRegisterClass(AFX_WNDCOMMCTLSNEW_REG); #ifndef _AFX_NO_OCC_SUPPORT // separately create OLE controls in the dialog template if (pOccManager != NULL) { if (!SetOccDialogInfo(&occDialogInfo)) return FALSE; lpDialogTemplate = pOccManager->PreCreateDialog(&occDialogInfo, lpDialogTemplate); } if (lpDialogTemplate == NULL) return FALSE; #endif //!_AFX_NO_OCC_SUPPORT // If no font specified, set the system font. CString strFace; WORD wSize = 0; BOOL bSetSysFont = !CDialogTemplate::GetFont(lpDialogTemplate, strFace, wSize); // On DBCS systems, also change "MS Sans Serif" or "Helv" to system font. if ((!bSetSysFont) && GetSystemMetrics(SM_DBCSENABLED)) { bSetSysFont = (strFace == _T("MS Shell Dlg") || strFace == _T("MS Sans Serif") || strFace == _T("Helv")); if (bSetSysFont && (wSize == 8)) wSize = 0; } if (bSetSysFont) { CDialogTemplate dlgTemp(lpDialogTemplate); dlgTemp.SetSystemFont(wSize); hTemplate = dlgTemp.Detach(); } if (hTemplate != NULL) lpDialogTemplate = (DLGTEMPLATE*)GlobalLock(hTemplate); // setup for modal loop and creation m_nModalResult = -1; m_nFlags |= WF_CONTINUEMODAL; // create modeless dialog AfxHookWindowCreate(this); hWnd = ::CreateDialogIndirect(hInst, lpDialogTemplate, pParentWnd->GetSafeHwnd(), AfxDlgProc); #ifdef _DEBUG dwError = ::GetLastError(); #endif } CATCH_ALL(e) { DELETE_EXCEPTION(e); m_nModalResult = -1; } END_CATCH_ALL #ifndef _AFX_NO_OCC_SUPPORT if (pOccManager != NULL) { pOccManager->PostCreateDialog(&occDialogInfo); if (hWnd != NULL) SetOccDialogInfo(NULL); } #endif //!_AFX_NO_OCC_SUPPORT if (!AfxUnhookWindowCreate()) PostNcDestroy(); // cleanup if Create fails too soon // handle EndDialog calls during OnInitDialog if (hWnd != NULL && !(m_nFlags & WF_CONTINUEMODAL)) { ::DestroyWindow(hWnd); hWnd = NULL; } if (hTemplate != NULL) { GlobalUnlock(hTemplate); GlobalFree(hTemplate); } // help with error diagnosis (only if WM_INITDIALOG didn't EndDialog()) if (hWnd == NULL && (m_nFlags & WF_CONTINUEMODAL)) { #ifdef _DEBUG #ifndef _AFX_NO_OCC_SUPPORT if (afxOccManager == NULL) { TRACE0(">>> If this dialog has OLE controls:\n"); TRACE0(">>> AfxEnableControlContainer has not been called yet.\n"); TRACE0(">>> You should call it in your app's InitInstance function.\n"); } else if (dwError != 0) { TRACE1("Warning: Dialog creation failed! GetLastError returns 0x%8.8X\n", dwError); } #endif //!_AFX_NO_OCC_SUPPORT #endif //_DEBUG return FALSE; } ASSERT(hWnd == m_hWnd); return TRUE; }
//**************************************************************************************** BOOL CBCGDialogBar::Create(LPCTSTR lpszWindowName, CWnd* pParentWnd, BOOL bHasGripper, LPCTSTR lpszTemplateName, UINT nStyle, UINT nID) { ASSERT(pParentWnd != NULL); ASSERT(lpszTemplateName != NULL); //------------------------------------------------------ // cannot be both fixed and dynamic // (CBRS_SIZE_DYNAMIC is used for resizng when floating) //------------------------------------------------------ ASSERT (!((nStyle & CBRS_SIZE_FIXED) && (nStyle & CBRS_SIZE_DYNAMIC))); if (bHasGripper) { m_cyGripper = max (12, globalData.GetTextHeight ()); } else { m_cyGripper = 0; } m_bAllowSizing = nStyle & CBRS_SIZE_DYNAMIC ? TRUE : FALSE; //------------------------------ // allow chance to modify styles //------------------------------ m_dwStyle = (nStyle & CBRS_ALL); CREATESTRUCT cs; memset(&cs, 0, sizeof(cs)); cs.lpszClass = AFX_WNDCONTROLBAR; cs.lpszName = lpszWindowName; cs.style = (DWORD)nStyle | WS_CHILD; cs.hMenu = (HMENU)(UINT_PTR) nID; cs.hInstance = AfxGetInstanceHandle(); cs.hwndParent = pParentWnd->GetSafeHwnd(); if (!PreCreateWindow(cs)) { return FALSE; } #ifndef _AFX_NO_OCC_SUPPORT m_lpszTemplateName = lpszTemplateName; #endif //---------------------------- // initialize common controls //---------------------------- VERIFY(AfxDeferRegisterClass(AFX_WNDCOMMCTLS_REG)); AfxDeferRegisterClass(AFX_WNDCOMMCTLSNEW_REG); //-------------------------- // create a modeless dialog //-------------------------- if (!CreateDlg (lpszTemplateName, pParentWnd)) { TRACE(_T("Can't create dialog: %s\n"), lpszTemplateName); return FALSE; } #ifndef _AFX_NO_OCC_SUPPORT m_lpszTemplateName = NULL; #endif #pragma warning (disable : 4311) SetClassLongPtr (m_hWnd, GCLP_HBRBACKGROUND, (long)::GetSysColorBrush(COLOR_BTNFACE)); #pragma warning (default : 4311) //---------------------------------------------- // dialog template MUST specify that the dialog // is an invisible child window //---------------------------------------------- SetDlgCtrlID(nID); CRect rect; GetWindowRect(&rect); m_sizeDefault = rect.Size(); // set fixed size m_szHorz = m_sizeDefault; // set the size members m_szVert = m_sizeDefault; m_szFloat = m_sizeDefault; //----------------------- // force WS_CLIPSIBLINGS //----------------------- ModifyStyle(0, WS_CLIPSIBLINGS); if (!ExecuteDlgInit(lpszTemplateName)) return FALSE; //-------------------------------------------------------- // force the size to zero - resizing bar will occur later //-------------------------------------------------------- SetWindowPos(NULL, 0, 0, 0, 0, SWP_NOZORDER|SWP_NOACTIVATE|SWP_SHOWWINDOW); if (lpszWindowName != NULL) { SetWindowText (lpszWindowName); } return TRUE; }
BOOL CDialogBar::Create(CWnd* pParentWnd, LPCTSTR lpszTemplateName, UINT nStyle, UINT nID) { ASSERT(pParentWnd != NULL); ASSERT(lpszTemplateName != NULL); #ifdef _DEBUG // dialog template must exist and be invisible with WS_CHILD set if (!_AfxCheckDialogTemplate(lpszTemplateName, TRUE)) { ASSERT(FALSE); // invalid dialog template name PostNcDestroy(); // cleanup if Create fails too soon return FALSE; } #endif //_DEBUG // allow chance to modify styles m_dwStyle = (nStyle & CBRS_ALL); CREATESTRUCT cs; memset(&cs, 0, sizeof(cs)); cs.lpszClass = _afxWndControlBar; cs.style = (DWORD)nStyle | WS_CHILD; cs.hMenu = (HMENU)nID; cs.hInstance = AfxGetInstanceHandle(); cs.hwndParent = pParentWnd->GetSafeHwnd(); if (!PreCreateWindow(cs)) return FALSE; // create a modeless dialog #ifndef _AFX_NO_OCC_SUPPORT m_lpszTemplateName = lpszTemplateName; #endif // initialize common controls VERIFY(AfxDeferRegisterClass(AFX_WNDCOMMCTLS_REG)); AfxDeferRegisterClass(AFX_WNDCOMMCTLSNEW_REG); BOOL bSuccess = CreateDlg(lpszTemplateName, pParentWnd); #ifndef _AFX_NO_OCC_SUPPORT m_lpszTemplateName = NULL; #endif if (!bSuccess) return FALSE; // dialog template MUST specify that the dialog // is an invisible child window SetDlgCtrlID(nID); CRect rect; GetWindowRect(&rect); m_sizeDefault = rect.Size(); // set fixed size // force WS_CLIPSIBLINGS ModifyStyle(0, WS_CLIPSIBLINGS); if (!ExecuteDlgInit(lpszTemplateName)) return FALSE; // force the size to zero - resizing bar will occur later SetWindowPos(NULL, 0, 0, 0, 0, SWP_NOZORDER|SWP_NOACTIVATE|SWP_SHOWWINDOW); return TRUE; }
// virtual override of CWnd::Create BOOL CFormView::Create(LPCTSTR /*lpszClassName*/, LPCTSTR /*lpszWindowName*/, DWORD dwRequestedStyle, const RECT& rect, CWnd* pParentWnd, UINT nID, CCreateContext* pContext) { ASSERT(pParentWnd != NULL); ASSERT(m_lpszTemplateName != NULL); m_pCreateContext = pContext; // save state for later OnCreate #ifdef _DEBUG // dialog template must exist and be invisible with WS_CHILD set if (!_AfxCheckDialogTemplate(m_lpszTemplateName, TRUE)) { ASSERT(FALSE); // invalid dialog template name PostNcDestroy(); // cleanup if Create fails too soon return FALSE; } #endif //_DEBUG // initialize common controls VERIFY(AfxDeferRegisterClass(AFX_WNDCOMMCTLS_REG)); AfxDeferRegisterClass(AFX_WNDCOMMCTLSNEW_REG); // call PreCreateWindow to get prefered extended style CREATESTRUCT cs; memset(&cs, 0, sizeof(CREATESTRUCT)); if (dwRequestedStyle == 0) dwRequestedStyle = AFX_WS_DEFAULT_VIEW; cs.style = dwRequestedStyle; if (!PreCreateWindow(cs)) return FALSE; // create a modeless dialog if (!CreateDlg(m_lpszTemplateName, pParentWnd)) return FALSE; m_pCreateContext = NULL; // we use the style from the template - but make sure that // the WS_BORDER bit is correct // the WS_BORDER bit will be whatever is in dwRequestedStyle ModifyStyle(WS_BORDER|WS_CAPTION, cs.style & (WS_BORDER|WS_CAPTION)); ModifyStyleEx(WS_EX_CLIENTEDGE, cs.dwExStyle & WS_EX_CLIENTEDGE); SetDlgCtrlID(nID); CRect rectTemplate; GetWindowRect(rectTemplate); SetScrollSizes(MM_TEXT, rectTemplate.Size()); // initialize controls etc if (!ExecuteDlgInit(m_lpszTemplateName)) return FALSE; // force the size requested SetWindowPos(NULL, rect.left, rect.top, rect.right - rect.left, rect.bottom - rect.top, SWP_NOZORDER|SWP_NOACTIVATE); // make visible if requested if (dwRequestedStyle & WS_VISIBLE) ShowWindow(SW_NORMAL); return TRUE; }