Changeset 12118
- Timestamp:
- Oct 31, 1999, 6:53:55 PM (25 years ago)
- Location:
- tags/trunk/src/user32
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified tags/trunk/src/user32/pmframe.cpp ¶
r12113 r12118 1 /* $Id: pmframe.cpp,v 1.1 4 1999-10-30 18:40:44cbratschi Exp $ */1 /* $Id: pmframe.cpp,v 1.15 1999-10-31 17:53:51 cbratschi Exp $ */ 2 2 /* 3 3 * Win32 Frame Managment Code for OS/2 … … 281 281 return (MRESULT)0xf; 282 282 } 283 break;283 goto RunDefFrameProc; //CB: must call def frame proc or frame control activation is broken 284 284 } 285 285 … … 427 427 case WM_ACTIVATE: 428 428 { 429 RestoreOS2TIB(); 430 MRESULT rc = OldFrameProc(hwnd,msg,mp1,mp2); 431 //CB: overwrite OS/2's default frame 432 DrawActivate(win32wnd, hwnd); 433 return rc; 429 HWND hwndTitle; 430 USHORT flags = WinQueryWindowUShort(hwnd,QWS_FLAGS); 431 432 //CB: emulate WM_ACTIVATE -> no flickering 433 hwndTitle = WinWindowFromID(hwnd,FID_TITLEBAR); 434 if (hwndTitle) WinSendMsg(hwndTitle,TBM_SETHILITE,mp1,MPVOID); 435 436 WinSendMsg(WinWindowFromID(hwnd,FID_CLIENT),WM_ACTIVATE,mp1,mp2); 437 WinSetWindowUShort(hwnd,QWS_FLAGS,mp1 ? (flags | FF_ACTIVE):(flags & ~FF_ACTIVE)); 438 439 440 RestoreOS2TIB(); 441 return 0; 434 442 } 435 443 … … 488 496 if (InSizeBox(win32wnd,(POINTS*)&mp1)) 489 497 { 498 WinSetActiveWindow(HWND_DESKTOP,hwnd); 490 499 WinSendMsg(hwnd,WM_TRACKFRAME,(MPARAM)(TF_RIGHT | TF_BOTTOM),(MPARAM)0); 491 500 RestoreOS2TIB(); -
TabularUnified tags/trunk/src/user32/scroll.cpp ¶
r12113 r12118 1 /* $Id: scroll.cpp,v 1.1 7 1999-10-30 18:40:45cbratschi Exp $ */1 /* $Id: scroll.cpp,v 1.18 1999-10-31 17:53:53 cbratschi Exp $ */ 2 2 /* 3 3 * Scrollbar control … … 225 225 INT w = lpRect->right-lpRect->left; 226 226 227 rect.left -= w; 228 rect.right += w; 227 rect.left -= w; 228 rect.right += w; 229 rect.top -= w; 230 rect.bottom += w; 229 231 } else 230 232 { … … 233 235 rect.top -= h; 234 236 rect.bottom += h; 237 rect.left -= h; 238 rect.right += h; 235 239 } 236 240 … … 248 252 INT arrowSize, thumbSize, thumbPos; 249 253 RECT rect; 254 SCROLLBAR_INFO *infoPtr = SCROLL_GetInfoPtr(hwnd,nBar); 255 256 if (!infoPtr) return SCROLL_NOWHERE; 250 257 251 258 BOOL vertical = SCROLL_GetScrollBarRect( hwnd, nBar, &rect, … … 257 264 if (vertical) 258 265 { 259 if (pt.y < rect.top + arrowSize) return SCROLL_TOP_ARROW;260 if (pt.y >= rect.bottom - arrowSize) return SCROLL_BOTTOM_ARROW;266 if (pt.y < rect.top + arrowSize) return (infoPtr->flags & ESB_DISABLE_LTUP) ? SCROLL_NOWHERE:SCROLL_TOP_ARROW; 267 if (pt.y >= rect.bottom - arrowSize) return (infoPtr->flags & ESB_DISABLE_RTDN) ? SCROLL_NOWHERE:SCROLL_BOTTOM_ARROW; 261 268 if (!thumbPos) return SCROLL_TOP_RECT; 262 269 pt.y -= rect.top; … … 266 273 else /* horizontal */ 267 274 { 268 if (pt.x < rect.left + arrowSize) return SCROLL_TOP_ARROW;269 if (pt.x >= rect.right - arrowSize) return SCROLL_BOTTOM_ARROW;275 if (pt.x < rect.left + arrowSize) return (infoPtr->flags & ESB_DISABLE_LTUP) ? SCROLL_NOWHERE:SCROLL_TOP_ARROW; 276 if (pt.x >= rect.right - arrowSize) return (infoPtr->flags & ESB_DISABLE_RTDN) ? SCROLL_NOWHERE:SCROLL_BOTTOM_ARROW; 270 277 if (!thumbPos) return SCROLL_TOP_RECT; 271 278 pt.x -= rect.left; … … 707 714 LRESULT res = (msg == WM_MOUSEMOVE) ? 1:0; 708 715 709 SCROLLBAR_INFO *infoPtr = SCROLL_GetInfoPtr( hwnd, nBar);716 SCROLLBAR_INFO *infoPtr = SCROLL_GetInfoPtr(hwnd,nBar); 710 717 if (!infoPtr) return res; 711 718 … … 758 765 } 759 766 760 if ((SCROLL_trackHitTest == SCROLL_NOWHERE) && (msg == WM_MOUSEMOVE || msg == WM_LBUTTONUP || msg == WM_CAPTURECHANGED)) 761 return res; 767 if (!SCROLL_Scrolling && msg != WM_LBUTTONDOWN) return res; 762 768 763 769 vertical = SCROLL_GetScrollBarRect( hwnd, nBar, &rect, … … 784 790 pt.y = (SHORT)HIWORD(lParam); 785 791 SCROLL_trackVertical = vertical; 786 SCROLL_trackHitTest = hittest = SCROLL_HitTest( hwnd, nBar, pt, FALSE ); 792 SCROLL_trackHitTest = hittest = SCROLL_HitTest( hwnd, nBar, pt, FALSE ); 793 if (SCROLL_trackHitTest == SCROLL_NOWHERE) return res; 787 794 SCROLL_Scrolling = TRUE; 788 795 timerRunning = FALSE; … … 809 816 810 817 case WM_LBUTTONUP: 811 pt.x = (SHORT)LOWORD(lParam); 812 pt.y = (SHORT)HIWORD(lParam); 813 hittest = SCROLL_NOWHERE; 814 ReleaseCapture(); 815 SCROLL_Scrolling = FALSE; 818 if (SCROLL_Scrolling) 819 { 820 pt.x = (SHORT)LOWORD(lParam); 821 pt.y = (SHORT)HIWORD(lParam); 822 hittest = SCROLL_NOWHERE; 823 ReleaseCapture(); 824 SCROLL_Scrolling = FALSE; 825 } else return res; 816 826 break; 817 827 818 828 case WM_CAPTURECHANGED: 819 hittest = SCROLL_NOWHERE; 820 SCROLL_Scrolling = FALSE; 829 if (SCROLL_Scrolling) 830 { 831 hittest = SCROLL_NOWHERE; 832 SCROLL_Scrolling = FALSE; 833 } else return res; 821 834 break; 822 835 … … 871 884 hdc = GetDCEx(hwnd,0,DCX_CACHE | ((nBar == SB_CTL) ? 0:DCX_WINDOW)); 872 885 873 //TRACE("Event: hwnd=%04x bar=%d msg=%x pt=%ld,%ld hit=%d\n",874 // hwnd, nBar, msg, pt.x, pt.y, hittest );875 876 886 switch(SCROLL_trackHitTest) 877 887 { … … 880 890 881 891 case SCROLL_TOP_ARROW: 882 if (msg == WM_LBUTTONUP )892 if (msg == WM_LBUTTONUP || msg == WM_CAPTURECHANGED) 883 893 KillSystemTimer(hwnd,SCROLL_TIMER); 884 894 else if (msg == WM_LBUTTONDOWN || (!timerRunning && msg == WM_SYSTIMER)) … … 901 911 902 912 case SCROLL_TOP_RECT: 903 if (msg == WM_LBUTTONUP )913 if (msg == WM_LBUTTONUP || msg == WM_CAPTURECHANGED) 904 914 KillSystemTimer(hwnd,SCROLL_TIMER); 905 915 else if (msg == WM_LBUTTONDOWN || (!timerRunning && msg == WM_SYSTIMER)) … … 930 940 SCROLL_TrackingBar = nBar; 931 941 SCROLL_TrackingPos = trackThumbPos + lastMousePos - lastClickPos; 942 SCROLL_TrackingVal = infoPtr->CurVal; 932 943 SCROLL_MovingThumb = TRUE; 933 944 SCROLL_DrawMovingThumb(hdc, &rect, vertical, arrowSize, thumbSize); … … 939 950 SCROLL_MovingThumb = FALSE; 940 951 SCROLL_TrackingWin = 0; 952 SCROLL_trackHitTest = SCROLL_NOWHERE; /* Terminate tracking */ 941 953 val = SCROLL_GetThumbVal( infoPtr, &rect, vertical, 942 954 trackThumbPos + lastMousePos - lastClickPos ); 943 SendMessageA( hwndOwner, vertical ? WM_VSCROLL : WM_HSCROLL, 944 MAKEWPARAM( SB_THUMBPOSITION, val ), hwndCtl ); 955 956 if (val != infoPtr->CurVal) 957 SendMessageA( hwndOwner, vertical ? WM_VSCROLL : WM_HSCROLL, 958 MAKEWPARAM( SB_THUMBPOSITION, val ), hwndCtl ); 945 959 946 960 if (oldPos == infoPtr->CurVal) 961 { 962 vertical = SCROLL_GetScrollBarRect( hwnd, nBar, &rect, 963 &arrowSize, &thumbSize, &thumbPos ); 947 964 SCROLL_DrawInterior( hwnd, hdc, nBar, &rect, arrowSize, thumbSize, 948 965 thumbPos, infoPtr->flags, vertical, 949 966 FALSE, FALSE ); 967 } 968 969 ReleaseDC(hwnd,hdc); 970 return res; 950 971 } else if (msg == WM_MOUSEMOVE) 951 972 { … … 975 996 976 997 case SCROLL_BOTTOM_RECT: 977 if (msg == WM_LBUTTONUP )998 if (msg == WM_LBUTTONUP || msg == WM_CAPTURECHANGED) 978 999 KillSystemTimer(hwnd,SCROLL_TIMER); 979 1000 else if (msg == WM_LBUTTONDOWN || (!timerRunning && msg == WM_SYSTIMER)) … … 999 1020 1000 1021 case SCROLL_BOTTOM_ARROW: 1001 if (msg == WM_LBUTTONUP )1022 if (msg == WM_LBUTTONUP || msg == WM_CAPTURECHANGED) 1002 1023 KillSystemTimer(hwnd,SCROLL_TIMER); 1003 1024 else if (msg == WM_LBUTTONDOWN || (!timerRunning && msg == WM_SYSTIMER)) … … 1022 1043 if (msg == WM_LBUTTONUP || msg == WM_CAPTURECHANGED) 1023 1044 { 1024 hittest = SCROLL_trackHitTest; 1025 SCROLL_trackHitTest = SCROLL_NOWHERE; /* Terminate tracking */ 1026 1027 if (hittest != SCROLL_THUMB) 1028 SendMessageA(hwndOwner,vertical ? WM_VSCROLL:WM_HSCROLL,SB_ENDSCROLL,hwndCtl); 1045 SCROLL_trackHitTest = SCROLL_NOWHERE; /* Terminate tracking */ 1046 1047 SendMessageA(hwndOwner,vertical ? WM_VSCROLL:WM_HSCROLL,SB_ENDSCROLL,hwndCtl); 1029 1048 } 1030 1049 … … 1307 1326 HWND hwndScroll = SCROLL_GetScrollHandle(hwnd,nBar); 1308 1327 1328 dprintf(("USER32: SetScrollInfo")); 1329 1309 1330 if (!hwndScroll) return 0; 1310 1331 if (!(infoPtr = SCROLL_GetInfoPtr(hwndScroll,nBar))) return 0; … … 1444 1465 SCROLLBAR_INFO *infoPtr; 1445 1466 1467 dprintf(("USER32: GetScrollInfo")); 1468 1446 1469 if (!(infoPtr = SCROLL_GetInfoPtr(SCROLL_GetScrollHandle(hwnd,nBar),nBar))) return FALSE; 1447 1470 if (info->fMask & ~(SIF_ALL | SIF_DISABLENOSCROLL)) return FALSE; -
TabularUnified tags/trunk/src/user32/window.cpp ¶
r12117 r12118 1 /* $Id: window.cpp,v 1. 29 1999-10-31 16:44:05 dengertExp $ */1 /* $Id: window.cpp,v 1.30 1999-10-31 17:53:55 cbratschi Exp $ */ 2 2 /* 3 3 * Win32 window apis for OS/2 … … 189 189 else dprintf(("CreateWindowExW: class %d parent %x (%d,%d) (%d,%d), %x %x", className, parent, x, y, width, height, style, exStyle)); 190 190 191 if (! strcmpi(className,L"BUTTON") && ((style & 0x0f) == BS_GROUPBOX))191 if (!lstrcmpiW(className,(LPCWSTR)L"BUTTON") && ((style & 0x0f) == BS_GROUPBOX)) 192 192 style |= WS_CLIPSIBLINGS; 193 193
Note:
See TracChangeset
for help on using the changeset viewer.