Changeset 5215 for trunk/src/user32/win32wbasenonclient.cpp
- Timestamp:
- Feb 20, 2001, 4:40:23 PM (25 years ago)
- File:
-
- 1 edited
-
trunk/src/user32/win32wbasenonclient.cpp (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/user32/win32wbasenonclient.cpp
r4597 r5215 1 /* $Id: win32wbasenonclient.cpp,v 1.2 6 2000-11-15 13:57:57sandervl Exp $ */1 /* $Id: win32wbasenonclient.cpp,v 1.27 2001-02-20 15:40:23 sandervl Exp $ */ 2 2 /* 3 3 * Win32 Window Base Class for OS/2 (non-client methods) … … 229 229 pt.y = msg.pt.y; 230 230 ScreenToClient(getWindowHandle(), &pt); 231 pt.x += rectClient.left;232 pt.y += rectClient.top;231 pt.x += rectClient.left; 232 pt.y += rectClient.top; 233 233 msg.lParam = MAKELONG(pt.x,pt.y); 234 234 … … 264 264 Win32BaseWindow *topparent = GetTopParent(); 265 265 266 if (GetActiveWindow() != topparent->getWindowHandle())266 if((getStyle() & WS_CHILD) && !(getExStyle() & WS_EX_MDICHILD)) 267 267 { 268 //SvL: Calling topparent->SetActiveWindow() causes focus problems 269 // topparent->SetActiveWindow(); 270 OSLibWinSetFocus(topparent->getOS2WindowHandle()); 268 if (GetActiveWindow() != topparent->getWindowHandle()) 269 { 270 //SvL: Calling topparent->SetActiveWindow() causes focus problems 271 topparent->SetActiveWindow(); 272 //// OSLibWinSetFocus(topparent->getOS2WindowHandle()); 273 } 274 if (GetActiveWindow() == topparent->getWindowHandle()) 275 SendInternalMessageA(WM_SYSCOMMAND,SC_MOVE+HTCAPTION,lParam); 276 else dprintf(("ACtive window (%x) != toplevel wnd %x", OSLibWinQueryActiveWindow(), topparent->getWindowHandle())); 271 277 } 272 273 if (GetActiveWindow() == topparent->getWindowHandle()) 274 SendInternalMessageA(WM_SYSCOMMAND,SC_MOVE+HTCAPTION,lParam); 275 else dprintf(("ACtive window (%x) != toplevel wnd %x", OSLibWinQueryActiveWindow(), topparent->getWindowHandle())); 278 else { 279 SetActiveWindow(); 280 if (GetActiveWindow() == topparent->getWindowHandle()) 281 SendInternalMessageA(WM_SYSCOMMAND,SC_MOVE+HTCAPTION,lParam); 282 else dprintf(("ACtive window (%x) != wnd %x", OSLibWinQueryActiveWindow(), getWindowHandle())); 283 } 276 284 break; 277 285 } 278 286 279 287 case HTSYSMENU: 280 if(dwStyle & WS_SYSMENU )281 {282 SendInternalMessageA(WM_SYSCOMMAND,SC_MOUSEMENU+HTSYSMENU,lParam);283 }284 break;288 if(dwStyle & WS_SYSMENU ) 289 { 290 SendInternalMessageA(WM_SYSCOMMAND,SC_MOUSEMENU+HTSYSMENU,lParam); 291 } 292 break; 285 293 286 294 case HTMENU: 287 SendInternalMessageA(WM_SYSCOMMAND,SC_MOUSEMENU,lParam);288 break;295 SendInternalMessageA(WM_SYSCOMMAND,SC_MOUSEMENU,lParam); 296 break; 289 297 290 298 case HTHSCROLL: 291 SendInternalMessageA(WM_SYSCOMMAND,SC_HSCROLL+HTHSCROLL,lParam);292 break;299 SendInternalMessageA(WM_SYSCOMMAND,SC_HSCROLL+HTHSCROLL,lParam); 300 break; 293 301 294 302 case HTVSCROLL: 295 SendInternalMessageA(WM_SYSCOMMAND,SC_VSCROLL+HTVSCROLL,lParam);296 break;303 SendInternalMessageA(WM_SYSCOMMAND,SC_VSCROLL+HTVSCROLL,lParam); 304 break; 297 305 298 306 case HTMINBUTTON: 299 307 case HTMAXBUTTON: 300 308 case HTHELP: 301 TrackMinMaxHelpBox(wParam);302 break;309 TrackMinMaxHelpBox(wParam); 310 break; 303 311 304 312 case HTCLOSE: 305 TrackCloseButton(wParam);306 break;313 TrackCloseButton(wParam); 314 break; 307 315 308 316 case HTLEFT: … … 664 672 } 665 673 //****************************************************************************** 674 //Returns position of system menu in screen coordinates 666 675 //****************************************************************************** 667 676 BOOL Win32BaseWindow::GetSysPopupPos(RECT* rect) 668 677 { 669 if(hSysMenu) 670 { 671 if(dwStyle & WS_MINIMIZE ) 672 *rect = rectWindow; 673 else 674 { 675 GetInsideRect(rect ); 676 OffsetRect( rect, rectWindow.left, rectWindow.top); 677 rect->right = rect->left + GetSystemMetrics(SM_CYCAPTION) - 1; 678 rect->bottom = rect->top + GetSystemMetrics(SM_CYCAPTION) - 1; 679 } 680 return TRUE; 681 } 682 return FALSE; 678 if(hSysMenu) 679 { 680 if(dwStyle & WS_MINIMIZE) { 681 *rect = rectWindow; 682 } 683 else 684 { 685 GetInsideRect(rect ); 686 OffsetRect( rect, rectWindow.left, rectWindow.top); 687 if(getStyle() & WS_CHILD) 688 ClientToScreen(getParent()->getWindowHandle(), (POINT *)rect); 689 690 rect->right = rect->left + GetSystemMetrics(SM_CYCAPTION) - 1; 691 rect->bottom = rect->top + GetSystemMetrics(SM_CYCAPTION) - 1; 692 } 693 return TRUE; 694 } 695 return FALSE; 683 696 } 684 697 //****************************************************************************** … … 1340 1353 if (wParam == SC_PUTMARK) 1341 1354 WriteLog(("Mark requested by user\n")); 1342 else1343 if (wParam == SC_DEBUGINT3) 1355 else 1356 if (wParam == SC_DEBUGINT3) 1344 1357 DebugInt3(); 1345 1358 #endif
Note:
See TracChangeset
for help on using the changeset viewer.
