Change parameter in SHGetSpecialFolderPathA/W to int as documented in
MSDN.
Add some more definitions and move SHGetDesktopFolder() from
wine/obj_shellfolder.h to here.

diff --git a/include/shlobj.h b/include/shlobj.h
index ddf5c2b..622359b 100644
--- a/include/shlobj.h
+++ b/include/shlobj.h
@@ -320,6 +320,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
@@ -371,6 +372,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;
@@ -381,12 +385,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
 */
@@ -555,7 +557,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
@@ -624,6 +627,11 @@
 #define CSIDL_FLAG_MASK		0xff00
 
 /****************************************************************************
+ * SHGetDesktopFolder API
+ */
+DWORD WINAPI SHGetDesktopFolder(IShellFolder * *);
+
+/****************************************************************************
  * SHBindToParent API
  */
 HRESULT WINAPI SHBindToParent(LPCITEMIDLIST pidl, REFIID riid, LPVOID *ppv, LPCITEMIDLIST *ppidlLast);