Commit 310f093a authored by Francois Gouget's avatar Francois Gouget Committed by Alexandre Julliard

Moved declarations from undocshell.h to shlobj.h to match the latest

platform SDK.
parent b15504e1
......@@ -283,12 +283,12 @@ VOID WINAPI SHGetSettings(LPSHELLFLAGSTATE lpsfs, DWORD dwMask)
* shell view to re-sort the item list. dwParam identifies the column
* that was clicked.
*/
int WINAPI SHShellFolderView_Message(
LRESULT WINAPI SHShellFolderView_Message(
HWND hwndCabinet,
DWORD dwMessage,
DWORD dwParam)
UINT uMessage,
LPARAM lParam)
{
FIXME("%p %08lx %08lx stub\n",hwndCabinet, dwMessage, dwParam);
FIXME("%p %08x %08lx stub\n",hwndCabinet, uMessage, lParam);
return 0;
}
......@@ -937,15 +937,15 @@ void WINAPI SHAddToRecentDocs (UINT uFlags,LPCVOID pv)
* see IShellFolder::CreateViewObject
*/
HRESULT WINAPI SHCreateShellFolderViewEx(
LPCSHELLFOLDERVIEWINFO psvcbi, /* [in] shelltemplate struct */
LPSHELLVIEW* ppv) /* [out] IShellView pointer */
LPCSFV psvcbi, /* [in] shelltemplate struct */
IShellView **ppv) /* [out] IShellView pointer */
{
IShellView * psf;
HRESULT hRes;
TRACE("sf=%p pidl=%p cb=%p mode=0x%08x parm=0x%08lx\n",
psvcbi->pshf, psvcbi->pidlFolder, psvcbi->lpfnCallback,
psvcbi->uViewMode, psvcbi->dwUser);
TRACE("sf=%p pidl=%p cb=%p mode=0x%08x parm=%p\n",
psvcbi->pshf, psvcbi->pidlFolder, psvcbi->pfnCallback,
psvcbi->fvm, psvcbi->psvOuter);
psf = IShellView_Constructor(psvcbi->pshf);
......@@ -1266,8 +1266,8 @@ HRESULT WINAPI SetAppStartingCursor(HWND u, DWORD v)
* SHLoadOLE [SHELL32.151]
*
*/
HRESULT WINAPI SHLoadOLE(DWORD u)
{ FIXME("0x%04lx stub\n",u);
HRESULT WINAPI SHLoadOLE(LPARAM lParam)
{ FIXME("0x%04lx stub\n",lParam);
return S_OK;
}
/*************************************************************************
......
......@@ -1012,12 +1012,6 @@ static void test_pack_SHELLVIEWID(void)
TEST_TYPE(SHELLVIEWID, 16, 4);
}
static void test_pack_SHELLVIEWPROC(void)
{
/* SHELLVIEWPROC */
TEST_TYPE(SHELLVIEWPROC, 4, 4);
}
static void test_pack(void)
{
test_pack_APPBARDATA();
......@@ -1103,7 +1097,6 @@ static void test_pack(void)
test_pack_SHELLFLAGSTATE();
test_pack_SHELLSTATE();
test_pack_SHELLVIEWID();
test_pack_SHELLVIEWPROC();
test_pack_SHFILEINFOA();
test_pack_SHFILEINFOW();
test_pack_SHFILEOPSTRUCTA();
......
......@@ -49,14 +49,6 @@ BOOL WINAPI ILGetDisplayNameEx(
LPVOID path,
DWORD type);
HRESULT WINAPI ILSaveToStream(
LPSTREAM pstrm,
LPCITEMIDLIST pidl);
HRESULT WINAPI ILLoadFromStream(
LPSTREAM pstrm,
LPITEMIDLIST *ppidl);
LPITEMIDLIST WINAPI ILGlobalClone(LPCITEMIDLIST pidl);
void WINAPI ILGlobalFree(LPITEMIDLIST pidl);
......@@ -356,7 +348,6 @@ int WINAPI FileMenu_AddFilesForPidl(
/****************************************************************************
* Drag And Drop Routines
*/
HRESULT WINAPI SHLoadOLE(DWORD dwFlags);
HRESULT WINAPI SHRegisterDragDrop(
HWND hWnd,
......@@ -485,70 +476,6 @@ BOOL WINAPI PathFindOnPathAW(LPVOID sFile, LPCVOID sOtherDirs);
* Shell Namespace Routines
*/
/* SHCreateShellFolderViewEx callback function */
typedef HRESULT (CALLBACK *LPFNSFVCALLBACK)(
DWORD dwUser,
LPSHELLFOLDER pshf,
HWND hWnd,
UINT uMsg,
WPARAM wParam,
LPARAM lParam);
/* SHCreateShellFolderViewEx structure */
typedef struct
{
DWORD dwSize;
LPSHELLFOLDER pshf;
DWORD dwUser;
LPCITEMIDLIST pidlFolder;
DWORD dwEventId;
LPFNSFVCALLBACK lpfnCallback;
UINT uViewMode;
} SHELLFOLDERVIEWINFO, * LPSHELLFOLDERVIEWINFO;
typedef const SHELLFOLDERVIEWINFO * LPCSHELLFOLDERVIEWINFO;
HRESULT WINAPI SHCreateShellFolderViewEx(
LPCSHELLFOLDERVIEWINFO pshfvi,
LPSHELLVIEW *ppshv);
/* SHCreateShellFolderViewEx callback messages */
#define SFVCB_ADDTOMENU 0x0001
#define SFVCB_INVOKECOMMAND 0x0002
#define SFVCB_GETMENUHELP 0x0003
#define SFVCB_GETTOOLBARTIP 0x0004
#define SFVCB_GETTOOLBARINFO 0x0005
#define SFVCB_ADDTOOLBARITEMS 0x0006
#define SFVCB_INITMENUPOPUP 0x0007
#define SFVCB_SELECTIONCHANGED 0x0008
#define SFVCB_DRAWMENUITEM 0x0009
#define SFVCB_MEASUREMENUITEM 0x000A
#define SFVCB_EXITMENULOOP 0x000B
#define SFVCB_VIEWRELEASE 0x000C
#define SFVCB_GETNAMELENGTH 0x000D
#define SFVCB_CHANGENOTIFY 0x000E
#define SFVCB_WINDOWCREATED 0x000F
#define SFVCB_WINDOWCLOSING 0x0010
#define SFVCB_LISTREFRESHED 0x0011
#define SFVCB_WINDOWFOCUSED 0x0012
#define SFVCB_REGISTERCOPYHOOK 0x0014
#define SFVCB_COPYHOOKCALLBACK 0x0015
#define SFVCB_GETDETAILSOF 0x0017
#define SFVCB_COLUMNCLICK 0x0018
#define SFVCB_GETCHANGENOTIFYPIDL 0x0019
#define SFVCB_GETESTIMATEDCOUNT 0x001A
#define SFVCB_ADJUSTVIEWMODE 0x001B
#define SFVCB_REMOVEFROMMENU 0x001C
#define SFVCB_ADDINGOBJECT 0x001D
#define SFVCB_REMOVINGOBJECT 0x001E
#define SFVCB_UPDATESTATUSBAR 0x001F
#define SFVCB_ISSLOWREFRESH 0x0020
#define SFVCB_GETCOMMANDDIR 0x0021
#define SFVCB_GETCOLUMNSTREAM 0x0022
#define SFVCB_CANSELECTALL 0x0023
#define SFVCB_DRAGSUCCEEDED 0x0024
#define SFVCB_ISSTRICTREFRESH 0x0025
#define SFVCB_ISCHILDOBJECT 0x0026
/* Generic structure used by several messages */
typedef struct
{
......@@ -559,30 +486,6 @@ typedef struct
} SFVCBINFO, * LPSFVCBINFO;
typedef const SFVCBINFO * LPCSFVCBINFO;
/* SFVCB_ADDTOMENU structure */
typedef struct
{
HMENU hMenu;
UINT indexMenu;
UINT idCmdFirst;
UINT idCmdLast;
} SFVMENUINFO, * LPSFVMENUINFO;
/* SFVCB_GETTOOLBARINFO structure */
typedef struct
{
UINT nButtons;
UINT uFlags;
} SFVTOOLBARINFO, * LPSFVTOOLBARINFO;
/* SFVTOOLBARINFO flags */
typedef enum
{
SFVTI_ADDTOEND = 0,
SFVTI_ADDTOFRONT = 1,
SFVTI_OVERWRITE = 2
} SFVTIF;
/* SFVCB_SELECTIONCHANGED structure */
typedef struct
{
......@@ -615,36 +518,6 @@ typedef struct
STRRET lpText;
} SFVCOLUMNINFO, * LPSFVCOLUMNINFO;
int WINAPI SHShellFolderView_Message(
HWND hwndCabinet,
DWORD dwMessage,
DWORD dwParam);
/* SHShellFolderView_Message messages */
#define SFVM_REARRANGE 0x0001
#define SFVM_GETARRANGECOLUMN 0x0002
#define SFVM_ADDOBJECT 0x0003
#define SFVM_GETITEMCOUNT 0x0004
#define SFVM_GETITEMPIDL 0x0005
#define SFVM_REMOVEOBJECT 0x0006
#define SFVM_UPDATEOBJECT 0x0007
#define SFVM_SETREDRAW 0x0008
#define SFVM_GETSELECTEDOBJECTS 0x0009
#define SFVM_ISDROPONSOURCE 0x000A
#define SFVM_MOVEICONS 0x000B
#define SFVM_GETDRAGPOINT 0x000C
#define SFVM_GETDROPPOINT 0x000D
#define SFVM_SETOBJECTPOS 0x000E
#define SFVM_ISDROPONBACKGROUND 0x000F
#define SFVM_CUTOBJECTS 0x0010
#define SFVM_TOGGLEAUTOARRANGE 0x0011
#define SFVM_LINEUPICONS 0x0012
#define SFVM_GETAUTOARRANGE 0x0013
#define SFVM_GETSELECTEDCOUNT 0x0014
#define SFVM_GETITEMSPACING 0x0015
#define SFVM_REFRESHOBJECT 0x0016
#define SFVM_SETCLIPBOARDPOINTS 0x0017
/****************************************************************************
* Misc Stuff
*/
......@@ -689,9 +562,6 @@ HRESULT WINAPI SHCreateDefClassObject(
LPDWORD lpdwUsage,
REFIID riidObject);
DWORD WINAPI SHCLSIDFromStringA (LPCSTR clsid, CLSID *id);
DWORD WINAPI SHCLSIDFromStringW (LPCWSTR clsid, CLSID *id);
void WINAPI SHFreeUnusedLibraries();
/* SHCreateLinks flags */
......
......@@ -36,13 +36,18 @@ extern "C" {
LPVOID WINAPI SHAlloc(ULONG);
HRESULT WINAPI SHCoCreateInstance(LPCWSTR,const CLSID*,IUnknown*,REFIID,LPVOID*);
DWORD WINAPI SHCLSIDFromStringA(LPCSTR,CLSID*);
DWORD WINAPI SHCLSIDFromStringW(LPCWSTR,CLSID*);
#define SHCLSIDFromString WINELIB_NAME_AW(SHCLSIDFromString)
HRESULT WINAPI SHCreateStdEnumFmtEtc(DWORD,const FORMATETC *,IEnumFORMATETC**);
BOOL WINAPI SHFindFiles(LPCITEMIDLIST,LPCITEMIDLIST);
void WINAPI SHFree(LPVOID);
BOOL WINAPI SHGetPathFromIDListA(LPCITEMIDLIST pidl,LPSTR pszPath);
BOOL WINAPI SHGetPathFromIDListW(LPCITEMIDLIST pidl,LPWSTR pszPath);
BOOL WINAPI GetFileNameFromBrowse(HWND,LPSTR,DWORD,LPCSTR,LPCSTR,LPCSTR,LPCSTR);
BOOL WINAPI SHGetPathFromIDListA(LPCITEMIDLIST,LPSTR);
BOOL WINAPI SHGetPathFromIDListW(LPCITEMIDLIST,LPWSTR);
#define SHGetPathFromIDList WINELIB_NAME_AW(SHGetPathFromIDList)
HRESULT WINAPI SHILCreateFromPath(LPCWSTR,LPITEMIDLIST*,DWORD*);
HRESULT WINAPI SHLoadOLE(LPARAM);
LPITEMIDLIST WINAPI SHSimpleIDListFromPath(LPCWSTR);
int WINAPI SHMapPIDLToSystemImageListIndex(IShellFolder*,LPCITEMIDLIST,int*);
......@@ -276,6 +281,162 @@ LPITEMIDLIST WINAPI SHBrowseForFolderW(LPBROWSEINFOW lpbi);
#define BFFM_SETSELECTION WINELIB_NAME_AW(BFFM_SETSELECTION)
#define BFFM_VALIDATEFAILED WINELIB_NAME_AW(BFFM_VALIDATEFAILED)
/**********************************************************************
* SHCreateShellFolderViewEx API
*/
typedef HRESULT (CALLBACK *LPFNVIEWCALLBACK)(
IShellView* dwUser,
IShellFolder* pshf,
HWND hWnd,
UINT uMsg,
WPARAM wParam,
LPARAM lParam);
typedef struct _CSFV
{
UINT uSize;
IShellFolder* pshf;
IShellView* psvOuter;
LPCITEMIDLIST pidlFolder;
LONG lEvents;
LPFNVIEWCALLBACK pfnCallback;
FOLDERVIEWMODE fvm;
} CSFV, *LPCSFV;
HRESULT WINAPI SHCreateShellFolderViewEx(LPCSFV pshfvi, IShellView **ppshv);
/* SHCreateShellFolderViewEx callback messages */
#define SFVM_MERGEMENU 1
#define SFVM_INVOKECOMMAND 2
#define SFVM_GETHELPTEXT 3
#define SFVM_GETTOOLTIPTEXT 4
#define SFVM_GETBUTTONINFO 5
#define SFVM_GETBUTTONS 6
#define SFVM_INITMENUPOPUP 7
#define SFVM_SELECTIONCHANGED 8 /* undocumented */
#define SFVM_DRAWMENUITEM 9 /* undocumented */
#define SFVM_MEASUREMENUITEM 10 /* undocumented */
#define SFVM_EXITMENULOOP 11 /* undocumented */
#define SFVM_VIEWRELEASE 12 /* undocumented */
#define SFVM_GETNAMELENGTH 13 /* undocumented */
#define SFVM_FSNOTIFY 14
#define SFVM_WINDOWCREATED 15
#define SFVM_WINDOWCLOSING 16 /* undocumented */
#define SFVM_LISTREFRESHED 17 /* undocumented */
#define SFVM_WINDOWFOCUSED 18 /* undocumented */
#define SFVM_REGISTERCOPYHOOK 20 /* undocumented */
#define SFVM_COPYHOOKCALLBACK 21 /* undocumented */
#define SFVM_GETDETAILSOF 23
#define SFVM_COLUMNCLICK 24
#define SFVM_QUERYFSNOTIFY 25
#define SFVM_DEFITEMCOUNT 26
#define SFVM_DEFVIEWMODE 27
#define SFVM_UNMERGEFROMMENU 28
#define SFVM_ADDINGOBJECT 29 /* undocumented */
#define SFVM_REMOVINGOBJECT 30 /* undocumented */
#define SFVM_UPDATESTATUSBAR 31
#define SFVM_BACKGROUNDENUM 32
#define SFVM_GETCOMMANDDIR 33 /* undocumented */
#define SFVM_GETCOLUMNSTREAM 34 /* undocumented */
#define SFVM_CANSELECTALL 35 /* undocumented */
#define SFVM_DIDDRAGDROP 36
#define SFVM_ISSTRICTREFRESH 37 /* undocumented */
#define SFVM_ISCHILDOBJECT 38 /* undocumented */
#define SFVM_SETISFV 39
#define SFVM_GETEXTVIEWS 40 /* undocumented */
#define SFVM_THISIDLIST 41
#define SFVM_ADDPROPERTYPAGES 47
#define SFVM_BACKGROUNDENUMDONE 48
#define SFVM_GETNOTIFY 49
#define SFVM_GETSORTDEFAULTS 53
#define SFVM_SIZE 57
#define SFVM_GETZONE 58
#define SFVM_GETPANE 59
#define SFVM_GETHELPTOPIC 63
#define SFVM_GETANIMATION 68
#define SFVM_GET_CUSTOMVIEWINFO 77 /* undocumented */
#define SFVM_ENUMERATEDITEMS 79 /* undocumented */
#define SFVM_GET_VIEW_DATA 80 /* undocumented */
#define SFVM_GET_WEBVIEW_LAYOUT 82 /* undocumented */
#define SFVM_GET_WEBVIEW_CONTENT 83 /* undocumented */
#define SFVM_GET_WEBVIEW_TASKS 84 /* undocumented */
#define SFVM_GET_WEBVIEW_THEME 86 /* undocumented */
#define SFVM_GETDEFERREDVIEWSETTINGS 92 /* undocumented */
/* Types and definitions for the SFM_* parameters */
#define QCMINFO_PLACE_BEFORE 0
#define QCMINFO_PLACE_AFTER 1
typedef struct _QCMINFO_IDMAP_PLACEMENT
{
UINT id;
UINT fFlags;
} QCMINFO_IDMAP_PLACEMENT;
typedef struct _QCMINFO_IDMAP
{
UINT nMaxIds;
QCMINFO_IDMAP_PLACEMENT pIdList[1];
} QCMINFO_IDMAP;
typedef struct _QCMINFO
{
HMENU hMenu;
UINT indexMenu;
UINT idCmdFirst;
UINT idCmdLast;
QCMINFO_IDMAP const* pIdMap;
} QCMINFO, *LPQCMINFO;
#define TBIF_DEFAULT 0x00000000
#define TBIF_APPEND 0x00000000
#define TBIF_PREPEND 0x00000001
#define TBIF_REPLACE 0x00000002
#define TBIF_INTERNETBAR 0x00010000
#define TBIF_STANDARDTOOLBAR 0x00020000
#define TBIF_NOTOOLBAR 0x00030000
typedef struct _TBINFO
{
UINT cbuttons;
UINT uFlags;
} TBINFO, *LPTBINFO;
/****************************************************************************
* SHShellFolderView_Message API
*/
LRESULT WINAPI SHShellFolderView_Message(
HWND hwndCabinet,
UINT uMessage,
LPARAM lParam);
/* SHShellFolderView_Message messages */
#define SFVM_REARRANGE 0x0001
#define SFVM_GETARRANGECOLUMN 0x0002 /* undocumented */
#define SFVM_ADDOBJECT 0x0003
#define SFVM_GETITEMCOUNT 0x0004 /* undocumented */
#define SFVM_GETITEMPIDL 0x0005 /* undocumented */
#define SFVM_REMOVEOBJECT 0x0006
#define SFVM_UPDATEOBJECT 0x0007
#define SFVM_SETREDRAW 0x0008 /* undocumented */
#define SFVM_GETSELECTEDOBJECTS 0x0009
#define SFVM_ISDROPONSOURCE 0x000A /* undocumented */
#define SFVM_MOVEICONS 0x000B /* undocumented */
#define SFVM_GETDRAGPOINT 0x000C /* undocumented */
#define SFVM_GETDROPPOINT 0x000D /* undocumented */
#define SFVM_SETITEMPOS 0x000E
#define SFVM_ISDROPONBACKGROUND 0x000F /* undocumented */
#define SFVM_SETCLIPBOARD 0x0010
#define SFVM_TOGGLEAUTOARRANGE 0x0011 /* undocumented */
#define SFVM_LINEUPICONS 0x0012 /* undocumented */
#define SFVM_GETAUTOARRANGE 0x0013 /* undocumented */
#define SFVM_GETSELECTEDCOUNT 0x0014 /* undocumented */
#define SFVM_GETITEMSPACING 0x0015 /* undocumented */
#define SFVM_REFRESHOBJECT 0x0016 /* undocumented */
#define SFVM_SETPOINTS 0x0017
/****************************************************************************
* SHGetDataFromIDList API
*/
......@@ -321,42 +482,6 @@ BOOL WINAPI SHGetSpecialFolderPathA (HWND hwndOwner, LPSTR szPath, int nFolder,
BOOL WINAPI SHGetSpecialFolderPathW (HWND hwndOwner, LPWSTR szPath, int nFolder, BOOL bCreate);
#define SHGetSpecialFolderPath WINELIB_NAME_AW(SHGetSpecialFolderPath)
/****************************************************************************
* shlview structures
*/
/*
* IShellFolderViewCallback Callback
* This "callback" is called by the shells default IShellView implementation (that
* we got using SHCreateShellViewEx()), to notify us of the various things that
* are happening to the shellview (and ask for things too).
*
* You don't have to support anything here - anything you don't want to
* handle, the shell will do itself if you just return E_NOTIMPL. This parameters
* that the shell passes to this function are entirely undocumented.
*
* HOWEVER, as the cabview sample as originally written used this callback, the
* writers implemented the callback mechanism on top of their own IShellView.
* Look there for some clues on what to do here.
*/
typedef HRESULT (CALLBACK *SHELLVIEWPROC)(DWORD dwUserParam,LPSHELLFOLDER psf,
HWND hwnd,UINT uMsg,UINT wParam,LPARAM lParam);
/* NF valid values for the "viewmode" item of the SHELLTEMPLATE*/
#define NF_INHERITVIEW 0x0000
#define NF_LOCALVIEW 0x0001
typedef struct _SHELLVIEWDATA /* idl */
{ DWORD dwSize;
LPSHELLFOLDER pShellFolder;
DWORD dwUserParam;
LPCITEMIDLIST pidl;
DWORD v3; /* always 0 */
SHELLVIEWPROC pCallBack;
DWORD viewmode; /* NF_* enum */
} SHELLVIEWDATA, * LPSHELLVIEWDATA;
HRESULT WINAPI SHGetMalloc(LPMALLOC *lpmal) ;
/**********************************************************************
......@@ -1026,7 +1151,10 @@ LPITEMIDLIST WINAPI ILGetNext(LPCITEMIDLIST);
UINT WINAPI ILGetSize(LPCITEMIDLIST);
BOOL WINAPI ILIsEqual(LPCITEMIDLIST,LPCITEMIDLIST);
BOOL WINAPI ILIsParent(LPCITEMIDLIST,LPCITEMIDLIST,BOOL);
HRESULT WINAPI ILLoadFromStream(LPSTREAM,LPITEMIDLIST*);
BOOL WINAPI ILRemoveLastID(LPITEMIDLIST);
HRESULT WINAPI ILSaveToStream(LPSTREAM,LPCITEMIDLIST);
#include <poppack.h>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment