- Timestamp:
- Nov 10, 1999, 6:11:31 PM (26 years ago)
- Location:
- trunk/src/user32
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/user32/oslibwin.cpp
r1576 r1693 1 /* $Id: oslibwin.cpp,v 1.4 2 1999-11-03 19:51:42 sandervlExp $ */1 /* $Id: oslibwin.cpp,v 1.43 1999-11-10 17:11:29 cbratschi Exp $ */ 2 2 /* 3 3 * Window API wrappers for OS/2 … … 71 71 BOOL TopLevel = hwndParent == HWND_DESKTOP; 72 72 // if(dwFrameStyle & FCF_TITLEBAR) 73 // 73 // TopLevel = TRUE; 74 74 75 75 FRAMECDATA FCData = {sizeof (FRAMECDATA), 0, 0, 0}; … … 88 88 TopLevel ? WC_FRAME : WIN32_INNERFRAME, 89 89 pszName, dwWinStyle, 0, 0, 50, 30, 90 hwndParent, HWND_TOP, 90 hwndParent, HWND_TOP, 91 91 id, &FCData, NULL); 92 92 if (*hwndFrame) { … … 954 954 { 955 955 return WinQueryObjectWindow(HWND_DESKTOP); 956 }957 //******************************************************************************958 //******************************************************************************959 BOOL OSLibWinShowScrollBar(HWND hwndParent, HWND hwndScroll, int scrollBar,960 BOOL fShow, BOOL fForceChange)961 {962 HWND hwndObj = WinQueryObjectWindow(HWND_DESKTOP),hwndCurPar = WinQueryWindow(hwndScroll,QW_PARENT);963 964 if(hwndScroll == NULL) {965 dprintf(("OSLibWinShowScrollBar: scrollbar %d (parent %x) not found!", scrollBar, hwndParent));966 return FALSE;967 }968 969 if ((fShow && hwndCurPar == hwndObj) || (!fShow && hwndCurPar != hwndObj) || fForceChange)970 {971 //CB: bug: winhlp32: hide vert scrollbar on maximize doesn't update the frame972 WinSetParent(hwndScroll,fShow ? hwndParent:HWND_OBJECT,FALSE);973 WinSendMsg(hwndParent, WM_UPDATEFRAME,974 MPFROMLONG( ( scrollBar == OSLIB_VSCROLL ) ? FCF_VERTSCROLL975 : FCF_HORZSCROLL),976 MPVOID );977 }978 return TRUE;979 }980 //******************************************************************************981 //******************************************************************************982 HWND OSLibWinQueryScrollBarHandle(HWND hwndParent, int scrollBar)983 {984 if(scrollBar == OSLIB_VSCROLL) {985 return WinWindowFromID(hwndParent, FID_VERTSCROLL);986 }987 else return WinWindowFromID(hwndParent, FID_HORZSCROLL);988 956 } 989 957 //****************************************************************************** -
trunk/src/user32/oslibwin.h
r1540 r1693 1 /* $Id: oslibwin.h,v 1.2 3 1999-11-01 19:11:41 sandervlExp $ */1 /* $Id: oslibwin.h,v 1.24 1999-11-10 17:11:29 cbratschi Exp $ */ 2 2 /* 3 3 * Window API wrappers for OS/2 … … 267 267 BOOL OSLibWinEnableScrollBar(HWND hwndParent, int scrollBar, BOOL fEnable); 268 268 HWND OSLibWinQueryObjectWindow(VOID); 269 BOOL OSLibWinShowScrollBar(HWND hwndParent, HWND hwndScroll, int scrollBar, BOOL fShow, BOOL fForceChange = FALSE);270 HWND OSLibWinQueryScrollBarHandle(HWND hwndParent, int scrollBar);271 269 ULONG OSLibWinGetScrollPos(HWND hwndParent, HWND hwndScroll); 272 270 ULONG OSLibWinSetScrollPos(HWND hwndParent, HWND hwndScroll, int pos, int fRedraw); -
trunk/src/user32/pmframe.cpp
r1667 r1693 1 /* $Id: pmframe.cpp,v 1.2 1 1999-11-09 17:07:22cbratschi Exp $ */1 /* $Id: pmframe.cpp,v 1.22 1999-11-10 17:11:29 cbratschi Exp $ */ 2 2 /* 3 3 * Win32 Frame Managment Code for OS/2 … … 591 591 return WinQuerySysValue(HWND_DESKTOP,SV_CXSIZEBORDER); 592 592 } 593 594 BOOL FrameCreateScrollBars(Win32BaseWindow *win32wnd,BOOL createHorz,BOOL createVert,BOOL updateFrame,DWORD *flags) 595 { 596 HWND hwndHScroll = 0,hwndVScroll = 0; 597 ULONG updateFlags = 0; 598 599 if (createHorz) 600 { 601 hwndHScroll = WinCreateWindow(win32wnd->getOS2FrameWindowHandle(),WC_SCROLLBAR,"",WS_VISIBLE | WS_PARENTCLIP | WS_SYNCPAINT | SBS_HORZ,0,0,0,0,win32wnd->getOS2FrameWindowHandle(),HWND_TOP,FID_HORZSCROLL,NULL,NULL); 602 if (hwndHScroll) win32wnd->setHorzScrollHandle(hwndHScroll); 603 else return FALSE; 604 updateFlags = FCF_HORZSCROLL; 605 } 606 607 if (createVert) 608 { 609 hwndVScroll = WinCreateWindow(win32wnd->getOS2FrameWindowHandle(),WC_SCROLLBAR,"",WS_VISIBLE | WS_PARENTCLIP | WS_SYNCPAINT | SBS_VERT,0,0,0,0,win32wnd->getOS2FrameWindowHandle(),HWND_TOP,FID_VERTSCROLL,NULL,NULL); 610 if (hwndVScroll) win32wnd->setVertScrollHandle(hwndVScroll); else 611 { 612 if (hwndHScroll) WinDestroyWindow(hwndHScroll); 613 614 return FALSE; 615 } 616 updateFlags |= FCF_VERTSCROLL; 617 } 618 619 win32wnd->subclassScrollBars(hwndHScroll,hwndVScroll); 620 621 if (updateFrame && updateFlags) WinSendMsg(win32wnd->getOS2FrameWindowHandle(),WM_UPDATEFRAME,(MPARAM)0,(MPARAM)0); 622 if (flags) *flags = updateFlags; 623 624 return TRUE; 625 } 626 627 VOID FrameGetScrollBarHandles(Win32BaseWindow *win32wnd,BOOL getHorz,BOOL getVert) 628 { 629 if (getHorz) win32wnd->setHorzScrollHandle(WinWindowFromID(win32wnd->getOS2FrameWindowHandle(),FID_HORZSCROLL)); 630 if (getVert) win32wnd->setVertScrollHandle(WinWindowFromID(win32wnd->getOS2FrameWindowHandle(),FID_VERTSCROLL)); 631 } 632 633 BOOL FrameShowScrollBars(Win32BaseWindow *win32wnd,BOOL changeHorz,BOOL changeVert,BOOL fShow,BOOL updateFrame,DWORD *flags) 634 { 635 HWND hwndObj = WinQueryObjectWindow(HWND_DESKTOP); 636 ULONG updateFlags = 0; 637 638 if (changeHorz) 639 { 640 HWND hwndCurPar = WinQueryWindow(win32wnd->getHorzScrollHandle(),QW_PARENT); 641 642 if ((fShow && hwndCurPar == hwndObj) || (!fShow && hwndCurPar != hwndObj)) 643 { 644 WinSetParent(win32wnd->getHorzScrollHandle(),fShow ? win32wnd->getOS2FrameWindowHandle():HWND_OBJECT,FALSE); 645 updateFlags = FCF_HORZSCROLL; 646 } 647 } 648 649 if (changeVert) 650 { 651 HWND hwndCurPar = WinQueryWindow(win32wnd->getVertScrollHandle(),QW_PARENT); 652 653 if ((fShow && hwndCurPar == hwndObj) || (!fShow && hwndCurPar != hwndObj)) 654 { 655 WinSetParent(win32wnd->getVertScrollHandle(),fShow ? win32wnd->getOS2FrameWindowHandle():HWND_OBJECT,FALSE); 656 updateFlags |= FCF_VERTSCROLL; 657 } 658 } 659 660 if (updateFrame && updateFlags) WinSendMsg(win32wnd->getOS2FrameWindowHandle(),WM_UPDATEFRAME,(MPARAM)updateFlags,(MPARAM)0); 661 if (flags) *flags = updateFlags; 662 663 return TRUE; 664 } 665 666 VOID FrameUpdateFrame(Win32BaseWindow *win32wnd,DWORD flags) 667 { 668 WinSendMsg(win32wnd->getOS2FrameWindowHandle(),WM_UPDATEFRAME,(MPARAM)flags,(MPARAM)0); 669 } 670 -
trunk/src/user32/pmframe.h
r1511 r1693 1 /* $Id: pmframe.h,v 1. 3 1999-10-29 16:06:55cbratschi Exp $ */1 /* $Id: pmframe.h,v 1.4 1999-11-10 17:11:30 cbratschi Exp $ */ 2 2 /* 3 3 * Win32 Frame Managment Code for OS/2 … … 13 13 UINT FrameGetDefSizeBorderSize(VOID); 14 14 VOID FrameTrackFrame(Win32BaseWindow *win32wnd,BOOL lefttop); 15 BOOL FrameCreateScrollBars(Win32BaseWindow *win32wnd,BOOL createHorz,BOOL createVert,BOOL updateFrame,DWORD *flags = NULL); 16 VOID FrameGetScrollBarHandles(Win32BaseWindow *win32wnd,BOOL getHorz,BOOL getVert); 17 BOOL FrameShowScrollBars(Win32BaseWindow *win32wnd,BOOL changeHorz,BOOL changeVert,BOOL fShow,BOOL updateFrame,DWORD *flags = NULL); 18 VOID FrameUpdateFrame(Win32BaseWindow *win32wnd,DWORD flags); 15 19 16 20 #endif -
trunk/src/user32/scroll.cpp
r1667 r1693 1 /* $Id: scroll.cpp,v 1. 19 1999-11-09 17:07:22cbratschi Exp $ */1 /* $Id: scroll.cpp,v 1.20 1999-11-10 17:11:30 cbratschi Exp $ */ 2 2 /* 3 3 * Scrollbar control … … 1605 1605 { 1606 1606 Win32BaseWindow *window = Win32BaseWindow::GetWindowFromHandle(hwnd); 1607 BOOL createHorz = FALSE,createVert = FALSE; 1607 1608 1608 1609 if (!window) … … 1613 1614 } 1614 1615 1615 if (window->getStyle() & (WS_HSCROLL | WS_VSCROLL)) 1616 { 1617 BOOL rc; 1618 1619 if (nBar == SB_HORZ || nBar == SB_BOTH) 1620 rc = OSLibWinShowScrollBar(window->getOS2FrameWindowHandle(), 1621 window->getHorzScrollHandle(), 1622 OSLIB_HSCROLL, fShow); 1623 1624 if (nBar == SB_VERT || (rc == TRUE && nBar == SB_BOTH)) 1625 rc = OSLibWinShowScrollBar(window->getOS2FrameWindowHandle(), 1626 window->getVertScrollHandle(), 1627 OSLIB_VSCROLL, fShow); 1628 return rc; 1629 } 1616 return window->showScrollBars(nBar == SB_HORZ || nBar == SB_BOTH,nBar == SB_VERT || nBar == SB_BOTH,fShow); 1630 1617 } 1631 1618 -
trunk/src/user32/user32exp.def
r1629 r1693 581 581 _KeyTranslatePMToWin@4 @2008 582 582 _KeyTranslatePMToWinBuf@12 @2009 583 _wvsnprintfA@16 @2010 -
trunk/src/user32/win32wbase.cpp
r1671 r1693 1 /* $Id: win32wbase.cpp,v 1.7 8 1999-11-09 19:23:17 sandervlExp $ */1 /* $Id: win32wbase.cpp,v 1.79 1999-11-10 17:11:30 cbratschi Exp $ */ 2 2 /* 3 3 * Win32 Window Base Class for OS/2 … … 97 97 fFirstShow = FALSE; 98 98 99 SetLastError(0); 100 99 101 //CB: replace by a secure method 100 102 … … 595 597 OSLibWinSetOwner(OS2Hwnd, OS2HwndFrame); 596 598 597 if (dwStyle & WS_HSCROLL) 598 hwndHorzScroll = OSLibWinQueryScrollBarHandle(OS2HwndFrame, OSLIB_HSCROLL); 599 600 if (dwStyle & WS_VSCROLL) 601 hwndVertScroll = OSLibWinQueryScrollBarHandle(OS2HwndFrame, OSLIB_VSCROLL); 602 599 FrameGetScrollBarHandles(this,dwStyle & WS_HSCROLL,dwStyle & WS_VSCROLL); 603 600 subclassScrollBars(dwStyle & WS_HSCROLL,dwStyle & WS_VSCROLL); 604 601 … … 1291 1288 SCROLL_SubclassScrollBars(subHorz ? hwndHorzScroll:0,subVert ? hwndVertScroll:0); 1292 1289 } 1290 //****************************************************************************** 1291 //****************************************************************************** 1292 BOOL Win32BaseWindow::showScrollBars(BOOL changeHorz,BOOL changeVert,BOOL fShow) 1293 { 1294 BOOL rc = TRUE; 1295 DWORD flags = 0; 1296 1297 if (fShow) 1298 { 1299 BOOL createHorz = FALSE,createVert = FALSE; 1300 BOOL showHorz = FALSE,showVert = FALSE; 1301 1302 if (changeHorz) 1303 { 1304 if (!hwndHorzScroll) 1305 createHorz = TRUE; 1306 else 1307 showHorz = TRUE; 1308 } 1309 1310 if (changeVert) 1311 { 1312 if (!hwndVertScroll) 1313 createVert = TRUE; 1314 else 1315 showVert = TRUE; 1316 } 1317 1318 if (createHorz || createVert) 1319 { 1320 if (createHorz && !horzScrollInfo) 1321 { 1322 horzScrollInfo = (SCROLLBAR_INFO*)malloc(sizeof(SCROLLBAR_INFO)); 1323 horzScrollInfo->MinVal = horzScrollInfo->CurVal = horzScrollInfo->Page = 0; 1324 horzScrollInfo->MaxVal = 100; 1325 horzScrollInfo->flags = ESB_ENABLE_BOTH; 1326 dwStyle |= WS_HSCROLL; 1327 } 1328 1329 if (createVert && !vertScrollInfo) 1330 { 1331 vertScrollInfo = (SCROLLBAR_INFO*)malloc(sizeof(SCROLLBAR_INFO)); 1332 vertScrollInfo->MinVal = vertScrollInfo->CurVal = vertScrollInfo->Page = 0; 1333 vertScrollInfo->MaxVal = 100; 1334 vertScrollInfo->flags = ESB_ENABLE_BOTH; 1335 dwStyle |= WS_VSCROLL; 1336 } 1337 1338 rc = FrameCreateScrollBars(this,createHorz,createVert,FALSE,&flags); 1339 1340 if (!rc) return FALSE; 1341 if (createHorz) dwStyle |= WS_HSCROLL; 1342 if (createVert) dwStyle |= WS_VSCROLL; 1343 } 1344 1345 if (showVert || showHorz) 1346 { 1347 DWORD newFlags; 1348 rc = FrameShowScrollBars(this,showHorz,showVert,fShow,FALSE,&newFlags); 1349 flags |= newFlags; 1350 if (rc) 1351 { 1352 if (showHorz) dwStyle |= WS_HSCROLL; 1353 if (showVert) dwStyle |= WS_VSCROLL; 1354 } 1355 } 1356 1357 if (flags) FrameUpdateFrame(this,flags); 1358 } else 1359 { 1360 rc = FrameShowScrollBars(this,changeHorz && hwndHorzScroll,changeVert && hwndVertScroll,fShow,TRUE); 1361 1362 if (rc) 1363 { 1364 if (changeHorz) dwStyle &= ~WS_HSCROLL; 1365 if (changeVert) dwStyle &= ~WS_VSCROLL; 1366 } 1367 } 1368 1369 return rc; 1370 } 1293 1371 /*********************************************************************** 1294 1372 * NC_HandleSysCommand -
trunk/src/user32/win32wbase.h
r1583 r1693 1 /* $Id: win32wbase.h,v 1.4 1 1999-11-03 22:04:24cbratschi Exp $ */1 /* $Id: win32wbase.h,v 1.42 1999-11-10 17:11:31 cbratschi Exp $ */ 2 2 /* 3 3 * Win32 Window Base Class for OS/2 … … 188 188 189 189 SCROLLBAR_INFO *getScrollInfo(int nBar); 190 HWND getVertScrollHandle() { return hwndVertScroll; }; 191 HWND getHorzScrollHandle() { return hwndHorzScroll; }; 190 HWND getVertScrollHandle() { return hwndVertScroll; }; 191 VOID setVertScrollHandle(HWND newHandle) { hwndVertScroll = newHandle; } 192 HWND getHorzScrollHandle() { return hwndHorzScroll; }; 193 VOID setHorzScrollHandle(HWND newHandle) { hwndHorzScroll = newHandle; } 192 194 VOID subclassScrollBars(BOOL subHorz,BOOL subVert); 195 BOOL showScrollBars(BOOL changeHorz,BOOL changeVert,BOOL fShow); 193 196 194 197 LRESULT SendMessageA(ULONG msg, WPARAM wParam, LPARAM lParam);
Note:
See TracChangeset
for help on using the changeset viewer.