Converted the rest of the obj_*.h headers to IDL into shobjidl.idl.

oldstable
Alexandre Julliard 2003-09-09 19:32:36 +00:00
parent cc392b95cf
commit 69c90c2a9f
18 changed files with 1819 additions and 613 deletions

View File

@ -1417,15 +1417,15 @@ static LRESULT FILEDLG95_OnWMCommand(HWND hwnd, WPARAM wParam, LPARAM lParam)
break;
/* New folder button */
case FCIDM_TB_NEWFOLDER:
FILEDLG95_SHELL_ExecuteCommand(hwnd,CMDSTR_NEWFOLDER);
FILEDLG95_SHELL_ExecuteCommand(hwnd,CMDSTR_NEWFOLDERA);
break;
/* List option button */
case FCIDM_TB_SMALLICON:
FILEDLG95_SHELL_ExecuteCommand(hwnd,CMDSTR_VIEWLIST);
FILEDLG95_SHELL_ExecuteCommand(hwnd,CMDSTR_VIEWLISTA);
break;
/* Details option button */
case FCIDM_TB_REPORTVIEW:
FILEDLG95_SHELL_ExecuteCommand(hwnd,CMDSTR_VIEWDETAILS);
FILEDLG95_SHELL_ExecuteCommand(hwnd,CMDSTR_VIEWDETAILSA);
break;
/* Details option button */
case FCIDM_TB_DESKTOP:

View File

