Changeset 307 for trunk/src/user32/new/windowclass.cpp
- Timestamp:
- Jul 15, 1999, 10:19:02 AM (26 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/user32/new/windowclass.cpp
r304 r307 1 /* $Id: windowclass.cpp,v 1. 2 1999-07-14 21:05:59 cbratschiExp $ */1 /* $Id: windowclass.cpp,v 1.3 1999-07-15 08:18:11 sandervl Exp $ */ 2 2 /* 3 3 * Win32 Window Class Code for OS/2 … … 19 19 #include <win32class.h> 20 20 #include <win32wnd.h> 21 #include <handlemanager.h> 21 22 22 23 //****************************************************************************** … … 63 64 } 64 65 //****************************************************************************** 65 //CB: update to unicode!66 66 //****************************************************************************** 67 67 WORD WIN32API RegisterClassW(CONST WNDCLASSW *lpwc) … … 69 69 ATOM rc; 70 70 WNDCLASSEXA wclass; 71 Win32WndClass *winclass; 71 72 72 73 dprintf(("RegisterClassW\n")); … … 74 75 wclass.cbSize = sizeof(wclass); 75 76 memcpy(&wclass.style, lpwc, sizeof(WNDCLASSA)); 76 if(wclass.lpszMenuName && ( (ULONG)wclass.lpszMenuName >> 16!= 0)) {77 if(wclass.lpszMenuName && (HIWORD(wclass.lpszMenuName) != 0)) { 77 78 wclass.lpszMenuName = UnicodeToAsciiString((LPWSTR)lpwc->lpszMenuName); 78 79 } 79 if(wclass.lpszClassName && ( (ULONG)wclass.lpszClassName >> 16!= 0)) {80 if(wclass.lpszClassName && (HIWORD(wclass.lpszClassName) != 0)) { 80 81 wclass.lpszClassName = UnicodeToAsciiString((LPWSTR)lpwc->lpszClassName); 81 82 } 82 rc = RegisterClassA((CONST WNDCLASSA *)&wclass); 83 84 if(lpwc->lpszMenuName && ((ULONG)lpwc->lpszMenuName >> 16 != 0)) { 83 winclass = new Win32WndClass((WNDCLASSEXA *)&wclass, TRUE); 84 if(winclass == NULL) { 85 dprintf(("RegisterClassW wclass == NULL!")); 86 return(0); 87 } 88 rc = winclass->getAtom(); 89 90 if(lpwc->lpszMenuName && (HIWORD(lpwc->lpszMenuName) != 0)) { 85 91 FreeAsciiString((char *)wclass.lpszMenuName); 86 92 } 87 if(lpwc->lpszClassName && ( (ULONG)lpwc->lpszClassName >> 16 !=0)) {93 if(lpwc->lpszClassName && (HIWORD(lpwc->lpszClassName) !=0)) { 88 94 FreeAsciiString((char *)wclass.lpszClassName); 89 95 } … … 91 97 } 92 98 //****************************************************************************** 93 //CB: update to unicode!94 99 //****************************************************************************** 95 100 ATOM WIN32API RegisterClassExW(CONST WNDCLASSEXW *lpwc) … … 97 102 ATOM rc; 98 103 WNDCLASSEXA wclass; 104 Win32WndClass *winclass; 99 105 100 106 dprintf(("RegisterClassExW\n")); 101 107 memcpy(&wclass, lpwc, sizeof(WNDCLASSEXA)); 102 if(wclass.lpszMenuName && ( (ULONG)wclass.lpszMenuName >> 16!= 0)) {108 if(wclass.lpszMenuName && (HIWORD(wclass.lpszMenuName) != 0)) { 103 109 wclass.lpszMenuName = UnicodeToAsciiString((LPWSTR)lpwc->lpszMenuName); 104 110 } 105 if(wclass.lpszClassName && ( (ULONG)wclass.lpszClassName >> 16!= 0)) {111 if(wclass.lpszClassName && (HIWORD(wclass.lpszClassName) != 0)) { 106 112 wclass.lpszClassName = UnicodeToAsciiString((LPWSTR)lpwc->lpszClassName); 107 113 } 108 rc = RegisterClassExA((CONST WNDCLASSEXA *)&wclass); 109 110 if(lpwc->lpszMenuName && ((ULONG)lpwc->lpszMenuName >> 16 != 0)) { 114 115 winclass = new Win32WndClass((WNDCLASSEXA *)&wclass, TRUE); 116 if(winclass == NULL) { 117 dprintf(("RegisterClassExW wclass == NULL!")); 118 return(0); 119 } 120 rc = winclass->getAtom(); 121 122 if(lpwc->lpszMenuName && (HIWORD(lpwc->lpszMenuName) != 0)) { 111 123 FreeAsciiString((char *)wclass.lpszMenuName); 112 124 } 113 if(lpwc->lpszClassName && ( (ULONG)lpwc->lpszClassName >> 16!= 0)) {125 if(lpwc->lpszClassName && (HIWORD(lpwc->lpszClassName) != 0)) { 114 126 FreeAsciiString((char *)wclass.lpszClassName); 115 127 } … … 127 139 } 128 140 //****************************************************************************** 129 //CB:update to unicode!130 141 //****************************************************************************** 131 142 BOOL WIN32API UnregisterClassW(LPCWSTR lpszClassName, HINSTANCE hinst) … … 134 145 135 146 dprintf(("USER32: UnregisterClassW\n")); 136 if( (ULONG)lpszClassName >> 16!= 0) {147 if(HIWORD(lpszClassName) != 0) { 137 148 astring = UnicodeToAsciiString((LPWSTR)lpszClassName); 138 149 } … … 140 151 141 152 Win32WndClass::UnregisterClassA(hinst, (LPSTR)astring); 142 if( (ULONG)astring >> 16!= 0)153 if(HIWORD(astring) != 0) 143 154 FreeAsciiString((char *)astring); 155 144 156 //Spintest returns FALSE in dll termination, so pretend it succeeded 145 157 return(TRUE); … … 164 176 } 165 177 //****************************************************************************** 166 //CB: update to unicode!167 178 //****************************************************************************** 168 179 BOOL WIN32API GetClassInfoW(HINSTANCE hinst, LPCWSTR lpszClass, WNDCLASSW *lpwc) … … 175 186 dprintf(("USER32: GetClassInfoW\n")); 176 187 177 if( (ULONG)lpszClass >> 16!= 0) {188 if(HIWORD(lpszClass) != 0) { 178 189 astring = UnicodeToAsciiString((LPWSTR)lpszClass); 179 190 } … … 181 192 182 193 wndclass = Win32WndClass::FindClass(hinst, astring); 183 if( (ULONG)astring >> 16!= 0)194 if(HIWORD(astring) != 0) 184 195 FreeAsciiString((char *)astring); 196 185 197 if(wndclass) { 186 198 wndclass->getClassInfo(&wc); 187 memcpy(lpwc, &wc , sizeof(WNDCLASSW));199 memcpy(lpwc, &wc.style, sizeof(WNDCLASSW)); 188 200 return(TRUE); 189 201 } … … 250 262 dprintf(("USER32: GetClassInfoExW\n")); 251 263 252 if( (ULONG)lpszClass >> 16!= 0) {264 if(HIWORD(lpszClass) != 0) { 253 265 astring = UnicodeToAsciiString((LPWSTR)lpszClass); 254 266 } … … 256 268 257 269 wndclass = Win32WndClass::FindClass(hInstance, astring); 258 if( (ULONG)astring >> 16!= 0)270 if(HIWORD(astring) != 0) 259 271 FreeAsciiString((char *)astring); 272 260 273 if(wndclass) { 261 274 wndclass->getClassInfo(lpwcx); … … 271 284 272 285 dprintf(("USER32: GetClassNameA\n")); 273 wnd = WIN2OS2HWND(hwnd); 274 if(wnd == NULL) { 286 if(HMHandleTranslateToOS2(hwnd, (PULONG)&wnd) != NO_ERROR) { 275 287 dprintf(("GetClassNameA wnd == NULL")); 276 288 return(0); … … 285 297 286 298 dprintf(("USER32: GetClassNameW\n")); 287 wnd = WIN2OS2HWND(hwnd); 288 if(wnd == NULL) { 299 if(HMHandleTranslateToOS2(hwnd, (PULONG)&wnd) != NO_ERROR) { 289 300 dprintf(("GetClassNameA wnd == NULL")); 290 301 return(0); … … 299 310 300 311 dprintf(("USER32: SetClassLongA\n")); 301 wnd = WIN2OS2HWND(hwnd); 302 if(wnd == NULL) { 312 if(HMHandleTranslateToOS2(hwnd, (PULONG)&wnd) != NO_ERROR) { 303 313 dprintf(("SetClassLongA wnd == NULL")); 304 314 return(0); … … 313 323 314 324 dprintf(("USER32: SetClassLongW\n")); 315 wnd = WIN2OS2HWND(hwnd); 316 if(wnd == NULL) { 325 if(HMHandleTranslateToOS2(hwnd, (PULONG)&wnd) != NO_ERROR) { 317 326 dprintf(("SetClassLongW wnd == NULL")); 318 327 return(0); … … 327 336 328 337 dprintf(("USER32: SetClassWordA\n")); 329 wnd = WIN2OS2HWND(hwnd); 330 if(wnd == NULL) { 338 if(HMHandleTranslateToOS2(hwnd, (PULONG)&wnd) != NO_ERROR) { 331 339 dprintf(("SetClassWordA wnd == NULL")); 332 340 return(0); … … 341 349 342 350 dprintf(("USER32: GetClassWordA\n")); 343 wnd = WIN2OS2HWND(hwnd); 344 if(wnd == NULL) { 351 if(HMHandleTranslateToOS2(hwnd, (PULONG)&wnd) != NO_ERROR) { 345 352 dprintf(("GetClassWordA wnd == NULL")); 346 353 return(0); … … 355 362 356 363 dprintf(("USER32: GetClassLongA\n")); 357 wnd = WIN2OS2HWND(hwnd); 358 if(wnd == NULL) { 364 if(HMHandleTranslateToOS2(hwnd, (PULONG)&wnd) != NO_ERROR) { 359 365 dprintf(("GetClassLongA wnd == NULL")); 360 366 return(0); … … 369 375 370 376 dprintf(("USER32: GetClassLongW\n")); 371 wnd = WIN2OS2HWND(hwnd); 372 if(wnd == NULL) { 377 if(HMHandleTranslateToOS2(hwnd, (PULONG)&wnd) != NO_ERROR) { 373 378 dprintf(("GetClassLongW wnd == NULL")); 374 379 return(0);
Note:
See TracChangeset
for help on using the changeset viewer.