include/shlobj.h: additions and small cleanup, take 2

Rolf Kalbermatter rolf.kalbermatter at citeng.com
Fri Sep 5 13:23:53 CDT 2003


Changelog
  - dlls/shell32/shellpath.c
    Change parameter in SHGetSpecialFolderPathA/W to int as documented in MSDN
  - include/shlobj.h
    Add some more definitions and move SHGetDesktopFolder() from wine/obj_shellfolder.h to here 
  - include/wine/obj_shellfolder.h
    move SHGetDesktopFolder() to shlobj.h

License: X11/LGPL

Forgot a file in the previous patch

Rolf Kalbermatter

Index: dlls/shell32/shellpath.c
===================================================================
RCS file: /home/wine/wine/dlls/shell32/shellpath.c,v
retrieving revision 1.69
diff -u -r1.69 shellpath.c
--- dlls/shell32/shellpath.c	20 Aug 2003 18:22:31 -0000	1.69
+++ dlls/shell32/shellpath.c	5 Sep 2003 18:19:46 -0000
@@ -1011,7 +1011,7 @@
 BOOL WINAPI SHGetSpecialFolderPathA (
 	HWND hwndOwner,
 	LPSTR szPath,
-	DWORD csidl,
+	int csidl,
 	BOOL bCreate)
 {
 	CHAR	szValueName[MAX_PATH], szDefaultPath[MAX_PATH], szBuildPath[MAX_PATH];
@@ -1021,7 +1021,7 @@
 	DWORD	folder = csidl & CSIDL_FOLDER_MASK;
 	CHAR	*p;
 
-	TRACE("%p,%p,csidl=%lu,0x%04x\n", hwndOwner,szPath,csidl,bCreate);
+	TRACE("%p,%p,csidl=%d,0x%04x\n", hwndOwner,szPath,csidl,bCreate);
 
 	if ((folder >= sizeof(CSIDL_Data) / sizeof(CSIDL_Data[0])) ||
 	    (CSIDL_Data[folder].hRootKey == 0))
@@ -1160,7 +1160,7 @@
 BOOL WINAPI SHGetSpecialFolderPathW (
 	HWND hwndOwner,
 	LPWSTR szPath,
-	DWORD csidl,
+	int csidl,
 	BOOL bCreate)
 {
 	char szTemp[MAX_PATH];
@@ -1171,7 +1171,7 @@
                 szPath[MAX_PATH-1] = 0;
         }
 
-	TRACE("%p,%p,csidl=%lu,0x%04x\n", hwndOwner,szPath,csidl,bCreate);
+	TRACE("%p,%p,csidl=%d,0x%04x\n", hwndOwner,szPath,csidl,bCreate);
 
 	return TRUE;
 }
@@ -1182,7 +1182,7 @@
 BOOL WINAPI SHGetSpecialFolderPathAW (
 	HWND hwndOwner,
 	LPVOID szPath,
-	DWORD csidl,
+	int csidl,
 	BOOL bCreate)
 
 {

Index: include/shlobj.h
===================================================================
RCS file: /home/wine/wine/include/shlobj.h,v
retrieving revision 1.71
diff -u -r1.71 shlobj.h
--- include/shlobj.h	4 Sep 2003 19:43:39 -0000	1.71
+++ include/shlobj.h	5 Sep 2003 16:00:09 -0000
@@ -323,6 +323,7 @@
 #define BIF_RETURNFSANCESTORS  0x0008
 #define BIF_EDITBOX            0x0010
 #define BIF_VALIDATE           0x0020
+#define BIF_NEWDIALOGSTYLE     0x0040   
 
 #define BIF_BROWSEFORCOMPUTER  0x1000
 #define BIF_BROWSEFORPRINTER   0x2000
@@ -374,6 +375,9 @@
 #define SHDID_NET_SHARE             15
 #define SHDID_NET_RESTOFNET         16
 #define SHDID_NET_OTHER             17
+#define SHDID_COMPUTER_IMAGING      18
+#define SHDID_COMPUTER_AUDIO        19
+#define SHDID_COMPUTER_SHAREDDOCS   20
 
 typedef struct _SHDESCRIPTIONID
 {   DWORD   dwDescriptionId;
@@ -384,12 +388,10 @@
 HRESULT WINAPI SHGetDataFromIDListW(LPSHELLFOLDER psf, LPCITEMIDLIST pidl, int nFormat, LPVOID pv, int cb);
 #define  SHGetDataFromIDList WINELIB_NAME_AW(SHGetDataFromIDList)
 
-BOOL WINAPI SHGetSpecialFolderPathA (HWND hwndOwner,LPSTR szPath,DWORD csidl,BOOL bCreate);
-BOOL WINAPI SHGetSpecialFolderPathW (HWND hwndOwner,LPWSTR szPath,DWORD csidl,BOOL bCreate);
+BOOL WINAPI SHGetSpecialFolderPathA (HWND hwndOwner, LPSTR szPath, int nFolder, BOOL bCreate);
+BOOL WINAPI SHGetSpecialFolderPathW (HWND hwndOwner, LPWSTR szPath, int nFolder, BOOL bCreate);
 #define  SHGetSpecialFolderPath WINELIB_NAME_AW(SHGetSpecialFolderPath)
 
-HRESULT WINAPI SHGetSpecialFolderLocation(HWND hwndOwner, INT nFolder, LPITEMIDLIST * ppidl);
-
 /****************************************************************************
 * shlview structures
 */
@@ -558,7 +560,8 @@
 /****************************************************************************
 * SHGetSpecialFolderLocation API
 */
-HRESULT WINAPI SHGetSpecialFolderLocation(HWND, INT, LPITEMIDLIST *);
+HRESULT WINAPI SHGetSpecialFolderLocation(HWND hwndOwner, int nFolder, LPITEMIDLIST * ppidl);
+HRESULT WINAPI SHGetFolderLocation(HWND hwndOwner, int nFolder, HANDLE hToken, DWORD dwReserved, LPITEMIDLIST *ppidl);
 
 #define CSIDL_DESKTOP		0x0000
 #define CSIDL_INTERNET		0x0001
@@ -625,6 +628,11 @@
 #define CSIDL_FLAG_CREATE	0x8000
 
 #define CSIDL_FLAG_MASK		0xff00
+
+/****************************************************************************
+ * SHGetDesktopFolder API
+ */
+DWORD WINAPI SHGetDesktopFolder(IShellFolder * *);
 
 /****************************************************************************
  * SHBindToParent API

Index: include/wine/obj_shellfolder.h
===================================================================
RCS file: /home/wine/wine/include/wine/obj_shellfolder.h,v
retrieving revision 1.22
diff -u -r1.22 obj_shellfolder.h
--- include/wine/obj_shellfolder.h	4 Sep 2003 19:43:39 -0000	1.22
+++ include/wine/obj_shellfolder.h	5 Sep 2003 16:10:01 -0000
@@ -33,15 +33,6 @@
 DEFINE_GUID(IID_IPersistFolder3, 0xcef04fdf, 0xfe72, 0x11d2, 0x87, 0xa5, 0x0, 0xc0, 0x4f, 0x68, 0x37, 0xcf);
 typedef struct IPersistFolder3 IPersistFolder3, *LPPERSISTFOLDER3;
 
-
-/************************************************************************
- * Desktopfolder
- */
-
-extern IShellFolder * pdesktopfolder;
-
-DWORD WINAPI SHGetDesktopFolder(IShellFolder * *);
-
 /* GetDetailsEx */
 #define PID_FINDDATA		0
 #define PID_NETRESOURCE		1






More information about the wine-patches mailing list