LRESULT CFunctionPage::OnSize(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled) { if (wParam == SIZE_RESTORED) { CRect rc, rc2; CWindow wnd = GetDlgItem(IDC_COMBO_CLASSES); wnd.GetWindowRect(rc); ScreenToClient(rc); CSize NewSize(LOWORD(lParam), HIWORD(lParam)); CRect CheckRc(0, 0, 1,12); MapDialogRect(CheckRc); rc2.left = 0; rc2.right = NewSize.cx; rc2.top = rc.bottom + CheckRc.Height(); rc2.bottom = NewSize.cy; m_SplitMessages.MoveWindow(rc2); if (!m_bShowWindow && lParam) { m_bShowWindow = true; m_SplitMessages.SetSplitterPos(m_WindowSettings.m_MesSpitPos); m_SplitFunctions.SetSplitterPos(m_WindowSettings.m_FuncSplitPos); } } return 0; }
LRESULT CEditColorDlg::OnLButtonUp( UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled ) { RECT rcColorWnd = { 0 }; CWindow ColorWnd = GetDlgItem( IDC_COLOR ); ColorWnd.GetWindowRect( &rcColorWnd ); DWORD dwPos = GetMessagePos(); POINT pt = { LOWORD( dwPos ), HIWORD( dwPos ) }; if( !PtInRect( &rcColorWnd, pt ) ) return( 0 ); CHOOSECOLOR cc; cc.lStructSize = sizeof( CHOOSECOLOR ); cc.hwndOwner = m_hWnd; cc.hInstance = NULL; cc.rgbResult = m_uColor; cc.lpCustColors = g_CustomColors; cc.Flags = CC_RGBINIT | CC_FULLOPEN; cc.lCustData = 0; cc.lpfnHook = NULL; cc.lpTemplateName = NULL; if( ChooseColor( &cc ) ) { m_uColor = cc.rgbResult; ShowColorInfo(); } return( 0 ); }
LRESULT OnInitDialog(HWND /*wParam*/, LPARAM /*lParam*/) { CWaitCursor cursor; CenterWindow(GetParent()); if ( !m_prompt.IsEmpty() ) { SetWindowText(m_prompt); } CWindow wndPlaceholder = GetDlgItem(IDC_STATIC_PLACEHOLDER); CRect rc; wndPlaceholder.GetWindowRect(rc); ScreenToClient(rc); wndPlaceholder.DestroyWindow(); m_view.Create(*this, rc); m_view.SetDlgCtrlID(IDC_STATIC_PLACEHOLDER); m_view.SetWindowPos(HWND_TOP, rc, 0); m_view.SendMessage(CWM_RESET); m_view.Select(m_attr); m_view.Invalidate(); m_view.SetFocus(); return TRUE; }
LRESULT CEditColorDlg::OnSetCursor( UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled ) { RECT rcColorWnd = { 0 }; CWindow ColorWnd = GetDlgItem( IDC_COLOR ); ColorWnd.GetWindowRect( &rcColorWnd ); DWORD dwPos = GetMessagePos(); POINT pt = { LOWORD( dwPos ), HIWORD( dwPos ) }; if( PtInRect( &rcColorWnd, pt ) ) SetCursor( m_hCursorHand ); else bHandled = FALSE; return( 0 ); }
HWND CLayoutControl::CalcRect( CWindow wndLayout, LPCRECT prcLayout, LPRECT prc ) { ATLASSERT( wndLayout.IsWindow() ); ATLASSERT( prcLayout != NULL ); ATLASSERT( prc != NULL ); // Retrieve the control's window handle CWindow wndControl = wndLayout.GetDlgItem( m_nID ); ATLASSERT( wndControl.IsWindow() ); // Get the control's current bounds CRect rcOld; wndControl.GetWindowRect(rcOld); wndLayout.ScreenToClient(rcOld); CopyRect( prc, rcOld ); if ( m_nAnchor & LAYOUT_ANCHOR_LEFT ) { prc->left = prcLayout->left + m_rcMargins.left; if ( !(m_nAnchor & LAYOUT_ANCHOR_RIGHT) ) prc->right = prc->left + rcOld.Width(); } if ( m_nAnchor & LAYOUT_ANCHOR_TOP ) { prc->top = prcLayout->top + m_rcMargins.top; if ( !(m_nAnchor & LAYOUT_ANCHOR_BOTTOM) ) prc->bottom = prc->top + rcOld.Height(); } if ( m_nAnchor & LAYOUT_ANCHOR_RIGHT ) { prc->right = prcLayout->right - m_rcMargins.right; if ( !(m_nAnchor & LAYOUT_ANCHOR_LEFT) ) prc->left = prc->right - rcOld.Width(); } if ( m_nAnchor & LAYOUT_ANCHOR_BOTTOM ) { prc->bottom = prcLayout->bottom - m_rcMargins.bottom; if ( !(m_nAnchor & LAYOUT_ANCHOR_TOP) ) prc->top = prc->bottom - rcOld.Height(); } return (HWND) wndControl; }
LRESULT CExtractDlg::OnInitDialog(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/) { CenterWindow(GetParent()); m_ctlList.SubclassWindow( GetDlgItem( IDC_OUTTOOLBAR ) ); m_ctlList.AddItem(0, 0, L"Page1"); m_ctlList.AddItem(1, 0, L"Page2"); m_ctlList.AddItem(2, 0, L"Page3"); m_ctlList.SelectItem(1); CWindow workSpase = GetDlgItem(IDC_WORK_SPACE); CRect rcClient; workSpase.GetWindowRect(rcClient); ScreenToClient(rcClient); //workSpase.ShowWindow(SW_HIDE); m_mapNamePage.Create(m_hWnd, IDD_MAP_NAME_PAGE); m_mapNamePage.MoveWindow(rcClient); m_mapNamePage.ShowWindow(SW_SHOW); return TRUE; }
LRESULT PreviewWindow::OnCreate(HWND hwnd, WPARAM wParam, LPARAM lParam) { CWindow window; window.Attach(hwnd); CRect rcClient; window.GetWindowRect(rcClient); m_d3d = Direct3DCreate9(D3D_SDK_VERSION); D3DPRESENT_PARAMETERS d3dpp; ZeroMemory(&d3dpp, sizeof(d3dpp)); d3dpp.BackBufferFormat = D3DFMT_UNKNOWN; d3dpp.BackBufferCount = 2; d3dpp.Windowed = TRUE; d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD; d3dpp.hDeviceWindow = hwnd; d3dpp.PresentationInterval = D3DPRESENT_INTERVAL_DEFAULT; HRESULT hr = m_d3d->CreateDevice(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, hwnd, D3DCREATE_HARDWARE_VERTEXPROCESSING | D3DCREATE_MULTITHREADED, &d3dpp, &m_device); ATLASSERT(S_OK == hr); return 0; }
void TreePropertySheet::hideTab() { CRect rcClient, rcTab, rcPage, rcWindow; CWindow tab = GetTabControl(); CWindow page = IndexToHwnd(this->m_psh.nStartPage); GetClientRect(&rcClient); tab.GetWindowRect(&rcTab); page.GetClientRect(&rcPage); page.MapWindowPoints(m_hWnd,&rcPage); GetWindowRect(&rcWindow); ::MapWindowPoints(NULL, m_hWnd, (LPPOINT)&rcTab, 2); ScrollWindow(SPACE_LEFT + TREE_WIDTH + SPACE_MID-rcPage.left, SPACE_TOP-rcPage.top); rcWindow.right += SPACE_LEFT + TREE_WIDTH + SPACE_MID - rcPage.left - (rcClient.Width()-rcTab.right) + SPACE_RIGHT; rcWindow.bottom += SPACE_TOP - rcPage.top; tab.ShowWindow(SW_HIDE); MoveWindow(&rcWindow, TRUE); tabContainer.SubclassWindow(tab.m_hWnd); }
LRESULT CBookmarksView::OnInitDialog(HWND /*hWnd*/, LPARAM /*lParam*/) { SetMsgHandled(false); DlgResize_Init(false, false); CRect rc(0, 0, 0, 0); CWindow wndPlaceholder = GetDlgItem(IDC_BOOKMARKS_PLACEHOLDER); wndPlaceholder.GetWindowRect(rc); ScreenToClient(rc); wndPlaceholder.DestroyWindow(); const DWORD dwViewStyle = WS_CHILD | WS_VISIBLE | LVS_REPORT | LVS_SHOWSELALWAYS | LVS_SORTASCENDING | WS_CLIPSIBLINGS | WS_CLIPCHILDREN; if (!m_list.Create(dwViewStyle, rc, CWnd::FromHandle(m_hWnd), IDC_BOOKMARKS_PLACEHOLDER)) { TRACE0("Failed to create Class View\n"); return -1; // fail to create } m_list.SetOwner(CWnd::FromHandle(m_hWnd)); m_list.m_sortedCol = 0; m_list.m_sortAscending = false; m_list.SetExtendedStyle(m_list.GetExtendedStyle() | LVS_EX_FULLROWSELECT); m_list.EnableMultipleSort(true); int col = 0; m_list.InsertColumn(col++, _T("Line")); m_list.InsertColumn(col++, _T("Type")); m_list.InsertColumn(col++, _T("User")); m_list.InsertColumn(col++, _T("Module")); m_list.InsertColumn(col++, _T("Attribute")); m_list.InsertColumn(col++, _T("Attr Type")); m_list.InsertColumn(col++, _T("Description")); for (int i = 0; i < col; ++i) { m_list.SetColumnWidth(i, LVSCW_AUTOSIZE_USEHEADER); } if (!m_listMaster.Create(dwViewStyle, rc, CWnd::FromHandle(m_hWnd), IDC_BOOKMARKS_PLACEHOLDER)) { TRACE0("Failed to create Class View\n"); return -1; // fail to create } col = 0; m_listMaster.InsertColumn(col++, _T("Line")); m_listMaster.InsertColumn(col++, _T("Type")); m_listMaster.InsertColumn(col++, _T("User")); m_listMaster.InsertColumn(col++, _T("Module")); m_listMaster.InsertColumn(col++, _T("Attribute")); m_listMaster.InsertColumn(col++, _T("Attr Type")); m_listMaster.InsertColumn(col++, _T("Description")); boost::filesystem::path iniPath; GetIniPath(iniPath); CComPtr<IConfig> iniFile = CreateIConfig(QUERYBUILDER_INI, iniPath); m_checkMine = iniFile->Get(GLOBAL_BOOKMARKS_SHOWMINE); m_checkTodos = iniFile->Get(GLOBAL_BOOKMARKS_SHOWTODOS); m_checkHacks = iniFile->Get(GLOBAL_BOOKMARKS_SHOWHACKS); m_list.m_sortedCol = iniFile->Get(GLOBAL_BOOKMARKS_SORTCOLUMN); m_list.m_sortAscending = iniFile->Get(GLOBAL_BOOKMARKS_SORTASCENDING); DoDataExchange(); return 0; }
void CDataEntryDlg::ActiveEntryModePage(int nMode) { CTabPage* pPage = m_apPages[nMode]; if (pPage == NULL) { switch (nMode) { case 0: case 2: pPage = new CNumericEntryPage; ((CNumericEntryPage *)pPage)->m_pExpert = m_pExpert; break; case 1: break; case 3: pPage = new CPushbuttonEntryPage; ((CPushbuttonEntryPage *)pPage)->m_pExpert = m_pExpert; break; default: break; } m_apPages[nMode] = pPage; if (pPage != NULL) { CWindow winRect; winRect.Attach(GetDlgItem(IDC_RECT)); RECT rc; winRect.GetWindowRect(&rc); ScreenToClient(&rc); pPage->Create(m_hWnd); rc.bottom -= 4; pPage->MoveTo(rc.left, rc.top, rc.right - rc.left, rc.bottom - rc.top); } } switch (nMode) { case 0: case 2: ((CNumericEntryPage *)pPage)->m_strScript = m_pExpert->m_strActionScript; break; case 1: break; case 3: ((CPushbuttonEntryPage *)pPage)->m_strScript = m_pExpert->m_strActionScript; break; default: break; } for (int i = 0; i < 4; i++) { pPage = m_apPages[i]; if (pPage != NULL) pPage->Show(nMode == i); } }
void set(CWindow& wnd, CWindow& owner) { wnd.GetWindowRect(this); owner.ScreenToClient(this); }