Changeset 6254 for trunk/src/user32/clipboard.cpp
- Timestamp:
- Jul 8, 2001, 5:51:43 PM (24 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/user32/clipboard.cpp
r5935 r6254 1 /* $Id: clipboard.cpp,v 1.1 2 2001-06-09 14:50:16sandervl Exp $ */1 /* $Id: clipboard.cpp,v 1.13 2001-07-08 15:51:41 sandervl Exp $ */ 2 2 3 3 /* … … 16 16 17 17 #include <os2win.h> 18 #include <string.h> 18 19 #include "win32wbase.h" 19 20 #include <unicode.h> … … 21 22 #define DBG_LOCALLOG DBG_clipboard 22 23 #include "dbglocal.h" 24 25 #ifdef USING_OPEN32CLIPBOARD 26 27 #define FLAG_TO_OPEN32 0 28 #define FLAG_FROM_OPEN32 1 29 30 //****************************************************************************** 31 //****************************************************************************** 32 HGLOBAL GlobalCopy(HGLOBAL hDest, HGLOBAL hSource, BOOL fToOpen32) 33 { 34 LPVOID src; 35 LPVOID dest; 36 ULONG size; 37 38 if(fToOpen32 == FLAG_TO_OPEN32) { 39 src = GlobalLock(hSource); 40 if(src) { 41 size = GlobalSize(hSource); 42 if(hDest == NULL) { 43 hDest = O32_GlobalAlloc(GHND, size); 44 } 45 dest = O32_GlobalLock(hDest); 46 memcpy(dest, src, size); 47 O32_GlobalUnlock(hDest); 48 } 49 GlobalUnlock(hSource); 50 } 51 else { 52 src = O32_GlobalLock(hSource); 53 if(src) { 54 size = O32_GlobalSize(hSource); 55 if(hDest == NULL) { 56 hDest = GlobalAlloc(GHND, size); 57 } 58 dest = GlobalLock(hDest); 59 memcpy(dest, src, size); 60 GlobalUnlock(hDest); 61 } 62 O32_GlobalUnlock(hSource); 63 } 64 return hDest; 65 } 66 #endif 23 67 24 68 //****************************************************************************** … … 80 124 //****************************************************************************** 81 125 //****************************************************************************** 82 HANDLE WIN32API GetClipboardData( UINT arg1) 83 { 84 dprintf(("USER32: GetClipboardData\n")); 85 return O32_GetClipboardData(arg1); 126 HANDLE WIN32API GetClipboardData( UINT uFormat) 127 { 128 #ifdef USING_OPEN32CLIPBOARD 129 HANDLE hClipObj = 0, hClipObjOpen32 = 0; 130 131 dprintf(("USER32: GetClipboardData %x", uFormat)); 132 hClipObjOpen32 = O32_GetClipboardData(uFormat); 133 //memory leak 134 if(hClipObjOpen32) { 135 hClipObj = GlobalCopy(NULL, hClipObjOpen32, FLAG_FROM_OPEN32); 136 } 137 return hClipObj; 138 #else 139 dprintf(("USER32: GetClipboardData %x", uFormat)); 140 return O32_GetClipboardData(uFormat); 141 #endif 86 142 } 87 143 //****************************************************************************** … … 217 273 //****************************************************************************** 218 274 //****************************************************************************** 219 HANDLE WIN32API SetClipboardData( UINT arg1, HANDLE arg2) 220 { 221 dprintf(("USER32: SetClipboardData\n")); 222 return O32_SetClipboardData(arg1, arg2); 275 HANDLE WIN32API SetClipboardData( UINT uFormat, HANDLE hClipObj) 276 { 277 #ifdef USING_OPEN32CLIPBOARD 278 HANDLE hClipObjOpen32 = 0; 279 280 dprintf(("USER32: SetClipboardData %x %x", uFormat, hClipObj)); 281 //memory leak 282 if(hClipObj) { 283 hClipObjOpen32 = GlobalCopy(NULL, hClipObj, FLAG_TO_OPEN32); 284 } 285 O32_SetClipboardData(uFormat, hClipObjOpen32); 286 287 return hClipObj; 288 #else 289 dprintf(("USER32: SetClipboardData %x %x", uFormat, hClipObj)); 290 return O32_SetClipboardData(uFormat, hClipObj); 291 #endif 223 292 } 224 293 //******************************************************************************
Note:
See TracChangeset
for help on using the changeset viewer.