Commit 95a46b01 authored by David Hedberg's avatar David Hedberg Committed by Alexandre Julliard

include: Add IEnumShellItems interface declaration.

parent 9fd7f392
......@@ -34,6 +34,7 @@
#include "servprov.h"
#include "comcat.h"
#include "docobj.h"
#include "shobjidl.h"
#include "wine/debug.h"
......@@ -168,3 +169,29 @@ HRESULT __RPC_STUB IEnumOleDocumentViews_Next_Stub(
TRACE("(%p)\n", This);
return IEnumOleDocumentViews_Next( This, cViews, rgpView, pcFetched );
}
HRESULT CALLBACK IEnumShellItems_Next_Proxy(
IEnumShellItems *This,
ULONG celt,
IShellItem **rgelt,
ULONG *pceltFetched)
{
ULONG fetched;
TRACE("(%p)->(%d, %p, %p)\n", This, celt, rgelt, pceltFetched);
if (!pceltFetched) pceltFetched = &fetched;
return IEnumShellItems_RemoteNext_Proxy(This, celt, rgelt, pceltFetched);
}
HRESULT __RPC_STUB IEnumShellItems_Next_Stub(
IEnumShellItems *This,
ULONG celt,
IShellItem **rgelt,
ULONG *pceltFetched)
{
HRESULT hr;
TRACE("(%p)->(%d, %p, %p)\n", This, celt, rgelt, pceltFetched);
*pceltFetched = 0;
hr = IEnumShellItems_Next(This, celt, rgelt, pceltFetched);
if (hr == S_OK) *pceltFetched = celt;
return hr;
}
......@@ -414,6 +414,35 @@ interface INewWindowManager : IUnknown
cpp_quote("#define SID_SNewWindowManager IID_INewWindowManager")
/*****************************************************************************
* IEnumShellItems interface
*/
[
object,
uuid(70629033-E363-4A28-A567-0DB78006E6D7),
pointer_default(unique)
]
interface IEnumShellItems : IUnknown
{
[local] HRESULT Next(
[in] ULONG celt,
[out, size_is(celt), length_is(*pceltFetched)] IShellItem **rgelt,
[out] ULONG *pceltFetched);
[call_as(Next)] HRESULT RemoteNext(
[in] ULONG celt,
[out, size_is(celt), length_is(*pceltFetched)] IShellItem **rgelt,
[out] ULONG *pceltFetched);
HRESULT Skip(
[in] ULONG celt);
HRESULT Reset();
HRESULT Clone(
[out] IEnumShellItems **ppenum);
}
/*****************************************************************************
* FOLDERSETTINGS
*/
typedef char *LPVIEWSETTINGS;
......
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