void CShaderEditorDlg::OnMouseMove(UINT nFlags, CPoint point) { if(m_fSplitterGrabbed) { CRect r, rs, ro; GetClientRect(&r); m_srcdata.GetWindowRect(&rs); m_output.GetWindowRect(&ro); ScreenToClient(&rs); ScreenToClient(&ro); int dist = ro.top - rs.bottom; int avgdist = dist / 2; rs.bottom = min(max(point.y, rs.top + 40), ro.bottom - 40) - avgdist; ro.top = rs.bottom + dist; m_srcdata.MoveWindow(&rs); m_output.MoveWindow(&ro); int div = 100 * ((rs.bottom + ro.top) / 2) / (ro.bottom - rs.top); RemoveAnchor(IDC_EDIT1); RemoveAnchor(IDC_EDIT2); AddAnchor(IDC_EDIT1, TOP_LEFT, CSize(100, div)/*BOTTOM_RIGHT*/); AddAnchor(IDC_EDIT2, CSize(0, div)/*BOTTOM_LEFT*/, BOTTOM_RIGHT); } __super::OnMouseMove(nFlags, point); }
void CSICommitDlg::DoSize(int /*delta*/) { RemoveAnchor(IDC_SUBMIT_TO_CP_LABEL); RemoveAnchor(IDC_SUBMIT_CP_COMBOBOX); RemoveAnchor(IDC_CREATE_CP_BUTTON); RemoveAnchor(IDC_SUBMIT_CP_BUTTON); RemoveAnchor(IDCANCEL); ArrangeLayout(); }
void CRepositoryBrowser::HandleDividerMove(CPoint point, bool bDraw) { RECT rect, tree, list, treelist, treelistclient; // create an union of the tree and list control rectangle GetDlgItem(IDC_REPOLIST)->GetWindowRect(&list); GetDlgItem(IDC_REPOTREE)->GetWindowRect(&tree); UnionRect(&treelist, &tree, &list); treelistclient = treelist; ScreenToClient(&treelistclient); ClientToScreen(&point); GetClientRect(&rect); ClientToScreen(&rect); CPoint point2 = point; if (point2.x < treelist.left + REPOBROWSER_CTRL_MIN_WIDTH) point2.x = treelist.left + REPOBROWSER_CTRL_MIN_WIDTH; if (point2.x > treelist.right - REPOBROWSER_CTRL_MIN_WIDTH) point2.x = treelist.right - REPOBROWSER_CTRL_MIN_WIDTH; point.x -= rect.left; point.y -= treelist.top; OffsetRect(&treelist, -treelist.left, -treelist.top); if (point.x < treelist.left+REPOBROWSER_CTRL_MIN_WIDTH) point.x = treelist.left+REPOBROWSER_CTRL_MIN_WIDTH; if (point.x > treelist.right-REPOBROWSER_CTRL_MIN_WIDTH) point.x = treelist.right-REPOBROWSER_CTRL_MIN_WIDTH; if (bDraw) { CDC * pDC = GetDC(); DrawXorBar(pDC, oldx + 2, treelistclient.top, 4, treelistclient.bottom - treelistclient.top - 2); ReleaseDC(pDC); } oldx = point.x; oldy = point.y; //position the child controls GetDlgItem(IDC_REPOTREE)->GetWindowRect(&treelist); treelist.right = point2.x - 2; ScreenToClient(&treelist); RemoveAnchor(IDC_REPOTREE); GetDlgItem(IDC_REPOTREE)->MoveWindow(&treelist); GetDlgItem(IDC_REPOLIST)->GetWindowRect(&treelist); treelist.left = point2.x + 2; ScreenToClient(&treelist); RemoveAnchor(IDC_REPOLIST); GetDlgItem(IDC_REPOLIST)->MoveWindow(&treelist); AddAnchor(IDC_REPOTREE, TOP_LEFT, BOTTOM_LEFT); AddAnchor(IDC_REPOLIST, TOP_LEFT, BOTTOM_RIGHT); }
void CServerWnd::ReattachAnchors() { RemoveAnchor(serverlistctrl); RemoveAnchor(StatusSelector); RemoveAnchor(IDC_LOGRESET); RemoveAnchor(*servermsgbox); RemoveAnchor(*logbox); RemoveAnchor(*debuglog); RemoveAnchor(*leecherlog); //Xman Anti-Leecher-Log AddAnchor(serverlistctrl, TOP_LEFT, CSize(100, thePrefs.GetSplitterbarPositionServer())); AddAnchor(StatusSelector, CSize(0, thePrefs.GetSplitterbarPositionServer()), BOTTOM_RIGHT); AddAnchor(IDC_LOGRESET, MIDDLE_RIGHT); AddAnchor(*servermsgbox, CSize(0, thePrefs.GetSplitterbarPositionServer()), BOTTOM_RIGHT); AddAnchor(*logbox, CSize(0, thePrefs.GetSplitterbarPositionServer()), BOTTOM_RIGHT); AddAnchor(*debuglog, CSize(0, thePrefs.GetSplitterbarPositionServer()), BOTTOM_RIGHT); AddAnchor(*leecherlog, CSize(0, thePrefs.GetSplitterbarPositionServer()), BOTTOM_RIGHT); //Xman Anti-Leecher-Log GetDlgItem(IDC_LOGRESET)->Invalidate(); if (servermsgbox->IsWindowVisible()) servermsgbox->Invalidate(); if (logbox->IsWindowVisible()) logbox->Invalidate(); if (debuglog->IsWindowVisible()) debuglog->Invalidate(); //Xman Anti-Leecher-Log if (leecherlog->IsWindowVisible()) leecherlog->Invalidate(); //Xman end }
void CIrcWnd::DoResize(int iDelta) { CSplitterControl::ChangeWidth(&m_wndNicks, iDelta); m_wndNicks.SetColumnWidth(0, LVSCW_AUTOSIZE_USEHEADER); CSplitterControl::ChangeWidth(&m_wndChanList, -iDelta, CW_RIGHTALIGN); CSplitterControl::ChangeWidth(&m_wndChanSel, -iDelta, CW_RIGHTALIGN); if (m_wndChanSel.m_pCurrentChannel && m_wndChanSel.m_pCurrentChannel->m_wndLog.m_hWnd) { CRect rcChannelPane; m_wndChanList.GetWindowRect(&rcChannelPane); ScreenToClient(&rcChannelPane); Channel *pChannel = m_wndChanSel.m_pCurrentChannel; if (pChannel->m_wndTitle.m_hWnd) CSplitterControl::ChangeWidth(&pChannel->m_wndTitle, -iDelta, CW_RIGHTALIGN); if (pChannel->m_wndSplitter.m_hWnd) CSplitterControl::ChangeWidth(&pChannel->m_wndSplitter, -iDelta, CW_RIGHTALIGN); if (pChannel->m_wndLog.m_hWnd) CSplitterControl::ChangeWidth(&pChannel->m_wndLog, -iDelta, CW_RIGHTALIGN); } CRect rcSpl; m_wndSplitterHorz.GetWindowRect(rcSpl); ScreenToClient(rcSpl); thePrefs.SetSplitterbarPositionIRC(rcSpl.left); RemoveAnchor(IDC_BN_IRCCONNECT); AddAnchor(IDC_BN_IRCCONNECT, BOTTOM_LEFT); RemoveAnchor(IDC_CLOSECHAT); AddAnchor(IDC_CLOSECHAT, BOTTOM_LEFT); RemoveAnchor(m_wndFormat); AddAnchor(m_wndFormat, BOTTOM_LEFT); RemoveAnchor(m_wndInput); AddAnchor(m_wndInput, BOTTOM_LEFT, BOTTOM_RIGHT); RemoveAnchor(m_wndNicks); AddAnchor(m_wndNicks, TOP_LEFT, BOTTOM_LEFT); RemoveAnchor(m_wndChanList); AddAnchor(m_wndChanList, TOP_LEFT, BOTTOM_RIGHT); RemoveAnchor(m_wndChanSel); AddAnchor(m_wndChanSel, TOP_LEFT, TOP_RIGHT); RemoveAnchor(m_wndSplitterHorz); AddAnchor(m_wndSplitterHorz, TOP_LEFT, BOTTOM_LEFT); CRect rcWnd; GetWindowRect(rcWnd); ScreenToClient(rcWnd); m_wndSplitterHorz.SetRange(rcWnd.left + SPLITTER_HORZ_RANGE_MIN + SPLITTER_HORZ_WIDTH/2, rcWnd.left + SPLITTER_HORZ_RANGE_MAX - SPLITTER_HORZ_WIDTH/2); Invalidate(); UpdateWindow(); }
//MORPH START - Added by SiRoB, Splitting Bar [O²] void CIrcWnd::DoResize(int delta) { CSplitterControl::ChangeWidth(GetDlgItem(IDC_NICKLIST), delta); CSplitterControl::ChangeWidth(GetDlgItem(IDC_INPUTWINDOW), -delta, CW_RIGHTALIGN); CSplitterControl::ChangeWidth(GetDlgItem(IDC_TITLEWINDOW), -delta, CW_RIGHTALIGN); CSplitterControl::ChangeWidth(GetDlgItem(IDC_SERVERCHANNELLIST), -delta, CW_RIGHTALIGN); CSplitterControl::ChangeWidth(GetDlgItem(IDC_STATUSWINDOW), -delta, CW_RIGHTALIGN); CSplitterControl::ChangeWidth(GetDlgItem(IDC_TAB2), -delta, CW_RIGHTALIGN); CRect rcChannel; m_serverChannelList.GetWindowRect(&rcChannel); ScreenToClient(&rcChannel); if (m_channelselect.m_pCurrentChannel) m_channelselect.m_pCurrentChannel->log.SetWindowPos(NULL, rcChannel.left, rcChannel.top, rcChannel.Width(), rcChannel.Height(), SWP_NOZORDER); CRect rcW; GetWindowRect(rcW); ScreenToClient(rcW); CRect rcspl; GetDlgItem(IDC_NICKLIST)->GetClientRect(rcspl); thePrefs.SetSplitterbarPositionIRC(rcspl.right); RemoveAnchor(IDC_BN_IRCCONNECT); AddAnchor(IDC_BN_IRCCONNECT,BOTTOM_LEFT); RemoveAnchor(IDC_CLOSECHAT); AddAnchor(IDC_CLOSECHAT,BOTTOM_LEFT); RemoveAnchor(IDC_INPUTWINDOW); AddAnchor(IDC_INPUTWINDOW,BOTTOM_LEFT,BOTTOM_RIGHT); RemoveAnchor(IDC_NICKLIST); AddAnchor(IDC_NICKLIST,TOP_LEFT,BOTTOM_LEFT); RemoveAnchor(IDC_TITLEWINDOW); AddAnchor(IDC_TITLEWINDOW,TOP_LEFT,TOP_RIGHT); RemoveAnchor(IDC_SERVERCHANNELLIST); AddAnchor(IDC_SERVERCHANNELLIST,TOP_LEFT,BOTTOM_RIGHT); RemoveAnchor(IDC_TAB2); AddAnchor(IDC_TAB2,TOP_LEFT, TOP_RIGHT); RemoveAnchor(m_wndSplitterIRC); AddAnchor(m_wndSplitterIRC,TOP_LEFT, BOTTOM_LEFT); m_wndSplitterIRC.SetRange(rcW.left+190, rcW.left+700); //initCSize(thePrefs.GetSplitterbarPositionIRC()); m_nicklist.SetColumnWidth(0,rcspl.Width()-75); m_nicklist.SetColumnWidth(1,70); Invalidate(); UpdateWindow(); }
void CServerWnd::ReattachAnchors() { RemoveAnchor(serverlistctrl); RemoveAnchor(StatusSelector); RemoveAnchor(IDC_LOGRESET); RemoveAnchor(*servermsgbox); RemoveAnchor(*logbox); RemoveAnchor(*debuglog); AddAnchor(serverlistctrl, TOP_LEFT, ANCHOR(100, thePrefs.GetSplitterbarPositionServer())); AddAnchor(StatusSelector, ANCHOR(0, thePrefs.GetSplitterbarPositionServer()), BOTTOM_RIGHT); AddAnchor(IDC_LOGRESET, MIDDLE_RIGHT); AddAnchor(*servermsgbox, ANCHOR(0, thePrefs.GetSplitterbarPositionServer()), BOTTOM_RIGHT); AddAnchor(*logbox, ANCHOR(0, thePrefs.GetSplitterbarPositionServer()), BOTTOM_RIGHT); AddAnchor(*debuglog, ANCHOR(0, thePrefs.GetSplitterbarPositionServer()), BOTTOM_RIGHT); GetDlgItem(IDC_LOGRESET)->Invalidate(); if (servermsgbox->IsWindowVisible()) servermsgbox->Invalidate(); if (logbox->IsWindowVisible()) logbox->Invalidate(); if (debuglog->IsWindowVisible()) debuglog->Invalidate(); }
void CChatWnd::DoResize(int delta) { CSplitterControl::ChangeWidth(GetDlgItem(IDC_LIST2), delta); CSplitterControl::ChangeWidth(GetDlgItem(IDC_FRIENDS_MSG), delta); CSplitterControl::ChangeWidth(GetDlgItem(IDC_FRIENDS_NAME_EDIT), delta); CSplitterControl::ChangeWidth(GetDlgItem(IDC_FRIENDS_USERHASH_EDIT), delta); CSplitterControl::ChangeWidth(GetDlgItem(IDC_FRIENDS_CLIENTE_EDIT), delta); CSplitterControl::ChangeWidth(GetDlgItem(IDC_FRIENDS_IDENTIFICACION_EDIT), delta); CSplitterControl::ChangeWidth(GetDlgItem(IDC_FRIENDS_SUBIDO_EDIT), delta); CSplitterControl::ChangeWidth(GetDlgItem(IDC_FRIENDS_DESCARGADO_EDIT), delta); CSplitterControl::ChangeWidth(GetDlgItem(IDC_CHATSEL), -delta, CW_RIGHTALIGN); CSplitterControl::ChangePos(GetDlgItem(IDC_MESSAGES_LBL), -delta, 0); CSplitterControl::ChangePos(GetDlgItem(IDC_MESSAGEICON), -delta, 0); CRect rcW; GetWindowRect(rcW); ScreenToClient(rcW); CRect rcspl; GetDlgItem(IDC_LIST2)->GetClientRect(rcspl); thePrefs.SetSplitterbarPositionFriend(rcspl.right); RemoveAnchor(m_wndSplitterchat); AddAnchor(m_wndSplitterchat, TOP_LEFT); RemoveAnchor(IDC_LIST2); AddAnchor(IDC_LIST2, TOP_LEFT, BOTTOM_LEFT); RemoveAnchor(IDC_FRIENDS_MSG); AddAnchor(IDC_FRIENDS_MSG, BOTTOM_LEFT, BOTTOM_LEFT); RemoveAnchor(IDC_CHATSEL); AddAnchor(IDC_CHATSEL, TOP_LEFT, BOTTOM_RIGHT); RemoveAnchor(IDC_MESSAGES_LBL); AddAnchor(IDC_MESSAGES_LBL, TOP_LEFT); RemoveAnchor(IDC_MESSAGEICON); AddAnchor(IDC_MESSAGEICON, TOP_LEFT); RemoveAnchor(IDC_FRIENDS_NAME_EDIT); RemoveAnchor(IDC_FRIENDS_USERHASH_EDIT); RemoveAnchor(IDC_FRIENDS_CLIENTE_EDIT); RemoveAnchor(IDC_FRIENDS_IDENTIFICACION_EDIT); RemoveAnchor(IDC_FRIENDS_SUBIDO_EDIT); RemoveAnchor(IDC_FRIENDS_DESCARGADO_EDIT); AddAnchor(IDC_FRIENDS_NAME_EDIT, BOTTOM_LEFT); AddAnchor(IDC_FRIENDS_USERHASH_EDIT, BOTTOM_LEFT); AddAnchor(IDC_FRIENDS_CLIENTE_EDIT, BOTTOM_LEFT); AddAnchor(IDC_FRIENDS_IDENTIFICACION_EDIT, BOTTOM_LEFT); AddAnchor(IDC_FRIENDS_SUBIDO_EDIT, BOTTOM_LEFT); AddAnchor(IDC_FRIENDS_DESCARGADO_EDIT, BOTTOM_LEFT); m_wndSplitterchat.SetRange(rcW.left+SPLITTER_RANGE_WIDTH, rcW.left+SPLITTER_RANGE_HEIGHT); m_FriendListCtrl.SaveSettings(); m_FriendListCtrl.DeleteColumn(0); m_FriendListCtrl.Init(); Invalidate(); UpdateWindow(); }
void CSharedFilesWnd::DoResize(int delta) { CSplitterControl::ChangeWidth(GetDlgItem(IDC_SHAREDDIRSTREE), delta); CSplitterControl::ChangePos(GetDlgItem(IDC_CURSESSION_LBL), -delta, 0); CSplitterControl::ChangePos(GetDlgItem(IDC_FSTATIC4), -delta, 0); CSplitterControl::ChangePos(GetDlgItem(IDC_SREQUESTED), -delta, 0); CSplitterControl::ChangePos(GetDlgItem(IDC_FSTATIC5), -delta, 0); CSplitterControl::ChangePos(GetDlgItem(IDC_SACCEPTED), -delta, 0); CSplitterControl::ChangePos(GetDlgItem(IDC_FSTATIC6), -delta, 0); CSplitterControl::ChangePos(GetDlgItem(IDC_STRANSFERRED), -delta, 0); CSplitterControl::ChangePos(GetDlgItem(IDC_STATISTICS), -delta, 0); CSplitterControl::ChangePos(GetDlgItem(IDC_SFLIST), -delta, 0); CSplitterControl::ChangeWidth(GetDlgItem(IDC_STATISTICS), -delta); CSplitterControl::ChangeWidth(GetDlgItem(IDC_SFLIST), -delta); CSplitterControl::ChangePos(GetDlgItem(IDC_POPBAR), -delta, 0); CSplitterControl::ChangePos(GetDlgItem(IDC_POPBAR2), -delta, 0); CSplitterControl::ChangePos(GetDlgItem(IDC_POPBAR3), -delta, 0); CSplitterControl::ChangeWidth(GetDlgItem(IDC_POPBAR), -delta); CSplitterControl::ChangeWidth(GetDlgItem(IDC_POPBAR2), -delta); CSplitterControl::ChangeWidth(GetDlgItem(IDC_POPBAR3), -delta); CRect rcW; GetWindowRect(rcW); ScreenToClient(rcW); CRect rcspl; GetDlgItem(IDC_SHAREDDIRSTREE)->GetClientRect(rcspl); thePrefs.SetSplitterbarPositionShared(rcspl.right + SPLITTER_MARGIN); RemoveAnchor(m_wndSplitter); AddAnchor(m_wndSplitter, TOP_LEFT); RemoveAnchor(IDC_SFLIST); RemoveAnchor(IDC_STATISTICS); RemoveAnchor(IDC_CURSESSION_LBL); RemoveAnchor(IDC_FSTATIC4); RemoveAnchor(IDC_SREQUESTED); RemoveAnchor(IDC_POPBAR); RemoveAnchor(IDC_FSTATIC5); RemoveAnchor(IDC_SACCEPTED); RemoveAnchor(IDC_POPBAR2); RemoveAnchor(IDC_FSTATIC6); RemoveAnchor(IDC_STRANSFERRED); RemoveAnchor(IDC_POPBAR3); RemoveAnchor(IDC_SHAREDDIRSTREE); AddAnchor(IDC_SFLIST,TOP_LEFT,BOTTOM_RIGHT); AddAnchor(IDC_STATISTICS,BOTTOM_LEFT, BOTTOM_RIGHT); AddAnchor(IDC_CURSESSION_LBL, BOTTOM_LEFT); AddAnchor(IDC_FSTATIC4, BOTTOM_LEFT); AddAnchor(IDC_SREQUESTED,BOTTOM_LEFT); AddAnchor(IDC_FSTATIC5,BOTTOM_LEFT); AddAnchor(IDC_SACCEPTED,BOTTOM_LEFT); AddAnchor(IDC_FSTATIC6,BOTTOM_LEFT); AddAnchor(IDC_STRANSFERRED,BOTTOM_LEFT); AddAnchor(IDC_SHAREDDIRSTREE,TOP_LEFT, BOTTOM_LEFT); AddAnchor(IDC_POPBAR,BOTTOM_LEFT, BOTTOM_RIGHT); AddAnchor(IDC_POPBAR2,BOTTOM_LEFT, BOTTOM_RIGHT); AddAnchor(IDC_POPBAR3,BOTTOM_LEFT, BOTTOM_RIGHT); m_wndSplitter.SetRange(rcW.left+SPLITTER_RANGE_MIN, rcW.left+SPLITTER_RANGE_MAX); Invalidate(); UpdateWindow(); }