Changeset 4082
- Timestamp:
- Aug 24, 2000, 11:35:07 AM (25 years ago)
- Location:
- trunk/src/shell32
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified trunk/src/shell32/misc.cpp ¶
r4032 r4082 1 /* $Id: misc.cpp,v 1. 8 2000-08-18 02:01:16 phallerExp $ */1 /* $Id: misc.cpp,v 1.9 2000-08-24 09:35:06 sandervl Exp $ */ 2 2 3 3 /* … … 42 42 43 43 44 BOOL SHELL_OsIsUnicode(void) 45 { 46 static version = 0; 47 48 if(version == 0) { 49 version = GetVersion(); 50 } 51 /* if high-bit of version is 0, we are emulating NT */ 52 return !(version & 0x80000000); 53 } 54 44 55 /***************************************************************************** 45 56 * Name : ExtractAssociatedIconExA … … 176 187 177 188 /***************************************************************************** 178 * Name : StrRetToStrN179 * Purpose : converts a STRRET to a normal string180 * Parameters: the pidl is for STRRET OFFSET181 * Variables :182 * Result :183 * Remark : SHELL32.96184 * Status : UNTESTED UNKNOWN STUB185 *186 * Author : Patrick Haller [Tue, 1998/06/15 03:00]187 *****************************************************************************/188 189 ODINFUNCTION4(HRESULT, StrRetToStrN,190 LPVOID, dest,191 DWORD, len,192 LPSTRRET, src,193 LPITEMIDLIST, pidl)194 {195 switch (src->uType)196 {197 case STRRET_WSTR:198 WideCharToMultiByte(CP_ACP,199 0,200 src->u.pOleStr,201 -1,202 (LPSTR)dest,203 len,204 NULL,205 NULL);206 SHFree(src->u.pOleStr);207 break;208 209 case STRRET_CSTRA:210 //if (VERSION_OsIsUnicode())211 // lstrcpynAtoW((LPWSTR)dest, src->u.cStr, len);212 //else213 strncpy((LPSTR)dest,214 src->u.cStr,215 len);216 break;217 218 case STRRET_OFFSETA:219 if (pidl)220 {221 //if(VERSION_OsIsUnicode())222 // lstrcpynAtoW((LPWSTR)dest, ((LPCSTR)&pidl->mkid)+src->u.uOffset, len);223 //else224 strncpy((LPSTR)dest,225 ((LPCSTR)&pidl->mkid)+src->u.uOffset,226 len);227 break;228 }229 230 default:231 dprintf(("SHELL32: StrRetToStrN: unknown type!\n"));232 233 if (len)234 *(LPSTR)dest = '\0';235 236 return(FALSE);237 }238 return(TRUE);239 }240 241 242 /*****************************************************************************243 189 * Name : SHELL32_654 244 190 * Purpose : -
TabularUnified trunk/src/shell32/pidl.cpp ¶
r4032 r4082 1 /* $Id: pidl.cpp,v 1. 9 2000-08-18 02:01:17 phallerExp $ */1 /* $Id: pidl.cpp,v 1.10 2000-08-24 09:35:06 sandervl Exp $ */ 2 2 3 3 /* … … 1979 1979 return dst; 1980 1980 } 1981 1982 /************************************************************************* 1983 * SHGetFolderLocation [SHELL32] 1984 * 1985 * NOTES 1986 * the pidl can be a simple one. since we cant get the path out of the pidl 1987 * we have to take all data from the pidl 1988 */ 1989 HRESULT WINAPI SHGetFolderLocation( 1990 HWND hwnd, 1991 int csidl, 1992 HANDLE hToken, 1993 DWORD dwFlags, 1994 LPITEMIDLIST *ppidl) 1995 { 1996 FIXME("0x%04x 0x%08x 0x%08x 0x%08lx %p\n", 1997 hwnd, csidl, hToken, dwFlags, ppidl); 1998 return SHGetSpecialFolderLocation(hwnd, csidl, ppidl); 1999 } -
TabularUnified trunk/src/shell32/shell32.def ¶
r4032 r4082 1 ; $Id: shell32.def,v 1.2 7 2000-08-18 02:01:19 phallerExp $1 ; $Id: shell32.def,v 1.28 2000-08-24 09:35:07 sandervl Exp $ 2 2 3 3 ;Created by BLAST for IBM's compiler … … 105 105 ; Win32RemoveDirectory = _Win32RemoveDirectory@? @94 106 106 SHLogILFromFSIL = _SHLogILFromFSIL@4 @95 107 StrRetToStrN = _StrRetToStrN @16@96107 StrRetToStrN = _StrRetToStrNAW@16 @96 108 108 SHWaitForFileToOpen = _SHWaitForFileToOpen@12 @97 109 109 SHGetRealIDL = _SHGetRealIDL@12 @98 … … 314 314 StrChrIW = _StrChrIW@8 @303 315 315 StrChrW = _StrChrW@8 @304 316 ; StrCmpNA = _StrCmpNA@?@305316 StrCmpNA = _StrCmpNA@12 @305 317 317 StrCmpNIA = _StrCmpNIA@12 @306 318 318 StrCmpNIW = _StrCmpNIW@12 @307 319 ; StrCmpNW = _StrCmpNW@?@308319 StrCmpNW = _StrCmpNW@12 @308 320 320 StrCpyNA = _lstrcpynA@12 @309 321 321 StrCpyNW = _lstrcpynW@12 @310 … … 334 334 ; StrRStrIW = _StrRStrIW@? @323 335 335 ; StrRStrW = _StrRStrW@? @324 336 ; StrStrA = _StrStrA@?@325336 StrStrA = _StrStrA@8 @325 337 337 StrStrIA = _StrStrIA@8 @326 338 338 StrStrIW = _StrStrIW@8 @327 339 ; StrStrW = _StrStrW@?@328339 StrStrW = _StrStrW@8 @328 340 340 ; WOWShellExecute = _WOWShellExecute@? @329 341 341 SHRegCloseKey = _SHRegCloseKey@4 @505 … … 371 371 IsUserAdmin = _IsUserAdmin@0 @680 372 372 373 ; 374 ; version 5.00 (Win2K) 375 ;_WIN32_IE >= 0x0500 376 ; 377 SHGetFolderPathA = _SHGetFolderPathA@20 378 SHGetFolderPathW = _SHGetFolderPathW@20 379 SHGetFolderLocation = _SHGetFolderLocation@20 380 373 381 ; FOOBAR1217 = _FOOBAR1217@? @1217 374 382 375 383 DllGetVersion = _SHELL32_DllGetVersion@4 @1220 376 377 _StrRetToStrNA@16 @1004378 _StrRetToStrNW@16 @1005379 384 380 385 _StrFormatByteSizeA@12 @1041 381 386 _StrFormatByteSizeW@12 @1042 382 _StrRetToBufA@16 @1045383 _StrRetToBufW@16 @1046 -
TabularUnified trunk/src/shell32/shell32_main.h ¶
r4032 r4082 1 /* $Id: shell32_main.h,v 1. 4 2000-08-18 02:01:20 phallerExp $ */1 /* $Id: shell32_main.h,v 1.5 2000-08-24 09:35:07 sandervl Exp $ */ 2 2 3 3 /* … … 6 6 * Copyright 1999 Patrick Haller (haller@zebra.fh-weingarten.de) 7 7 * Project Odin Software License can be found in LICENSE.TXT 8 * 9 * Note: Odin changes marked by #ifdef __WIN32OS2__ ! 8 10 * 9 11 * Corel WINE 20000324 level … … 56 58 * pointer to functions dynamically loaded 57 59 */ 58 extern void ( WINAPI*pDLLInitComctl)(LPVOID);59 extern INT ( WINAPI*pImageList_AddIcon) (HIMAGELIST himl, HICON hIcon);60 extern INT ( WINAPI*pImageList_ReplaceIcon) (HIMAGELIST, INT, HICON);61 extern HIMAGELIST ( WINAPI*pImageList_Create) (INT,INT,UINT,INT,INT);62 extern BOOL ( WINAPI*pImageList_Draw) (HIMAGELIST himl, int i, HDC hdcDest, int x, int y, UINT fStyle);63 extern HICON ( WINAPI*pImageList_GetIcon) (HIMAGELIST, INT, UINT);64 extern INT ( WINAPI*pImageList_GetImageCount)(HIMAGELIST);65 extern COLORREF ( WINAPI *pImageList_SetBkColor)(HIMAGELIST, COLORREF);66 67 extern LPVOID ( WINAPI*pCOMCTL32_Alloc) (INT);68 extern BOOL ( WINAPI*pCOMCTL32_Free) (LPVOID);69 70 extern HDPA ( WINAPI*pDPA_Create) (INT);71 extern INT ( WINAPI*pDPA_InsertPtr) (const HDPA, INT, LPVOID);72 extern BOOL ( WINAPI*pDPA_Sort) (const HDPA, PFNDPACOMPARE, LPARAM);73 extern LPVOID ( WINAPI*pDPA_GetPtr) (const HDPA, INT);74 extern BOOL ( WINAPI*pDPA_Destroy) (const HDPA);75 extern INT ( WINAPI*pDPA_Search) (const HDPA, LPVOID, INT, PFNDPACOMPARE, LPARAM, UINT);76 extern LPVOID ( WINAPI*pDPA_DeletePtr) (const HDPA hdpa, INT i);60 extern void (* WINAPI pDLLInitComctl)(LPVOID); 61 extern INT (* WINAPI pImageList_AddIcon) (HIMAGELIST himl, HICON hIcon); 62 extern INT (* WINAPI pImageList_ReplaceIcon) (HIMAGELIST, INT, HICON); 63 extern HIMAGELIST (* WINAPI pImageList_Create) (INT,INT,UINT,INT,INT); 64 extern BOOL (* WINAPI pImageList_Draw) (HIMAGELIST himl, int i, HDC hdcDest, int x, int y, UINT fStyle); 65 extern HICON (* WINAPI pImageList_GetIcon) (HIMAGELIST, INT, UINT); 66 extern INT (* WINAPI pImageList_GetImageCount)(HIMAGELIST); 67 extern COLORREF (* WINAPI pImageList_SetBkColor)(HIMAGELIST, COLORREF); 68 69 extern LPVOID (* WINAPI pCOMCTL32_Alloc) (INT); 70 extern BOOL (* WINAPI pCOMCTL32_Free) (LPVOID); 71 72 extern HDPA (* WINAPI pDPA_Create) (INT); 73 extern INT (* WINAPI pDPA_InsertPtr) (const HDPA, INT, LPVOID); 74 extern BOOL (* WINAPI pDPA_Sort) (const HDPA, PFNDPACOMPARE, LPARAM); 75 extern LPVOID (* WINAPI pDPA_GetPtr) (const HDPA, INT); 76 extern BOOL (* WINAPI pDPA_Destroy) (const HDPA); 77 extern INT (* WINAPI pDPA_Search) (const HDPA, LPVOID, INT, PFNDPACOMPARE, LPARAM, UINT); 78 extern LPVOID (* WINAPI pDPA_DeletePtr) (const HDPA hdpa, INT i); 77 79 #define pDPA_GetPtrCount(hdpa) (*(INT*)(hdpa)) 78 80 79 extern HICON ( WINAPI *pLookupIconIdFromDirectoryEx)(LPBYTE dir, BOOL bIcon, INT width, INT height, UINT cFlag);80 extern HICON ( WINAPI *pCreateIconFromResourceEx)(LPBYTE bits,UINT cbSize, BOOL bIcon, DWORD dwVersion, INT width, INT height,UINT cFlag);81 extern HICON (* WINAPI pLookupIconIdFromDirectoryEx)(LPBYTE dir, BOOL bIcon, INT width, INT height, UINT cFlag); 82 extern HICON (* WINAPI pCreateIconFromResourceEx)(LPBYTE bits,UINT cbSize, BOOL bIcon, DWORD dwVersion, INT width, INT height,UINT cFlag); 81 83 82 84 /* ole2 */ 83 extern HRESULT ( WINAPI*pOleInitialize)(LPVOID reserved);84 extern void ( WINAPI*pOleUninitialize)(void);85 extern HRESULT ( WINAPI*pRegisterDragDrop)(HWND hwnd, IDropTarget* pDropTarget);86 extern HRESULT ( WINAPI*pRevokeDragDrop)(HWND hwnd);87 extern HRESULT ( WINAPI*pDoDragDrop)(LPDATAOBJECT,LPDROPSOURCE,DWORD,DWORD*);88 extern void ( WINAPI*pReleaseStgMedium)(STGMEDIUM* pmedium);89 extern HRESULT ( WINAPI*pOleSetClipboard)(IDataObject* pDataObj);90 extern HRESULT ( WINAPI*pOleGetClipboard)(IDataObject** ppDataObj);85 extern HRESULT (* WINAPI pOleInitialize)(LPVOID reserved); 86 extern void (* WINAPI pOleUninitialize)(void); 87 extern HRESULT (* WINAPI pRegisterDragDrop)(HWND hwnd, IDropTarget* pDropTarget); 88 extern HRESULT (* WINAPI pRevokeDragDrop)(HWND hwnd); 89 extern HRESULT (* WINAPI pDoDragDrop)(LPDATAOBJECT,LPDROPSOURCE,DWORD,DWORD*); 90 extern void (* WINAPI pReleaseStgMedium)(STGMEDIUM* pmedium); 91 extern HRESULT (* WINAPI pOleSetClipboard)(IDataObject* pDataObj); 92 extern HRESULT (* WINAPI pOleGetClipboard)(IDataObject** ppDataObj); 91 93 92 94 … … 172 174 173 175 /* PH: This creates an auto variable just in any importer... 174 HRESULT ( WINAPI*pOleInitialize)(LPVOID reserved);175 void ( WINAPI*pOleUninitialize)(void);176 HRESULT ( WINAPI*pRegisterDragDrop)(HWND hwnd, IDropTarget* pDropTarget);177 HRESULT ( WINAPI*pRevokeDragDrop)(HWND hwnd);178 HRESULT ( WINAPI*pDoDragDrop)(LPDATAOBJECT,LPDROPSOURCE,DWORD,DWORD*);179 void ( WINAPI*pReleaseStgMedium)(STGMEDIUM* pmedium);180 HRESULT ( WINAPI*pOleSetClipboard)(IDataObject* pDataObj);181 HRESULT ( WINAPI*pOleGetClipboard)(IDataObject** ppDataObj);176 HRESULT (* WINAPI pOleInitialize)(LPVOID reserved); 177 void (* WINAPI pOleUninitialize)(void); 178 HRESULT (* WINAPI pRegisterDragDrop)(HWND hwnd, IDropTarget* pDropTarget); 179 HRESULT (* WINAPI pRevokeDragDrop)(HWND hwnd); 180 HRESULT (* WINAPI pDoDragDrop)(LPDATAOBJECT,LPDROPSOURCE,DWORD,DWORD*); 181 void (* WINAPI pReleaseStgMedium)(STGMEDIUM* pmedium); 182 HRESULT (* WINAPI pOleSetClipboard)(IDataObject* pDataObj); 183 HRESULT (* WINAPI pOleGetClipboard)(IDataObject** ppDataObj); 182 184 */ 183 185 … … 197 199 BOOL SHELL_DeleteDirectoryA(LPCSTR pszDir, BOOL bShowUI); 198 200 201 #ifdef __WIN32OS2__ 202 BOOL SHELL_OsIsUnicode(void); 203 #else 199 204 inline static BOOL SHELL_OsIsUnicode(void) 200 205 { … … 202 207 return !(GetVersion() & 0x80000000); 203 208 } 209 #endif 204 210 205 211 #ifdef __cplusplus
Note:
See TracChangeset
for help on using the changeset viewer.