move from branch
[reactos.git] / reactos / include / reactos / wine / shlobj.h
1 /* $Id$
2 *
3 * Compatibility header
4 *
5 * This header is wrapper to allow compilation of Wine DLLs under ReactOS
6 * build system. It contains definitions commonly refered to as Wineisms
7 * and definitions that are missing in w32api.
8 */
9
10 #include <winnetwk.h>
11
12 #if !defined (_MSC_VER)
13 #include_next <shlobj.h>
14 #endif
15
16 #include <shlguid.h>
17 #include <shobjidl.h>
18
19 #ifndef __WINE_SHLOBJ_H
20 #define __WINE_SHLOBJ_H
21
22 #define SV_CLASS_NAME ("SHELLDLL_DefView")
23
24 /* undocumented */
25 #define FCIDM_SHVIEW_ARRANGE 0x7001
26 #define FCIDM_SHVIEW_DELETE 0x7011
27 #define FCIDM_SHVIEW_PROPERTIES 0x7013
28 #define FCIDM_SHVIEW_CUT 0x7018
29 #define FCIDM_SHVIEW_COPY 0x7019
30 #define FCIDM_SHVIEW_INSERT 0x701A
31 #define FCIDM_SHVIEW_UNDO 0x701B
32 #define FCIDM_SHVIEW_INSERTLINK 0x701C
33 #define FCIDM_SHVIEW_SELECTALL 0x7021
34 #define FCIDM_SHVIEW_INVERTSELECTION 0x7022
35
36 #define FCIDM_SHVIEW_BIGICON 0x7029
37 #define FCIDM_SHVIEW_SMALLICON 0x702A
38 #define FCIDM_SHVIEW_LISTVIEW 0x702B
39 #define FCIDM_SHVIEW_REPORTVIEW 0x702C
40 /* 0x7030-0x703f are used by the shellbrowser */
41 #define FCIDM_SHVIEW_AUTOARRANGE 0x7031
42 #define FCIDM_SHVIEW_SNAPTOGRID 0x7032
43
44 #define FCIDM_SHVIEW_HELP 0x7041
45 #define FCIDM_SHVIEW_RENAME 0x7050
46 #define FCIDM_SHVIEW_CREATELINK 0x7051
47 #define FCIDM_SHVIEW_NEWLINK 0x7052
48 #define FCIDM_SHVIEW_NEWFOLDER 0x7053
49
50 #define FCIDM_SHVIEW_REFRESH 0x7100 /* FIXME */
51 #define FCIDM_SHVIEW_EXPLORE 0x7101 /* FIXME */
52 #define FCIDM_SHVIEW_OPEN 0x7102 /* FIXME */
53
54 /* undocumented toolbar items from stddlg's*/
55 #define FCIDM_TB_UPFOLDER 0xA001
56 #define FCIDM_TB_NEWFOLDER 0xA002
57 #define FCIDM_TB_SMALLICON 0xA003
58 #define FCIDM_TB_REPORTVIEW 0xA004
59 #define FCIDM_TB_DESKTOP 0xA005 /* FIXME */
60
61 #define CSIDL_FOLDER_MASK 0x00ff
62
63 LPVOID WINAPI SHAlloc(ULONG);
64 void WINAPI SHFree(LPVOID);
65 int WINAPI SHMapPIDLToSystemImageListIndex(IShellFolder*,LPCITEMIDLIST,int*);
66
67 /*****************************************************************************
68 * IFileSystemBindData interface
69 */
70 DEFINE_GUID(IID_IFileSystemBindData, 0x01e18d10, 0x4d8b, 0x11d2, 0x85,0x5d, 0x00,0x60,0x08,0x05,0x93,0x67);
71
72 /*** IUnknown methods ***/
73 #define IFileSystemBindData_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
74 #define IFileSystemBindData_AddRef(p) (p)->lpVtbl->AddRef(p)
75 #define IFileSystemBindData_Release(p) (p)->lpVtbl->Release(p)
76 /*** IFileSystemBindData methods ***/
77 #define IFileSystemBindData_GetFindData(p,a) (p)->lpVtbl->GetFindData(p,a)
78 #define IFileSystemBindData_SetFindData(p,a) (p)->lpVtbl->SetFindData(p,a)
79
80 #endif /* __WINE_SHLOBJ_H */