void EditorTab::Resize() { RECT rcmain, rcvsplitter, rchsplitter; wyInt32 hpos, vpos, width, height; wyInt32 tabcount, selindex; CTCITEM item; MDIWindow *pcquerywnd =(MDIWindow*)GetWindowLong(m_hwndparent, GWL_USERDATA); FrameWindowSplitter *pcqueryvsplitter = pcquerywnd->GetVSplitter(); FrameWindowSplitter *pcqueryhsplitter = pcquerywnd->GetHSplitter(); VERIFY(GetClientRect(m_hwndparent, &rcmain)); VERIFY(GetWindowRect(pcqueryvsplitter->GetHwnd(), &rcvsplitter)); VERIFY(GetWindowRect(pcqueryhsplitter->GetHwnd(), &rchsplitter)); VERIFY(MapWindowPoints(NULL, m_hwndparent,(LPPOINT)&rcvsplitter, 2)); VERIFY(MapWindowPoints(NULL, m_hwndparent,(LPPOINT)&rchsplitter, 2)); hpos = (rcvsplitter.right); vpos = 5; width = (rcmain.right - hpos) - 2; if(pcquerywnd->m_iseditwindow == wyTrue) height = (rchsplitter.top - rcvsplitter.top) - 3; else height = 0; SendMessage(m_hwnd, WM_SETREDRAW, FALSE, NULL); VERIFY(MoveWindow(m_hwnd, hpos, vpos, width, height, TRUE)); SendMessage(m_hwnd, WM_SETREDRAW, TRUE, NULL); item.m_mask = CTBIF_LPARAM; selindex = CustomTab_GetCurSel(m_hwnd); for(tabcount = 0; tabcount < CustomTab_GetItemCount(m_hwnd); tabcount++) { CustomTab_GetItem(m_hwnd, tabcount, &item); EditorBase *eb =(EditorBase *)item.m_lparam; eb->Resize(); pGlobals->m_pcmainwin->m_connection->HandleEditorControls(eb->m_hwnd, eb->m_hwndhelp, eb->m_hwndfilename, eb->m_save, tabcount, selindex); } InvalidateRect(m_hwnd, NULL, TRUE); return; }
void Announcements::Resize(HWND hwnd, wyBool isstart) { RECT rcmain, rcvsplitter; wyInt32 ret; wyInt32 hpos, vpos_ob, vpos, width, height, ob_height, ypos; MDIWindow *wnd = (MDIWindow*)GetWindowLongPtr(hwnd, GWLP_USERDATA); FrameWindowSplitter *pcqueryvsplitter = wnd->GetVSplitter(); VERIFY(GetClientRect(hwnd, &rcmain)); VERIFY(GetWindowRect(pcqueryvsplitter->GetHwnd(), &rcvsplitter)); VERIFY(MapWindowPoints(NULL, hwnd,(LPPOINT)&rcvsplitter, 2)); ob_height = wnd->m_pcqueryobject->m_height; hpos = 2; ypos = 2; vpos_ob = (ob_height + 10) > 22 ? ob_height + 10: 22; width = rcvsplitter.left-2; height = rcmain.bottom - (2 * vpos_ob) - 10; m_htmlh = (wyInt32)(0.3 * height); vpos = (vpos_ob * 2)+ 8 + height - m_htmlh; if( wnd->m_isanncreate == wyFalse ) { VERIFY(ret = MoveWindow(m_hwndHTML, 0, ypos, width, m_htmlh, TRUE)); m_htmlw = width; } else { VERIFY(ret = MoveWindow(m_hwndHTML, m_htmlx, ypos, width, m_htmlh, TRUE)); m_htmlw = width; } if(!(wnd->m_isanncreate || isstart)) wnd->m_isanncreate = wyTrue; VERIFY(ret = MoveWindow(m_hwnd, hpos, vpos-ypos, width, m_htmlh+2, TRUE)); }