@ -85,8 +85,8 @@ LPDATAOBJECT IDataObject_Constructor(HWND hwndOwner, LPCITEMIDLIST myPidl, LPCIT
LPENUMFORMATETC IEnumFORMATETC_Constructor(UINT, const FORMATETC []);
LPCLASSFACTORY IClassFactory_Constructor(REFCLSID);
IContextMenu * ISvItemCm_Constructor(LPSHELLFOLDER pSFParent, LPCITEMIDLIST pidl, LPCITEMIDLIST *aPidls, UINT uItemCount);
IContextMenu * ISvBgCm_Constructor(LPSHELLFOLDER pSFParent);
IContextMenu2 * ISvItemCm_Constructor(LPSHELLFOLDER pSFParent, LPCITEMIDLIST pidl, LPCITEMIDLIST *aPidls, UINT uItemCount);
IContextMenu2 * ISvBgCm_Constructor(LPSHELLFOLDER pSFParent);
LPSHELLVIEW IShellView_Constructor(LPSHELLFOLDER);
HRESULT WINAPI IFSFolder_Constructor(IUnknown * pUnkOuter, REFIID riid, LPVOID * ppv);

View File

@ -808,7 +808,7 @@ static void ShellView_DoContextMenu(IShellViewImpl * This, WORD x, WORD y, BOOL
BOOL fExplore = FALSE;
HWND hwndTree = 0;
LPCONTEXTMENU pContextMenu = NULL;
IContextMenu * pCM = NULL;
IContextMenu2 *pCM = NULL;
CMINVOKECOMMANDINFO cmi;
TRACE("(%p)->(0x%08x 0x%08x 0x%08x) stub\n",This, x, y, bDefault);
@ -880,7 +880,7 @@ static void ShellView_DoContextMenu(IShellViewImpl * This, WORD x, WORD y, BOOL
hMenu = CreatePopupMenu();
pCM = ISvBgCm_Constructor(This->pSFParent);
IContextMenu_QueryContextMenu(pCM, hMenu, 0, FCIDM_SHVIEWFIRST, FCIDM_SHVIEWLAST, 0);
IContextMenu2_QueryContextMenu(pCM, hMenu, 0, FCIDM_SHVIEWFIRST, FCIDM_SHVIEWLAST, 0);
uCommand = TrackPopupMenu( hMenu, TPM_LEFTALIGN | TPM_RETURNCMD,x,y,0,This->hWnd,NULL);
DestroyMenu(hMenu);
@ -891,9 +891,9 @@ static void ShellView_DoContextMenu(IShellViewImpl * This, WORD x, WORD y, BOOL
cmi.cbSize = sizeof(cmi);
cmi.lpVerb = (LPCSTR)MAKEINTRESOURCEA(uCommand);
cmi.hwnd = This->hWndParent;
IContextMenu_InvokeCommand(pCM, &cmi);
IContextMenu2_InvokeCommand(pCM, &cmi);
IContextMenu_Release(pCM);
IContextMenu2_Release(pCM);
}
}

View File

@ -41,18 +41,18 @@ WINE_DEFAULT_DEBUG_CHANNEL(shell);
*/
typedef struct
{
ICOM_VFIELD(IContextMenu);
ICOM_VFIELD(IContextMenu2);
IShellFolder* pSFParent;
DWORD ref;
} BgCmImpl;
static struct ICOM_VTABLE(IContextMenu) cmvt;
static struct ICOM_VTABLE(IContextMenu2) cmvt;
/**************************************************************************
* ISVBgCm_Constructor()
*/
IContextMenu *ISvBgCm_Constructor(IShellFolder* pSFParent)
IContextMenu2 *ISvBgCm_Constructor(IShellFolder* pSFParent)
{
BgCmImpl* cm;
@ -63,13 +63,13 @@ IContextMenu *ISvBgCm_Constructor(IShellFolder* pSFParent)
if(pSFParent) IShellFolder_AddRef(pSFParent);
TRACE("(%p)->()\n",cm);
return (IContextMenu*)cm;
return (IContextMenu2*)cm;
}
/**************************************************************************
* ISVBgCm_fnQueryInterface
*/
static HRESULT WINAPI ISVBgCm_fnQueryInterface(IContextMenu *iface, REFIID riid, LPVOID *ppvObj)
static HRESULT WINAPI ISVBgCm_fnQueryInterface(IContextMenu2 *iface, REFIID riid, LPVOID *ppvObj)
{
ICOM_THIS(BgCmImpl, iface);
@ -77,11 +77,9 @@ static HRESULT WINAPI ISVBgCm_fnQueryInterface(IContextMenu *iface, REFIID riid,
*ppvObj = NULL;
if(IsEqualIID(riid, &IID_IUnknown)) /*IUnknown*/
{
*ppvObj = This;
}
else if(IsEqualIID(riid, &IID_IContextMenu)) /*IContextMenu*/
if(IsEqualIID(riid, &IID_IUnknown) ||
IsEqualIID(riid, &IID_IContextMenu) ||
IsEqualIID(riid, &IID_IContextMenu2))
{
*ppvObj = This;
}
@ -103,7 +101,7 @@ static HRESULT WINAPI ISVBgCm_fnQueryInterface(IContextMenu *iface, REFIID riid,
/**************************************************************************
* ISVBgCm_fnAddRef
*/
static ULONG WINAPI ISVBgCm_fnAddRef(IContextMenu *iface)
static ULONG WINAPI ISVBgCm_fnAddRef(IContextMenu2 *iface)
{
ICOM_THIS(BgCmImpl, iface);
@ -115,7 +113,7 @@ static ULONG WINAPI ISVBgCm_fnAddRef(IContextMenu *iface)
/**************************************************************************
* ISVBgCm_fnRelease
*/
static ULONG WINAPI ISVBgCm_fnRelease(IContextMenu *iface)
static ULONG WINAPI ISVBgCm_fnRelease(IContextMenu2 *iface)
{
ICOM_THIS(BgCmImpl, iface);
@ -140,7 +138,7 @@ static ULONG WINAPI ISVBgCm_fnRelease(IContextMenu *iface)
*/
static HRESULT WINAPI ISVBgCm_fnQueryContextMenu(
IContextMenu *iface,
IContextMenu2 *iface,
HMENU hMenu,
UINT indexMenu,
UINT idCmdFirst,
@ -186,7 +184,7 @@ static HRESULT WINAPI ISVBgCm_fnQueryContextMenu(
* DoNewFolder
*/
static void DoNewFolder(
IContextMenu *iface,
IContextMenu2 *iface,
IShellView *psv)
{
ICOM_THIS(BgCmImpl, iface);
@ -217,7 +215,7 @@ static void DoNewFolder(
* DoPaste
*/
static BOOL DoPaste(
IContextMenu *iface)
IContextMenu2 *iface)
{
ICOM_THIS(BgCmImpl, iface);
BOOL bSuccess = FALSE;
@ -313,7 +311,7 @@ static BOOL DoPaste(
* ISVBgCm_fnInvokeCommand()
*/
static HRESULT WINAPI ISVBgCm_fnInvokeCommand(
IContextMenu *iface,
IContextMenu2 *iface,
LPCMINVOKECOMMANDINFO lpcmi)
{
ICOM_THIS(BgCmImpl, iface);
@ -383,7 +381,7 @@ static HRESULT WINAPI ISVBgCm_fnInvokeCommand(
*
*/
static HRESULT WINAPI ISVBgCm_fnGetCommandString(
IContextMenu *iface,
IContextMenu2 *iface,
UINT idCommand,
UINT uFlags,
UINT* lpReserved,
@ -417,7 +415,7 @@ static HRESULT WINAPI ISVBgCm_fnGetCommandString(
* ISVBgCm_fnHandleMenuMsg()
*/
static HRESULT WINAPI ISVBgCm_fnHandleMenuMsg(
IContextMenu *iface,
IContextMenu2 *iface,
UINT uMsg,
WPARAM wParam,
LPARAM lParam)
@ -430,10 +428,10 @@ static HRESULT WINAPI ISVBgCm_fnHandleMenuMsg(
}
/**************************************************************************
* IContextMenu VTable
* IContextMenu2 VTable
*
*/
static struct ICOM_VTABLE(IContextMenu) cmvt =
static struct ICOM_VTABLE(IContextMenu2) cmvt =
{
ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
ISVBgCm_fnQueryInterface,
@ -442,6 +440,5 @@ static struct ICOM_VTABLE(IContextMenu) cmvt =
ISVBgCm_fnQueryContextMenu,
ISVBgCm_fnInvokeCommand,
ISVBgCm_fnGetCommandString,
ISVBgCm_fnHandleMenuMsg,
(void *) 0xdeadbabe /* just paranoia (IContextMenu3) */
ISVBgCm_fnHandleMenuMsg
};

View File

@ -41,7 +41,7 @@ WINE_DEFAULT_DEBUG_CHANNEL(shell);
* IContextMenu Implementation
*/
typedef struct
{ ICOM_VFIELD(IContextMenu);
{ ICOM_VFIELD(IContextMenu2);
DWORD ref;
IShellFolder* pSFParent;
LPITEMIDLIST pidl; /* root pidl */
@ -51,7 +51,7 @@ typedef struct
} ItemCmImpl;
static struct ICOM_VTABLE(IContextMenu) cmvt;
static struct ICOM_VTABLE(IContextMenu2) cmvt;
/**************************************************************************
* ISvItemCm_CanRenameItems()
@ -76,7 +76,7 @@ static BOOL ISvItemCm_CanRenameItems(ItemCmImpl *This)
/**************************************************************************
* ISvItemCm_Constructor()
*/
IContextMenu *ISvItemCm_Constructor(LPSHELLFOLDER pSFParent, LPCITEMIDLIST pidl, LPCITEMIDLIST *apidl, UINT cidl)
IContextMenu2 *ISvItemCm_Constructor(LPSHELLFOLDER pSFParent, LPCITEMIDLIST pidl, LPCITEMIDLIST *apidl, UINT cidl)
{ ItemCmImpl* cm;
UINT u;
@ -99,13 +99,13 @@ IContextMenu *ISvItemCm_Constructor(LPSHELLFOLDER pSFParent, LPCITEMIDLIST pidl,
TRACE("(%p)->()\n",cm);
return (IContextMenu*)cm;
return (IContextMenu2*)cm;
}
/**************************************************************************
* ISvItemCm_fnQueryInterface
*/
static HRESULT WINAPI ISvItemCm_fnQueryInterface(IContextMenu *iface, REFIID riid, LPVOID *ppvObj)
static HRESULT WINAPI ISvItemCm_fnQueryInterface(IContextMenu2 *iface, REFIID riid, LPVOID *ppvObj)
{
ICOM_THIS(ItemCmImpl, iface);
@ -113,11 +113,9 @@ static HRESULT WINAPI ISvItemCm_fnQueryInterface(IContextMenu *iface, REFIID rii
*ppvObj = NULL;
if(IsEqualIID(riid, &IID_IUnknown)) /*IUnknown*/
{
*ppvObj = This;
}
else if(IsEqualIID(riid, &IID_IContextMenu)) /*IContextMenu*/
if(IsEqualIID(riid, &IID_IUnknown) ||
IsEqualIID(riid, &IID_IContextMenu) ||
IsEqualIID(riid, &IID_IContextMenu2))
{
*ppvObj = This;
}
@ -139,7 +137,7 @@ static HRESULT WINAPI ISvItemCm_fnQueryInterface(IContextMenu *iface, REFIID rii
/**************************************************************************
* ISvItemCm_fnAddRef
*/
static ULONG WINAPI ISvItemCm_fnAddRef(IContextMenu *iface)
static ULONG WINAPI ISvItemCm_fnAddRef(IContextMenu2 *iface)
{
ICOM_THIS(ItemCmImpl, iface);
@ -151,7 +149,7 @@ static ULONG WINAPI ISvItemCm_fnAddRef(IContextMenu *iface)
/**************************************************************************
* ISvItemCm_fnRelease
*/
static ULONG WINAPI ISvItemCm_fnRelease(IContextMenu *iface)
static ULONG WINAPI ISvItemCm_fnRelease(IContextMenu2 *iface)
{
ICOM_THIS(ItemCmImpl, iface);
@ -211,7 +209,7 @@ void WINAPI _InsertMenuItem (
*/
static HRESULT WINAPI ISvItemCm_fnQueryContextMenu(
IContextMenu *iface,
IContextMenu2 *iface,
HMENU hmenu,
UINT indexMenu,
UINT idCmdFirst,
@ -263,7 +261,7 @@ static HRESULT WINAPI ISvItemCm_fnQueryContextMenu(
*/
static void DoOpenExplore(
IContextMenu *iface,
IContextMenu2 *iface,
HWND hwnd,
LPCSTR verb)
{
@ -305,7 +303,7 @@ static void DoOpenExplore(
* DoRename
*/
static void DoRename(
IContextMenu *iface,
IContextMenu2 *iface,
HWND hwnd)
{
ICOM_THIS(ItemCmImpl, iface);
@ -333,7 +331,7 @@ static void DoRename(
*
* deletes the currently selected items
*/
static void DoDelete(IContextMenu *iface)
static void DoDelete(IContextMenu2 *iface)
{
ICOM_THIS(ItemCmImpl, iface);
ISFHelper * psfhlp;
@ -352,7 +350,7 @@ static void DoDelete(IContextMenu *iface)
* copies the currently selected items into the clipboard
*/
static BOOL DoCopyOrCut(
IContextMenu *iface,
IContextMenu2 *iface,
HWND hwnd,
BOOL bCut)
{
@ -425,7 +423,7 @@ static BOOL DoCopyOrCut(
* ISvItemCm_fnInvokeCommand()
*/
static HRESULT WINAPI ISvItemCm_fnInvokeCommand(
IContextMenu *iface,
IContextMenu2 *iface,
LPCMINVOKECOMMANDINFO lpcmi)
{
ICOM_THIS(ItemCmImpl, iface);
@ -488,7 +486,7 @@ static HRESULT WINAPI ISvItemCm_fnInvokeCommand(
* ISvItemCm_fnGetCommandString()
*/
static HRESULT WINAPI ISvItemCm_fnGetCommandString(
IContextMenu *iface,
IContextMenu2 *iface,
UINT idCommand,
UINT uFlags,
UINT* lpReserved,
@ -503,7 +501,8 @@ static HRESULT WINAPI ISvItemCm_fnGetCommandString(
switch(uFlags)
{
case GCS_HELPTEXT:
case GCS_HELPTEXTA:
case GCS_HELPTEXTW:
hr = E_NOTIMPL;
break;
@ -528,7 +527,8 @@ static HRESULT WINAPI ISvItemCm_fnGetCommandString(
}
break;
case GCS_VALIDATE:
case GCS_VALIDATEA:
case GCS_VALIDATEW:
hr = NOERROR;
break;
}
@ -543,7 +543,7 @@ static HRESULT WINAPI ISvItemCm_fnGetCommandString(
* is nevertheless called from word95
*/
static HRESULT WINAPI ISvItemCm_fnHandleMenuMsg(
IContextMenu *iface,
IContextMenu2 *iface,
UINT uMsg,
WPARAM wParam,
LPARAM lParam)
@ -555,7 +555,7 @@ static HRESULT WINAPI ISvItemCm_fnHandleMenuMsg(
return E_NOTIMPL;
}
static struct ICOM_VTABLE(IContextMenu) cmvt =
static struct ICOM_VTABLE(IContextMenu2) cmvt =
{
ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
ISvItemCm_fnQueryInterface,
@ -564,6 +564,5 @@ static struct ICOM_VTABLE(IContextMenu) cmvt =
ISvItemCm_fnQueryContextMenu,
ISvItemCm_fnInvokeCommand,
ISvItemCm_fnGetCommandString,
ISvItemCm_fnHandleMenuMsg,
(void *) 0xdeadbabe /* just paranoia */
ISvItemCm_fnHandleMenuMsg
};

View File

@ -244,12 +244,6 @@ WINE_INCLUDES = \
debug.h \
exception.h \
library.h \
obj_commdlgbrowser.h \
obj_contextmenu.h \
obj_dockingwindowframe.h \
obj_dragdrophelper.h \
obj_extracticon.h \
obj_shellfolder.h \
unicode.h
EXTRASUBDIRS = bitmaps msvcrt msvcrt/sys wine

View File

@ -41,28 +41,28 @@ DEFINE_SHLGUID(CGID_ShellServiceObject, 0x000214D2L, 0, 0);
DEFINE_SHLGUID(CGID_ExplorerBarDoc, 0x000214D3L, 0, 0);
DEFINE_SHLGUID(IID_INewShortcutHookA, 0x000214E1L, 0, 0);
DEFINE_SHLGUID(IID_IContextMenu, 0x000214E4L, 0, 0);
DEFINE_SHLGUID(IID_IShellIcon, 0x000214E5L, 0, 0);
DEFINE_SHLGUID(IID_IShellPropSheetExt, 0x000214E9L, 0, 0);
DEFINE_SHLGUID(IID_IExtractIconA, 0x000214EBL, 0, 0);
DEFINE_SHLGUID(IID_IShellDetails, 0x000214ECL, 0, 0);
DEFINE_SHLGUID(IID_IDelayedRelease, 0x000214EDL, 0, 0);
DEFINE_SHLGUID(IID_IShellCopyHookA, 0x000214EFL, 0, 0);
DEFINE_SHLGUID(IID_IFileViewerA, 0x000214F0L, 0, 0);
DEFINE_SHLGUID(IID_ICommDlgBrowser, 0x000214F1L, 0, 0);
DEFINE_SHLGUID(IID_IFileViewerSite, 0x000214F3L, 0, 0);
DEFINE_SHLGUID(IID_IContextMenu2, 0x000214F4L, 0, 0);
DEFINE_SHLGUID(IID_IShellExecuteHookA, 0x000214F5L, 0, 0);
DEFINE_SHLGUID(IID_IPropSheetPage, 0x000214F6L, 0, 0);
DEFINE_SHLGUID(IID_INewShortcutHookW, 0x000214F7L, 0, 0);
DEFINE_SHLGUID(IID_IFileViewerW, 0x000214F8L, 0, 0);
DEFINE_SHLGUID(IID_IExtractIconW, 0x000214FAL, 0, 0);
DEFINE_SHLGUID(IID_IShellExecuteHookW, 0x000214FBL, 0, 0);
DEFINE_SHLGUID(IID_IShellCopyHookW, 0x000214FCL, 0, 0);
DEFINE_SHLGUID(IID_IRemoteComputer, 0x000214FEL, 0, 0);
DEFINE_SHLGUID(IID_IQueryInfo, 0x00021500L, 0, 0);
/* avoid duplicate definitions with shobjidl.h (FIXME) */
/* DEFINE_SHLGUID(IID_IExtractIconA, 0x000214EBL, 0, 0); */
/* DEFINE_SHLGUID(IID_IExtractIconW, 0x000214FAL, 0, 0); */
/* DEFINE_SHLGUID(IID_IContextMenu, 0x000214E4L, 0, 0); */
/* DEFINE_SHLGUID(IID_IContextMenu2, 0x000214F4L, 0, 0); */
/* DEFINE_SHLGUID(IID_ICommDlgBrowser, 0x000214F1L, 0, 0); */
/* DEFINE_SHLGUID(IID_IShellBrowser, 0x000214E2L, 0, 0); */
/* DEFINE_SHLGUID(IID_IShellView, 0x000214E3L, 0, 0); */
/* DEFINE_SHLGUID(IID_IShellFolder, 0x000214E6L, 0, 0); */
@ -103,4 +103,13 @@ DEFINE_GUID(CLSID_MyDocuments, 0x450d8fba, 0xad25, 0x11d0, 0x98, 0xa8, 0x08, 0x0
DEFINE_GUID(IID_IQueryAssociations, 0xc46ca590, 0x3c3f, 0x11d2, 0xbe, 0xe6, 0x00, 0x00, 0xf8, 0x05, 0xca, 0x57);
DEFINE_GUID(CLSID_DragDropHelper, 0x4657278a, 0x411b, 0x11d2, 0x83, 0x9a, 0x0, 0xc0, 0x4f, 0xd9, 0x18, 0xd0);
#define PID_FINDDATA 0
#define PID_NETRESOURCE 1
#define PID_DESCRIPTIONID 2
#define PID_WHICHFOLDER 3
#define PID_NETWORKLOCATION 4
#define PID_COMPUTERNAME 5
#endif /* __WINE_SHLGUID_H */

View File

@ -39,13 +39,6 @@ BOOL WINAPI SHGetPathFromIDListW (LPCITEMIDLIST pidl,LPWSTR pszPath);
#define SHGetPathFromIDList WINELIB_NAME_AW(SHGetPathFromIDList)
#include <wine/obj_shellfolder.h>
#include <wine/obj_contextmenu.h>
#include <wine/obj_extracticon.h>
#include <wine/obj_commdlgbrowser.h>
#include <wine/obj_dockingwindowframe.h>
#include <wine/obj_dragdrophelper.h>
/*****************************************************************************
* Predeclare interfaces
*/

File diff suppressed because it is too large Load Diff

View File

@ -691,3 +691,385 @@ interface IShellExtInit : IUnknown
[in] IDataObject *pdtobj,
[in] HKEY hkeyProgID);
}
/*******************************************************************************/
/* Note: the following interfaces are not in shobjidl.idl under Windows, they */
/* are declared directly in shlobj.h. It hopefully won't break anything to put */
/* them here anyway. */
/*******************************************************************************/
#ifndef MAX_PATH
#define MAX_PATH 260
#endif
/*****************************************************************************
* IPersistFolder3 interface
*/
[
object,
uuid(cef04fdf-fe72-11d2-87a5-00c04f6837cf),
pointer_default(unique)
]
interface IPersistFolder3 : IPersistFolder2
{
typedef struct
{
LPITEMIDLIST pidlTargetFolder;
WCHAR szTargetParsingName[MAX_PATH];
WCHAR szNetworkProvider[MAX_PATH];
DWORD dwAttributes;
int csidl;
} PERSIST_FOLDER_TARGET_INFO;
HRESULT InitializeEx(
[in] IBindCtx *pbc,
[in] LPCITEMIDLIST pidlRoot,
[in] const PERSIST_FOLDER_TARGET_INFO *ppfti);
HRESULT GetFolderTargetInfo( [out] PERSIST_FOLDER_TARGET_INFO *ppfti );
}
/*****************************************************************************
* IExtractIconA interface
*/
[
object,
uuid(000214eb-0000-0000-c000-000000000046),
pointer_default(unique)
]
interface IExtractIconA : IUnknown
{
cpp_quote("#define GIL_OPENICON 0x0001")
cpp_quote("#define GIL_FORSHELL 0x0002")
cpp_quote("#define GIL_ASYNC 0x0020")
cpp_quote("#define GIL_DEFAULTICON 0x0040")
cpp_quote("#define GIL_FORSHORTCUT 0x0080")
cpp_quote("#define GIL_SIMULATEDOC 0x0001")
cpp_quote("#define GIL_PERINSTANCE 0x0002")
cpp_quote("#define GIL_PERCLASS 0x0004")
cpp_quote("#define GIL_NOTFILENAME 0x0008")
cpp_quote("#define GIL_DONTCACHE 0x0010")
typedef IExtractIconA *LPEXTRACTICONA;
HRESULT GetIconLocation(
[in] UINT uFlags,
[out, size_is(cchMax)] LPSTR szIconFile,
[in] UINT cchMax,
[out] INT *piIndex,
[out] UINT *pwFlags);
HRESULT Extract(
[in] LPCSTR pszFile,
[in] UINT nIconIndex,
[out] HICON *phiconLarge,
[out] HICON *phiconSmall,
[in] UINT nIconSize );
}
/*****************************************************************************
* IExtractIconW interface
*/
[
object,
uuid(000214fa-0000-0000-c000-000000000046),
pointer_default(unique)
]
interface IExtractIconW : IUnknown
{
typedef IExtractIconW *LPEXTRACTICONW;
HRESULT GetIconLocation(
[in] UINT uFlags,
[out, size_is(cchMax)] LPWSTR szIconFile,
[in] UINT cchMax,
[out] INT *piIndex,
[out] UINT *pwFlags);
HRESULT Extract(
[in] LPCWSTR pszFile,
[in] UINT nIconIndex,
[out] HICON *phiconLarge,
[out] HICON *phiconSmall,
[in] UINT nIconSize );
}
cpp_quote("#define LPEXTRACTICON WINELIB_NAME_AW(LPEXTRACTICON)")
cpp_quote("#define IExtractIcon WINELIB_NAME_AW(IExtractIcon)")
/*****************************************************************************
* ICommDlgBrowser interface
*/
[
object,
uuid(000214f1-0000-0000-c000-000000000046),
pointer_default(unique)
]
interface ICommDlgBrowser : IUnknown
{
cpp_quote("#define CDBOSC_SETFOCUS 0x00000000")
cpp_quote("#define CDBOSC_KILLFOCUS 0x00000001")
cpp_quote("#define CDBOSC_SELCHANGE 0x00000002")
cpp_quote("#define CDBOSC_RENAME 0x00000003")
cpp_quote("#define CDBOSC_STATECHANGE 0x00000004")
typedef ICommDlgBrowser *LPCOMMDLGBROWSER;
HRESULT OnDefaultCommand( [in] IShellView *shv );
HRESULT OnStateChange( [in] IShellView *shv, [in] ULONG uChange );
HRESULT IncludeObject( [in] IShellView *shv, [in] LPCITEMIDLIST pidl );
}
/*****************************************************************************
* IDockingWindowFrame interface
*/
[
object,
uuid(47d2657a-7b27-11d0-8ca9-00a0c92dbfe8),
pointer_default(unique)
]
interface IDockingWindowFrame : IOleWindow
{
cpp_quote("#define DWFRF_NORMAL 0x0000")
cpp_quote("#define DWFRF_DELETECONFIGDATA 0x0001")
cpp_quote("#define DWFAF_HIDDEN 0x0001")
HRESULT AddToolbar(
[in] IUnknown *punkSrc,
[in] LPCWSTR pwszItem,
[in] DWORD dwAddFlags);
HRESULT RemoveToolbar(
[in] IUnknown *punkSrc,
[in] DWORD dwRemoveFlags);
HRESULT FindToolbar(
[in] LPCWSTR pwszItem,
[in] REFIID riid,
[out] LPVOID *ppvObj);
}
/*****************************************************************************
* IDragSourceHelper interface
*/
[
object,
uuid(de5bf786-477a-11d2-839d-00c04fd918d0),
pointer_default(unique)
]
interface IDragSourceHelper : IUnknown
{
typedef struct
{
SIZE sizeDragImage;
POINT ptOffset;
HBITMAP hbmpDragImage;
COLORREF crColorKey;
} SHDRAGIMAGE, *LPSHDRAGIMAGE;
HRESULT InitializeFromBitmap(
[in] LPSHDRAGIMAGE pshdi,
[in] IDataObject *pDataObject);
HRESULT InitializeFromWindow(
[in] HWND hwnd,
[in] POINT *ppt,
[in] IDataObject *pDataObject);
}
/*****************************************************************************
* IDropTargetHelper interface
*/
[
object,
uuid(4657278b-411b-11d2-839a-00c04fd918d0),
pointer_default(unique)
]
interface IDropTargetHelper : IUnknown
{
HRESULT DragEnter(
[in] HWND hwndTarget,
[in] IDataObject *pDataObject,
[in] POINT *ppt,
[in] DWORD dwEffect);
HRESULT DragLeave();
HRESULT DragOver(
[in] POINT *ppt,
[in] DWORD dwEffect);
HRESULT Drop(
[in] IDataObject *pDataObject,
[in] POINT *ppt,
[in] DWORD dwEffect);
HRESULT Show( [in] BOOL fShow );
}
/*****************************************************************************
* IContextMenu interface
*/
[
object,
uuid(000214e4-0000-0000-c000-000000000046),
pointer_default(unique)
]
interface IContextMenu : IUnknown
{
cpp_quote("#define CMF_NORMAL 0x00000000")
cpp_quote("#define CMF_DEFAULTONLY 0x00000001")
cpp_quote("#define CMF_VERBSONLY 0x00000002")
cpp_quote("#define CMF_EXPLORE 0x00000004")
cpp_quote("#define CMF_NOVERBS 0x00000008")
cpp_quote("#define CMF_CANRENAME 0x00000010")
cpp_quote("#define CMF_NODEFAULT 0x00000020")
cpp_quote("#define CMF_INCLUDESTATIC 0x00000040")
cpp_quote("#define CMF_EXTENDEDVERBS 0x00000100")
cpp_quote("#define CMF_RESERVED 0xffff0000")
cpp_quote("#define GCS_VERBA 0x00000000")
cpp_quote("#define GCS_HELPTEXTA 0x00000001")
cpp_quote("#define GCS_VALIDATEA 0x00000002")
cpp_quote("#define GCS_VERBW 0x00000004")
cpp_quote("#define GCS_HELPTEXTW 0x00000005")
cpp_quote("#define GCS_VALIDATEW 0x00000006")
cpp_quote("#define GCS_UNICODE 0x00000004")
cpp_quote("#define GCS_VERB WINELIB_NAME_AW(GCS_VERB)")
cpp_quote("#define GCS_HELPTEXT WINELIB_NAME_AW(GCS_HELPTEXT)")
cpp_quote("#define GCS_VALIDATE WINELIB_NAME_AW(GCS_VALIDATE)")
cpp_quote("#define CMDSTR_NEWFOLDERA \"NewFolder\"")
cpp_quote("#define CMDSTR_VIEWLISTA \"ViewList\"")
cpp_quote("#define CMDSTR_VIEWDETAILSA \"ViewDetails\"")
cpp_quote("#if defined(__GNUC__)")
cpp_quote("# define CMDSTR_NEWFOLDERW (const WCHAR []){ 'N','e','w','F','o','l','d','e','r',0 }")
cpp_quote("# define CMDSTR_VIEWLISTW (const WCHAR []){ 'V','i','e','w','L','i','s','t',0 }")
cpp_quote("# define CMDSTR_VIEWDETAILSW (const WCHAR []){ 'V','i','e','w','D','e','t','a','i','l','s',0 }")
cpp_quote("#elif defined(_MSC_VER)")
cpp_quote("# define CMDSTR_NEWFOLDERW L\"NewFolder\"")
cpp_quote("# define CMDSTR_VIEWLISTW L\"ViewList\"")
cpp_quote("# define CMDSTR_VIEWDETAILSW L\"ViewDetails\"")
cpp_quote("#else")
cpp_quote("static const WCHAR CMDSTR_NEWFOLDERW[] = {'N','e','w','F','o','l','d','e','r',0};")
cpp_quote("static const WCHAR CMDSTR_VIEWLISTW [] = {'V','i','e','w','L','i','s','t',0};")
cpp_quote("static const WCHAR CMDSTR_VIEWDETAILSW[] = {'V','i','e','w','D','e','t','a','i','l','s',0};")
cpp_quote("#endif")
cpp_quote("#define CMDSTR_NEWFOLDER WINELIB_NAME_AW(CMDSTR_NEWFOLDER)")
cpp_quote("#define CMDSTR_VIEWLIST WINELIB_NAME_AW(CMDSTR_VIEWLIST)")
cpp_quote("#define CMDSTR_VIEWDETAILS WINELIB_NAME_AW(CMDSTR_VIEWDETAILS)")
cpp_quote("#define CMIC_MASK_HOTKEY SEE_MASK_HOTKEY")
cpp_quote("#define CMIC_MASK_ICON SEE_MASK_ICON")
cpp_quote("#define CMIC_MASK_FLAG_NO_UI SEE_MASK_FLAG_NO_UI")
cpp_quote("#define CMIC_MASK_UNICODE SEE_MASK_UNICODE")
cpp_quote("#define CMIC_MASK_NO_CONSOLE SEE_MASK_NO_CONSOLE")
cpp_quote("#define CMIC_MASK_HASLINKNAME SEE_MASK_HASLINKNAME")
cpp_quote("#define CMIC_MASK_FLAG_SEP_VDM SEE_MASK_FLAG_SEPVDM")
cpp_quote("#define CMIC_MASK_HASTITLE SEE_MASK_HASTITLE")
cpp_quote("#define CMIC_MASK_ASYNCOK SEE_MASK_ASYNCOK")
cpp_quote("#define CMIC_MASK_SHIFT_DOWN 0x10000000")
cpp_quote("#define CMIC_MASK_PTINVOKE 0x20000000")
cpp_quote("#define CMIC_MASK_CONTROL_DOWN 0x40000000")
cpp_quote("#define CMIC_MASK_FLAG_LOG_USAGE SEE_MASK_FLAG_LOG_USAGE")
cpp_quote("#define CMIC_MASK_NOZONECHECKS SEE_MASK_NOZONECHECKS")
typedef IContextMenu *LPCONTEXTMENU;
typedef struct tagCMINVOKECOMMANDINFO
{
DWORD cbSize;
DWORD fMask;
HWND hwnd;
LPCSTR lpVerb;
LPCSTR lpParameters;
LPCSTR lpDirectory;
INT nShow;
DWORD dwHotKey;
HANDLE hIcon;
} CMINVOKECOMMANDINFO, *LPCMINVOKECOMMANDINFO;
typedef struct tagCMInvokeCommandInfoEx
{
DWORD cbSize;
DWORD fMask;
HWND hwnd;
LPCSTR lpVerb;
LPCSTR lpParameters;
LPCSTR lpDirectory;
INT nShow;
DWORD dwHotKey;
HANDLE hIcon;
LPCSTR lpTitle;
LPCWSTR lpVerbW;
LPCWSTR lpParametersW;
LPCWSTR lpDirectoryW;
LPCWSTR lpTitleW;
POINT ptInvoke;
} CMINVOKECOMMANDINFOEX, *LPCMINVOKECOMMANDINFOEX;
HRESULT QueryContextMenu(
[in] HMENU hmenu,
[in] UINT indexMenu,
[in] UINT idCmdFirst,
[in] UINT idCmdLast,
[in] UINT uFlags);
HRESULT InvokeCommand( [in] LPCMINVOKECOMMANDINFO lpici );
HRESULT GetCommandString(
[in] UINT idCmd,
[in] UINT uType,
[out] UINT *pwReserved,
[out, size_is(cchMax)] LPSTR pszName,
[in] UINT cchMax);
}
/*****************************************************************************
* IContextMenu2 interface
*/
[
object,
uuid(000214f4-0000-0000-c000-000000000046),
pointer_default(unique)
]
interface IContextMenu2 : IContextMenu
{
typedef IContextMenu2 *LPCONTEXTMENU2;
HRESULT HandleMenuMsg(
[in] UINT uMsg,
[in] WPARAM wParam,
[in] LPARAM lParam);
}
/*****************************************************************************
* IContextMenu3 interface
*/
[
object,
uuid(bcfce0a0-ec17-11d0-8d10-00a0c90f2719),
pointer_default(unique)
]
interface IContextMenu3 : IContextMenu2
{
typedef IContextMenu3 *LPCONTEXTMENU3;
HRESULT HandleMenuMsg2(
[in] UINT uMsg,
[in] WPARAM wParam,
[in] LPARAM lParam,
[out] LRESULT *plResult);
}

View File

@ -1,59 +0,0 @@
/*
* ICommDlgBrowser
*
* Copyright (C) 1999 Juergen Schmied
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#ifndef __WINE_WINE_OBJ_COMMDLGBROWSER_H
#define __WINE_WINE_OBJ_COMMDLGBROWSER_H
#ifdef __cplusplus
extern "C" {
#endif /* defined(__cplusplus) */
typedef struct ICommDlgBrowser ICommDlgBrowser, *LPCOMMDLGBROWSER;
/* for OnStateChange*/
#define CDBOSC_SETFOCUS 0x00000000
#define CDBOSC_KILLFOCUS 0x00000001
#define CDBOSC_SELCHANGE 0x00000002
#define CDBOSC_RENAME 0x00000003
#define INTERFACE ICommDlgBrowser
#define ICommDlgBrowser_METHODS \
IUnknown_METHODS \
STDMETHOD(OnDefaultCommand)(THIS_ IShellView * IShellView) PURE; \
STDMETHOD(OnStateChange)(THIS_ IShellView * IShellView, ULONG uChange) PURE; \
STDMETHOD(IncludeObject)(THIS_ IShellView * IShellView, LPCITEMIDLIST pidl) PURE;
ICOM_DEFINE(ICommDlgBrowser,IUnknown)
#undef INTERFACE
#ifdef COBJMACROS
#define ICommDlgBrowser_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define ICommDlgBrowser_AddRef(p) (p)->lpVtbl->AddRef(p)
#define ICommDlgBrowser_Release(p) (p)->lpVtbl->Release(p)
#define ICommDlgBrowser_OnDefaultCommand(p,a) (p)->lpVtbl->OnDefaultCommand(p,a)
#define ICommDlgBrowser_OnStateChange(p,a,b) (p)->lpVtbl->OnStateChange(p,a,b)
#define ICommDlgBrowser_IncludeObject(p,a,b) (p)->lpVtbl->IncludeObject(p,a,b)
#endif
#ifdef __cplusplus
} /* extern "C" */
#endif /* defined(__cplusplus) */
#endif /* __WINE_WINE_OBJ_COMMDLGBROWSER_H */

View File

@ -1,151 +0,0 @@
/*
* IContextMenu
*
* Undocumented:
* word95 gets a IContextMenu Interface and calls HandleMenuMsg()
* which should only a member of IContextMenu2.
*
* Copyright (C) 1999 Juergen Schmied
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#ifndef __WINE_WINE_OBJ_CONTEXTMENU_H
#define __WINE_WINE_OBJ_CONTEXTMENU_H
#ifdef __cplusplus
extern "C" {
#endif /* defined(__cplusplus) */
typedef struct IContextMenu IContextMenu, *LPCONTEXTMENU;
/* QueryContextMenu uFlags */
#define CMF_NORMAL 0x00000000
#define CMF_DEFAULTONLY 0x00000001
#define CMF_VERBSONLY 0x00000002
#define CMF_EXPLORE 0x00000004
#define CMF_NOVERBS 0x00000008
#define CMF_CANRENAME 0x00000010
#define CMF_NODEFAULT 0x00000020
#define CMF_INCLUDESTATIC 0x00000040
#define CMF_RESERVED 0xffff0000 /* View specific */
/* GetCommandString uFlags */
#define GCS_VERBA 0x00000000 /* canonical verb */
#define GCS_HELPTEXTA 0x00000001 /* help text (for status bar) */
#define GCS_VALIDATEA 0x00000002 /* validate command exists */
#define GCS_VERBW 0x00000004 /* canonical verb (unicode) */
#define GCS_HELPTEXTW 0x00000005 /* help text (unicode version) */
#define GCS_VALIDATEW 0x00000006 /* validate command exists (unicode) */
#define GCS_UNICODE 0x00000004 /* for bit testing - Unicode string */
#define GCS_VERB GCS_VERBA
#define GCS_HELPTEXT GCS_HELPTEXTA
#define GCS_VALIDATE GCS_VALIDATEA
#define CMDSTR_NEWFOLDERA "NewFolder"
#define CMDSTR_VIEWLISTA "ViewList"
#define CMDSTR_VIEWDETAILSA "ViewDetails"
#if defined(__GNUC__)
# define CMDSTR_NEWFOLDERW (const WCHAR []){ 'N','e','w','F','o','l','d','e','r',0 }
# define CMDSTR_VIEWLISTW (const WCHAR []){ 'V','i','e','w','L','i','s','t',0 }
# define CMDSTR_VIEWDETAILSW (const WCHAR []){ 'V','i','e','w','D','e','t','a','i','l','s',0 }
#elif defined(_MSC_VER)
# define CMDSTR_NEWFOLDERW L"NewFolder"
# define CMDSTR_VIEWLISTW L"ViewList"
# define CMDSTR_VIEWDETAILSW L"ViewDetails"
#else
static const WCHAR CMDSTR_NEWFOLDERW[] = {'N','e','w','F','o','l','d','e','r',0};
static const WCHAR CMDSTR_VIEWLISTW [] = {'V','i','e','w','L','i','s','t',0};
static const WCHAR CMDSTR_VIEWDETAILSW[] = {'V','i','e','w','D','e','t','a','i','l','s',0};
#endif
#define CMDSTR_NEWFOLDER CMDSTR_NEWFOLDERA
#define CMDSTR_VIEWLIST CMDSTR_VIEWLISTA
#define CMDSTR_VIEWDETAILS CMDSTR_VIEWDETAILSA
#define CMIC_MASK_HOTKEY SEE_MASK_HOTKEY
#define CMIC_MASK_ICON SEE_MASK_ICON
#define CMIC_MASK_FLAG_NO_UI SEE_MASK_FLAG_NO_UI
#define CMIC_MASK_UNICODE SEE_MASK_UNICODE
#define CMIC_MASK_NO_CONSOLE SEE_MASK_NO_CONSOLE
#define CMIC_MASK_HASLINKNAME SEE_MASK_HASLINKNAME
#define CMIC_MASK_FLAG_SEP_VDM SEE_MASK_FLAG_SEPVDM
#define CMIC_MASK_HASTITLE SEE_MASK_HASTITLE
#define CMIC_MASK_ASYNCOK SEE_MASK_ASYNCOK
#define CMIC_MASK_PTINVOKE 0x20000000
/*NOTE: When SEE_MASK_HMONITOR is set, hIcon is treated as hMonitor */
typedef struct tagCMINVOKECOMMANDINFO
{ DWORD cbSize; /* sizeof(CMINVOKECOMMANDINFO) */
DWORD fMask; /* any combination of CMIC_MASK_* */
HWND hwnd; /* might be NULL (indicating no owner window) */
LPCSTR lpVerb; /* either a string or MAKEINTRESOURCE(idOffset) */
LPCSTR lpParameters; /* might be NULL (indicating no parameter) */
LPCSTR lpDirectory; /* might be NULL (indicating no specific directory) */
INT nShow; /* one of SW_ values for ShowWindow() API */
DWORD dwHotKey;
HANDLE hIcon;
} CMINVOKECOMMANDINFO, *LPCMINVOKECOMMANDINFO;
typedef struct tagCMInvokeCommandInfoEx
{ DWORD cbSize; /* must be sizeof(CMINVOKECOMMANDINFOEX) */
DWORD fMask; /* any combination of CMIC_MASK_* */
HWND hwnd; /* might be NULL (indicating no owner window) */
LPCSTR lpVerb; /* either a string or MAKEINTRESOURCE(idOffset) */
LPCSTR lpParameters; /* might be NULL (indicating no parameter) */
LPCSTR lpDirectory; /* might be NULL (indicating no specific directory) */
INT nShow; /* one of SW_ values for ShowWindow() API */
DWORD dwHotKey;
HANDLE hIcon;
LPCSTR lpTitle; /* For CreateProcess-StartupInfo.lpTitle */
LPCWSTR lpVerbW; /* Unicode verb (for those who can use it) */
LPCWSTR lpParametersW; /* Unicode parameters (for those who can use it) */
LPCWSTR lpDirectoryW; /* Unicode directory (for those who can use it) */
LPCWSTR lpTitleW; /* Unicode title (for those who can use it) */
POINT ptInvoke; /* Point where it's invoked */
} CMINVOKECOMMANDINFOEX, *LPCMINVOKECOMMANDINFOEX;
#define INTERFACE IContextMenu
#define IContextMenu_METHODS \
IUnknown_METHODS \
STDMETHOD(QueryContextMenu)(THIS_ HMENU hmenu, UINT indexMenu, UINT idCmdFirst, UINT idCmdLast, UINT uFlags) PURE; \
STDMETHOD(InvokeCommand)(THIS_ LPCMINVOKECOMMANDINFO lpici) PURE; \
STDMETHOD(GetCommandString)(THIS_ UINT idCmd, UINT uType, UINT * pwReserved, LPSTR pszName, UINT cchMax) PURE; \
STDMETHOD(HandleMenuMsg)(THIS_ UINT uMsg, WPARAM wParam, LPARAM lParam) PURE; \
void * guard; /*possibly another nasty entry from ContextMenu3 ?*/
ICOM_DEFINE(IContextMenu,IUnknown)
#undef INTERFACE
#ifdef COBJMACROS
#define IContextMenu_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IContextMenu_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IContextMenu_Release(p) (p)->lpVtbl->Release(p)
#define IContextMenu_QueryContextMenu(p,a,b,c,d,e) (p)->lpVtbl->QueryContextMenu(p,a,b,c,d,e)
#define IContextMenu_InvokeCommand(p,a) (p)->lpVtbl->InvokeCommand(p,a)
#define IContextMenu_GetCommandString(p,a,b,c,d,e) (p)->lpVtbl->GetCommandString(p,a,b,c,d,e)
#define IContextMenu_HandleMenuMsg(p,a,b,c) (p)->lpVtbl->HandleMenuMsg(p,a,b,c)
#endif
#ifdef __cplusplus
} /* extern "C" */
#endif /* defined(__cplusplus) */
#endif /* __WINE_WINE_OBJ_CONTEXTMENU_H */

View File

@ -1,61 +0,0 @@
/*
* IDockingWindowFrame
*
* Copyright (C) 1999 Juergen Schmied
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#ifndef __WINE_WINE_OBJ_DOCKINGWINDOWFRAME_H
#define __WINE_WINE_OBJ_DOCKINGWINDOWFRAME_H
#ifdef __cplusplus
extern "C" {
#endif /* defined(__cplusplus) */
typedef struct IDockingWindowFrame IDockingWindowFrame, *LPDOCKINGWINDOWFRAME;
DEFINE_GUID (IID_IDockingWindowFrame, 0x47D2657AL, 0x7B27, 0x11D0, 0x8C, 0xA9, 0x00, 0xA0, 0xC9, 0x2D, 0xBF, 0xE8);
#define DWFRF_NORMAL 0x0000 /* femove toolbar flags*/
#define DWFRF_DELETECONFIGDATA 0x0001
#define DWFAF_HIDDEN 0x0001 /* add tolbar*/
#define INTERFACE IDockingWindowFrame
#define IDockingWindowFrame_METHODS \
IOleWindow_METHODS \
STDMETHOD(AddToolbar)(THIS_ IUnknown * punkSrc, LPCWSTR pwszItem, DWORD dwAddFlags) PURE; \
STDMETHOD(RemoveToolbar)(THIS_ IUnknown * punkSrc, DWORD dwRemoveFlags) PURE; \
STDMETHOD(FindToolbar)(THIS_ LPCWSTR pwszItem, REFIID riid, LPVOID * ppvObj) PURE;
ICOM_DEFINE(IDockingWindowFrame,IOleWindow)
#undef INTERFACE
#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IDockingWindowFrame_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IDockingWindowFrame_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IDockingWindowFrame_Release(p) (p)->lpVtbl->Release(p)
/*** IDockingWindowFrame methods ***/
#define IDockingWindowFrame_GetWindow(p,a) (p)->lpVtbl->GetWindow(p,a)
#define IDockingWindowFrame_ContextSensitiveHelp(p,a) (p)->lpVtbl->ContextSensitiveHelp(p,a)
#define IDockingWindowFrame_AddToolbar(p,a,b,c) (p)->lpVtbl->AddToolbar(p,a,b,c)
#define IDockingWindowFrame_RemoveToolbar(p,a,b) (p)->lpVtbl->RemoveToolbar(p,a,b)
#define IDockingWindowFrame_FindToolbar(p,a,b,c) (p)->lpVtbl->FindToolbar(p,a,b,c)
#endif
#ifdef __cplusplus
} /* extern "C" */
#endif /* defined(__cplusplus) */
#endif /* __WINE_WINE_OBJ_DOCKINGWINDOWFRAME_H */

View File

@ -1,100 +0,0 @@
/*
* Defines the COM interfaces related to SHELL DragDropHelper
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#ifndef __WINE_WINE_OBJ_DRAGDROPHELPER_H
#define __WINE_WINE_OBJ_DRAGDROPHELPER_H
#ifdef __cplusplus
extern "C" {
#endif /* defined(__cplusplus) */
/*****************************************************************************
* Predeclare the interfaces
*/
DEFINE_GUID(CLSID_DragDropHelper, 0x4657278a, 0x411b, 0x11d2, 0x83, 0x9a, 0x0, 0xc0, 0x4f, 0xd9, 0x18, 0xd0);
DEFINE_GUID(IID_IDropTargetHelper, 0x4657278b, 0x411b, 0x11d2, 0x83, 0x9a, 0x0, 0xc0, 0x4f, 0xd9, 0x18, 0xd0);
typedef struct IDropTargetHelper IDropTargetHelper,*LPDROPTARGETHELPER;
DEFINE_GUID(IID_IDragSourceHelper, 0xde5bf786, 0x477a, 0x11d2, 0x83, 0x9d, 0x0, 0xc0, 0x4f, 0xd9, 0x18, 0xd0);
typedef struct IDragSourceHelper IDragSourceHelper,*LPDRAGSOURCEHELPER;
/*****************************************************************************
* IDragSourceHelper interface
*/
typedef struct {
SIZE sizeDragImage;
POINT ptOffset;
HBITMAP hbmpDragImage;
COLORREF crColorKey;
} SHDRAGIMAGE, *LPSHDRAGIMAGE;
#define INTERFACE IDragSourceHelper
#define IDragSourceHelper_METHODS \
IUnknown_METHODS \
STDMETHOD(InitializeFromBitmap)(THIS_ LPSHDRAGIMAGE pshdi, IDataObject * pDataObject) PURE; \
STDMETHOD(InitializeFromWindow)(THIS_ HWND hwnd, POINT * ppt, IDataObject * pDataObject) PURE;
ICOM_DEFINE(IDragSourceHelper,IUnknown)
#undef INTERFACE
#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IDragSourceHelper_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IDragSourceHelper_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IDragSourceHelper_Release(p) (p)->lpVtbl->Release(p)
/*** IDropSource methods ***/
#define IDragSourceHelper_InitializeFromBitmap(p,a,b) (p)->lpVtbl->InitializeFromBitmap(p,a,b)
#define IDragSourceHelper_InitializeFromWindow(p,a,b,c) (p)->lpVtbl->InitializeFromWindow(p,a,b,c)
#endif
/*****************************************************************************
* IDropTargetHelper interface
*/
#define INTERFACE IDropTargetHelper
#define IDropTargetHelper_METHODS \
IUnknown_METHODS \
STDMETHOD(DragEnter)(THIS_ HWND hwndTarget, IDataObject * pDataObject, POINT * ppt, DWORD dwEffect) PURE; \
STDMETHOD(DragLeave)(THIS) PURE; \
STDMETHOD(DragOver)(THIS_ POINT * ppt, DWORD dwEffect) PURE; \
STDMETHOD(Drop)(THIS_ IDataObject * pDataObject, POINT * ppt,DWORD dwEffect) PURE; \
STDMETHOD(Show)(THIS_ BOOL fShow) PURE;
ICOM_DEFINE(IDropTargetHelper,IUnknown)
#undef INTERFACE
#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IDropTargetHelper_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IDropTargetHelper_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IDropTargetHelper_Release(p) (p)->lpVtbl->Release(p)
/*** IDropTargetHelper methods ***/
#define IDropTargetHelper_DragEnter(p,a,b,c,d) (p)->lpVtbl->DragEnter(p,a,b,c,d)
#define IDropTargetHelper_DragLeave(p) (p)->lpVtbl->DragLeave(p)
#define IDropTargetHelper_DragOver(p,a,b) (p)->lpVtbl->DragOver(p,a,b)
#define IDropTargetHelper_Drop(p,a,b,c) (p)->lpVtbl->Drop(p,a,b,c)
#define IDropTargetHelper_Show(p,a) (p)->lpVtbl->Show(p,a,b,c,d)
#endif
#ifdef __cplusplus
} /* extern "C" */
#endif /* defined(__cplusplus) */
#endif /* __WINE_WINE_OBJ_DRAGDROPHELPER_H */

View File

@ -1,85 +0,0 @@
/*
* IExtractIconA, IExtractIconW
*
* Copyright (C) 1999 Juergen Schmied
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#ifndef __WINE_WINE_OBJ_EXTRACTICON_H
#define __WINE_WINE_OBJ_EXTRACTICON_H
#ifdef __cplusplus
extern "C" {
#endif /* defined(__cplusplus) */
#define IID_IExtractIcon WINELIB_NAME_AW(IID_IExtractIcon)
typedef struct IExtractIconA IExtractIconA,*LPEXTRACTICONA;
typedef struct IExtractIconW IExtractIconW,*LPEXTRACTICONW;
#define LPEXTRACTICON WINELIB_NAME_AW(LPEXTRACTICON)
#define IExtractIcon WINELIB_NAME_AW(IExtractIcon)
/* GetIconLocation() input flags*/
#define GIL_OPENICON 0x0001 /* allows containers to specify an "open" look */
#define GIL_FORSHELL 0x0002 /* icon is to be displayed in a ShellFolder */
#define GIL_ASYNC 0x0020 /* this is an async extract, return E_ASYNC */
/* GetIconLocation() return flags */
#define GIL_SIMULATEDOC 0x0001 /* simulate this document icon for this */
#define GIL_PERINSTANCE 0x0002 /* icons from this class are per instance (each file has its own) */
#define GIL_PERCLASS 0x0004 /* icons from this class per class (shared for all files of this type) */
#define GIL_NOTFILENAME 0x0008 /* location is not a filename, must call ::ExtractIcon */
#define GIL_DONTCACHE 0x0010 /* this icon should not be cached */
#define INTERFACE IExtractIconA
#define IExtractIconA_METHODS \
IUnknown_METHODS \
STDMETHOD(GetIconLocation)(THIS_ UINT uFlags, LPSTR szIconFile, UINT cchMax, INT * piIndex, UINT * pwFlags) PURE; \
STDMETHOD(Extract)(THIS_ LPCSTR pszFile, UINT nIconIndex, HICON * phiconLarge, HICON * phiconSmall, UINT nIconSize) PURE;
ICOM_DEFINE(IExtractIconA,IUnknown)
#undef INTERFACE
#ifdef COBJMACROS
#define IExtractIconA_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IExtractIconA_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IExtractIconA_Release(p) (p)->lpVtbl->Release(p)
#define IExtractIconA_GetIconLocation(p,a,b,c,d,e) (p)->lpVtbl->GetIconLocation(p,a,b,c,d,e)
#define IExtractIconA_Extract(p,a,b,c,d,e) (p)->lpVtbl->Extract(p,a,b,c,d,e)
#endif
#define INTERFACE IExtractIconW
#define IExtractIconW_METHODS \
IUnknown_METHODS \
STDMETHOD(GetIconLocation)(THIS_ UINT uFlags, LPWSTR szIconFile, UINT cchMax, INT * piIndex, UINT * pwFlags) PURE; \
STDMETHOD(Extract)(THIS_ LPCWSTR pszFile, UINT nIconIndex, HICON * phiconLarge, HICON * phiconSmall, UINT nIconSize) PURE;
ICOM_DEFINE(IExtractIconW,IUnknown)
#undef INTERFACE
#ifdef COBJMACROS
#define IExtractIconW_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IExtractIconW_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IExtractIconW_Release(p) (p)->lpVtbl->Release(p)
#define IExtractIconW_GetIconLocation(p,a,b,c,d,e) (p)->lpVtbl->GetIconLocation(p,a,b,c,d,e)
#define IExtractIconW_Extract(p,a,b,c,d,e) (p)->lpVtbl->Extract(p,a,b,c,d,e)
#endif
#ifdef __cplusplus
} /* extern "C" */
#endif /* defined(__cplusplus) */
#endif /* __WINE_WINE_OBJ_EXTRACTICON_H */

View File

@ -1,83 +0,0 @@
/*
* Defines the COM interfaces and APIs related to IShellFolder
*
* Depends on 'obj_base.h'.
*
* Copyright (C) 1999 Juergen Schmied
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#ifndef __WINE_WINE_OBJ_SHELLFOLDER_H
#define __WINE_WINE_OBJ_SHELLFOLDER_H
#ifdef __cplusplus
extern "C" {
#endif /* defined(__cplusplus) */
/*****************************************************************************
* Predeclare the interfaces
*/
DEFINE_GUID(IID_IPersistFolder3, 0xcef04fdf, 0xfe72, 0x11d2, 0x87, 0xa5, 0x0, 0xc0, 0x4f, 0x68, 0x37, 0xcf);
typedef struct IPersistFolder3 IPersistFolder3, *LPPERSISTFOLDER3;
/* GetDetailsEx */
#define PID_FINDDATA 0
#define PID_NETRESOURCE 1
#define PID_DESCRIPTIONID 2
/*****************************************************************************
* IPersistFolder3 interface
*/
typedef struct {
LPITEMIDLIST pidlTargetFolder;
WCHAR szTargetParsingName[MAX_PATH];
WCHAR szNetworkProvider[MAX_PATH];
DWORD dwAttributes;
int csidl;
} PERSIST_FOLDER_TARGET_INFO;
#define INTERFACE IPersistFolder3
#define IPersistFolder3_METHODS \
IPersistFolder2_METHODS \
STDMETHOD(InitializeEx)(THIS_ IBindCtx * pbc, LPCITEMIDLIST pidlRoot, const PERSIST_FOLDER_TARGET_INFO * ppfti) PURE;\
STDMETHOD(GetFolderTargetInfo)(THIS_ PERSIST_FOLDER_TARGET_INFO * ppfti) PURE;
ICOM_DEFINE(IPersistFolder3, IPersistFolder2)
#undef INTERFACE
#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IPersistFolder3_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IPersistFolder3_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IPersistFolder3_Release(p) (p)->lpVtbl->Release(p)
/*** IPersist methods ***/
#define IPersistFolder3_GetClassID(p,a) (p)->lpVtbl->GetClassID(p,a)
/*** IPersistFolder methods ***/
#define IPersistFolder3_Initialize(p,a) (p)->lpVtbl->Initialize(p,a)
/*** IPersistFolder2 methods ***/
#define IPersistFolder3_GetCurFolder(p,a) (p)->lpVtbl->GetCurFolder(p,a)
/*** IPersistFolder3 methods ***/
#define IPersistFolder3_InitializeEx(p,a,b,c) (p)->lpVtbl->InitializeEx(p,a,b,c)
#define IPersistFolder3_GetFolderTargetInfo(p,a) (p)->lpVtbl->InitializeEx(p,a)
#endif
#ifdef __cplusplus
} /* extern "C" */
#endif /* defined(__cplusplus) */
#endif /* __WINE_WINE_OBJ_SHELLFOLDER_H */

View File

@ -76,6 +76,8 @@ typedef void *HTASK;
typedef void *HKEY;
typedef void *HICON;
typedef LONG_PTR LRESULT;
typedef double DATE;

View File

@ -75,6 +75,7 @@ DECLARE_HANDLE(HINSTANCE);
DECLARE_HANDLE(HRGN);
DECLARE_HANDLE(HTASK);
DECLARE_HANDLE(HKEY);
DECLARE_HANDLE(HICON);
typedef LONG_PTR LRESULT;