- WinQueryWindowPos(GetHwnd(), &vSwp);
- hClient = WinWindowFromID(GetHwnd(), FID_CLIENT);
- hTitlebar = WinWindowFromID(GetHwnd(), FID_TITLEBAR);
- WinQueryWindowPos(hTitlebar, &vSwpTitlebar);
- hHScroll = WinWindowFromID(GetHwnd(), FID_HORZSCROLL);
- WinQueryWindowPos(hHScroll, &vSwpHScroll);
- hVScroll = WinWindowFromID(GetHwnd(), FID_VERTSCROLL);
- WinQueryWindowPos(hVScroll, &vSwpVScroll);
+ uCtlCount = ::WinSendMsg(m_hFrame, WM_FORMATFRAME, (MPARAM)pSwp, (MPARAM)pRect);
+ for (int i = 0; i < uCtlCount; i++)
+ {
+ if (pSwp[i].hwnd == m_hFrame)
+ memcpy(m_vSwp, pSwp[i], sizeof(SWP));
+ else if (pSwp[i].hwnd == m_hVScroll)
+ memcpy(m_vSwpVScroll, pSwp[i], sizeof(SWP));
+ else if (pSwp[i].hwnd == m_hHScroll)
+ memcpy(m_vSwpVScroll, pSwp[i], sizeof(SWP));
+ else if (pSwp[i].hwnd == m_hTitleBar)
+ memcpy(m_vSwpTitleBar, pSwp[i], sizeof(SWP));
+ }
+
+ //
+ // Now set the size of the client
+ //