Changeset 4121 for trunk/src/shell32/shell32_main.h
- Timestamp:
- Aug 30, 2000, 3:54:57 PM (25 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/shell32/shell32_main.h
r4082 r4121 1 /* $Id: shell32_main.h,v 1.5 2000-08-24 09:35:07 sandervl Exp $ */ 2 1 /* $Id: shell32_main.h,v 1.6 2000-08-30 13:50:57 sandervl Exp $ */ 3 2 /* 4 * Win32 SHELL32 for OS/2 5 * 6 * Copyright 1999 Patrick Haller (haller@zebra.fh-weingarten.de) 7 * Project Odin Software License can be found in LICENSE.TXT 8 * 9 * Note: Odin changes marked by #ifdef __WIN32OS2__ ! 10 * 11 * Corel WINE 20000324 level 12 */ 13 14 /* 15 * internal Shell32 Library definitions 3 * internal Shell32 Library definitions 16 4 */ 17 5 … … 19 7 #define __WINE_SHELL_MAIN_H 20 8 21 22 /*****************************************************************************23 * Includes *24 *****************************************************************************/25 26 #include "imagelist.h"27 9 #include "commctrl.h" 28 10 #include "shell.h" … … 35 17 #include "wine/obj_shelllink.h" 36 18 #include "wine/obj_extracticon.h" 37 38 #ifdef __cplusplus 39 extern "C" { 40 #endif /* defined(__cplusplus) */ 41 42 43 /** 44 * WINE portability macro 45 **/ 46 19 #ifdef __WIN32OS2__ 20 #include <heapstring.h> 21 #endif 47 22 /******************************************* 48 23 * global SHELL32.DLL variables 49 24 */ 50 extern HMODULE huser32; 51 extern HINSTANCE shell32_hInstance; 52 extern LONG shell32_ObjCount; 53 extern HIMAGELIST ShellSmallIconList; 54 extern HIMAGELIST ShellBigIconList; 55 extern HDPA sic_hdpa; 25 extern HMODULE huser32; 26 extern HINSTANCE shell32_hInstance; 27 extern LONG shell32_ObjCount; 28 extern HIMAGELIST ShellSmallIconList; 29 extern HIMAGELIST ShellBigIconList; 30 #ifndef __WIN32OS2__ 31 extern HDPA sic_hdpa; 32 #endif 56 33 57 34 /******************************************* 58 35 * pointer to functions dynamically loaded 59 36 */ 60 extern void (* WINAPIpDLLInitComctl)(LPVOID);61 extern INT (* WINAPIpImageList_AddIcon) (HIMAGELIST himl, HICON hIcon);62 extern INT (* WINAPIpImageList_ReplaceIcon) (HIMAGELIST, INT, HICON);63 extern HIMAGELIST (* WINAPI 64 extern BOOL (* WINAPIpImageList_Draw) (HIMAGELIST himl, int i, HDC hdcDest, int x, int y, UINT fStyle);65 extern HICON (* WINAPIpImageList_GetIcon) (HIMAGELIST, INT, UINT);66 extern INT (* WINAPIpImageList_GetImageCount)(HIMAGELIST);37 extern void (* WINAPI pDLLInitComctl)(LPVOID); 38 extern INT (* WINAPI pImageList_AddIcon) (HIMAGELIST himl, HICON hIcon); 39 extern INT (* WINAPI pImageList_ReplaceIcon) (HIMAGELIST, INT, HICON); 40 extern HIMAGELIST (* WINAPI pImageList_Create) (INT,INT,UINT,INT,INT); 41 extern BOOL (* WINAPI pImageList_Draw) (HIMAGELIST himl, int i, HDC hdcDest, int x, int y, UINT fStyle); 42 extern HICON (* WINAPI pImageList_GetIcon) (HIMAGELIST, INT, UINT); 43 extern INT (* WINAPI pImageList_GetImageCount)(HIMAGELIST); 67 44 extern COLORREF (* WINAPI pImageList_SetBkColor)(HIMAGELIST, COLORREF); 68 45 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 (* WINAPIpDPA_Search) (const HDPA, LPVOID, INT, PFNDPACOMPARE, LPARAM, UINT);78 extern LPVOID (* WINAPIpDPA_DeletePtr) (const HDPA hdpa, INT i);79 #define pDPA_GetPtrCount(hdpa) (*(INT*)(hdpa)) 46 extern LPVOID (* WINAPI pCOMCTL32_Alloc) (INT); 47 extern BOOL (* WINAPI pCOMCTL32_Free) (LPVOID); 48 49 extern HDPA (* WINAPI pDPA_Create) (INT); 50 extern INT (* WINAPI pDPA_InsertPtr) (const HDPA, INT, LPVOID); 51 extern BOOL (* WINAPI pDPA_Sort) (const HDPA, PFNDPACOMPARE, LPARAM); 52 extern LPVOID (* WINAPI pDPA_GetPtr) (const HDPA, INT); 53 extern BOOL (* WINAPI pDPA_Destroy) (const HDPA); 54 extern INT (* WINAPI pDPA_Search) (const HDPA, LPVOID, INT, PFNDPACOMPARE, LPARAM, UINT); 55 extern LPVOID (* WINAPI pDPA_DeletePtr) (const HDPA hdpa, INT i); 56 #define pDPA_GetPtrCount(hdpa) (*(INT*)(hdpa)) 80 57 81 58 extern HICON (* WINAPI pLookupIconIdFromDirectoryEx)(LPBYTE dir, BOOL bIcon, INT width, INT height, UINT cFlag); … … 83 60 84 61 /* ole2 */ 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); 93 94 62 /* 63 extern HRESULT (* WINAPI pOleInitialize)(LPVOID reserved); 64 extern void (* WINAPI pOleUninitialize)(void); 65 extern HRESULT (* WINAPI pDoDragDrop)(IDataObject* pDataObject, IDropSource * pDropSource, DWORD dwOKEffect, DWORD * pdwEffect); 66 extern HRESULT (* WINAPI pRegisterDragDrop)(HWND hwnd, IDropTarget* pDropTarget); 67 extern HRESULT (* WINAPI pRevokeDragDrop)(HWND hwnd); 68 */ 95 69 BOOL WINAPI Shell_GetImageList(HIMAGELIST * lpBigList, HIMAGELIST * lpSmallList); 96 70 … … 112 86 BOOL HCR_GetFolderAttributes (REFIID riid, LPDWORD szDest); 113 87 114 DWORD 88 DWORD WINAPI ParseFieldA(LPCSTR src,DWORD field,LPSTR dst,DWORD len); 115 89 116 90 /**************************************************************************** 117 91 * Class constructors 118 92 */ 119 LPDATAOBJECT 120 LPENUMFORMATETC 121 122 LPCLASSFACTORY 123 IContextMenu * 124 IContextMenu * 125 LPSHELLVIEW 126 LPSHELLLINK 93 LPDATAOBJECT IDataObject_Constructor(HWND hwndOwner, LPITEMIDLIST myPidl, LPITEMIDLIST * apidl, UINT cidl); 94 LPENUMFORMATETC IEnumFORMATETC_Constructor(UINT, const FORMATETC []); 95 96 LPCLASSFACTORY IClassFactory_Constructor(REFCLSID); 97 IContextMenu * ISvItemCm_Constructor(LPSHELLFOLDER pSFParent, LPCITEMIDLIST pidl, LPCITEMIDLIST *aPidls, UINT uItemCount); 98 IContextMenu * ISvBgCm_Constructor(LPSHELLFOLDER pSFParent); 99 LPSHELLVIEW IShellView_Constructor(LPSHELLFOLDER); 100 LPSHELLLINK IShellLink_Constructor(BOOL); 127 101 128 102 IShellFolder * ISF_Desktop_Constructor(void); 129 103 130 104 /* kind of enumidlist */ 131 #define EIDL_DESK 132 #define EIDL_MYCOMP 133 #define EIDL_FILE 134 135 LPENUMIDLIST 136 137 LPEXTRACTICONA 138 HRESULT CreateStreamOnFile (LPCSTR pszFilename, IStream ** ppstm);105 #define EIDL_DESK 0 106 #define EIDL_MYCOMP 1 107 #define EIDL_FILE 2 108 109 LPENUMIDLIST IEnumIDList_Constructor(LPCSTR,DWORD,DWORD); 110 111 LPEXTRACTICONA IExtractIconA_Constructor(LPITEMIDLIST); 112 HRESULT CreateStreamOnFile (LPCSTR pszFilename, IStream ** ppstm); 139 113 140 114 /* fixme: rename the functions when the shell32.dll has it's own exports namespace */ … … 152 126 /* initialisation for FORMATETC */ 153 127 #define InitFormatEtc(fe, cf, med) \ 154 155 156 157 158 159 160 128 {\ 129 (fe).cfFormat=cf;\ 130 (fe).dwAspect=DVASPECT_CONTENT;\ 131 (fe).ptd=NULL;\ 132 (fe).tymed=med;\ 133 (fe).lindex=-1;\ 134 }; 161 135 162 136 #define KeyStateToDropEffect(kst)\ 163 164 165 137 (((kst) & MK_CONTROL) ?\ 138 (((kst) & MK_SHIFT) ? DROPEFFECT_LINK : DROPEFFECT_COPY):\ 139 DROPEFFECT_MOVE) 166 140 167 141 /* Systray */ 168 142 BOOL SYSTRAY_Init(void); 169 143 170 144 /* Clipboard */ 171 145 void InitShellOle(void); 172 146 void FreeShellOle(void); 173 147 BOOL GetShellOle(void); 174 175 /* PH: This creates an auto variable just in any importer... 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); 184 */ 185 148 149 #ifdef __WIN32OS2__ 150 extern HRESULT (* WINAPI pOleInitialize)(LPVOID reserved); 151 extern void (* WINAPI pOleUninitialize)(void); 152 extern HRESULT (* WINAPI pRegisterDragDrop)(HWND hwnd, IDropTarget* pDropTarget); 153 extern HRESULT (* WINAPI pRevokeDragDrop)(HWND hwnd); 154 extern HRESULT (* WINAPI pDoDragDrop)(LPDATAOBJECT,LPDROPSOURCE,DWORD,DWORD*); 155 extern void (* WINAPI pReleaseStgMedium)(STGMEDIUM* pmedium); 156 extern HRESULT (* WINAPI pOleSetClipboard)(IDataObject* pDataObj); 157 extern HRESULT (* WINAPI pOleGetClipboard)(IDataObject** ppDataObj); 158 #else 159 HRESULT (* WINAPI pOleInitialize)(LPVOID reserved); 160 void (* WINAPI pOleUninitialize)(void); 161 HRESULT (* WINAPI pRegisterDragDrop)(HWND hwnd, IDropTarget* pDropTarget); 162 HRESULT (* WINAPI pRevokeDragDrop)(HWND hwnd); 163 HRESULT (* WINAPI pDoDragDrop)(LPDATAOBJECT,LPDROPSOURCE,DWORD,DWORD*); 164 void (* WINAPI pReleaseStgMedium)(STGMEDIUM* pmedium); 165 HRESULT (* WINAPI pOleSetClipboard)(IDataObject* pDataObj); 166 HRESULT (* WINAPI pOleGetClipboard)(IDataObject** ppDataObj); 167 #endif 168 186 169 HGLOBAL RenderHDROP(LPITEMIDLIST pidlRoot, LPITEMIDLIST * apidl, UINT cidl); 187 170 HGLOBAL RenderSHELLIDLIST (LPITEMIDLIST pidlRoot, LPITEMIDLIST * apidl, UINT cidl); … … 200 183 201 184 #ifdef __WIN32OS2__ 185 #ifdef __cplusplus 186 extern "C" { 187 #endif 202 188 BOOL SHELL_OsIsUnicode(void); 189 190 #include <peexe.h> 191 PIMAGE_RESOURCE_DIRECTORY GetResDirEntryW(PIMAGE_RESOURCE_DIRECTORY resdirptr, 192 LPCWSTR name,DWORD root, 193 BOOL allowdefault); 194 195 #ifdef __cplusplus 196 } 197 #endif 203 198 #else 204 199 inline static BOOL SHELL_OsIsUnicode(void) 205 200 { 206 /* if high-bit of version is 0, we are emulating NT */207 return !(GetVersion() & 0x80000000);201 /* if high-bit of version is 0, we are emulating NT */ 202 return !(GetVersion() & 0x80000000); 208 203 } 209 204 #endif 210 211 #ifdef __cplusplus 212 } 213 #endif /* defined(__cplusplus) */ 214 215 #endif 205 206 #endif
Note:
See TracChangeset
for help on using the changeset viewer.