Windows2000/private/windows/shell/lmui/shareui.new/sfolder.hxx
2020-09-30 17:12:32 +02:00

137 lines
2.3 KiB
C++

// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1995 - 1995.
// File: sfolder.hxx
// Contents: Declaration of CSharesSF, an implementation of IShellFolder
// History: 13-Dec-95 BruceFo Created
#ifndef __SFOLDER_HXX__
#define __SFOLDER_HXX__
#include "shares.h"
class CSharesSF : public IShellFolder
{
public:
CSharesSF() {}
~CSharesSF() {}
// IUnknown methods
STDMETHOD(QueryInterface)(REFIID riid, LPVOID* ppvObj);
STDMETHOD_(ULONG,AddRef)();
STDMETHOD_(ULONG,Release)();
// IShellFolder methods
STDMETHOD(ParseDisplayName)(
HWND hwndOwner,
LPBC pbcReserved,
LPOLESTR lpszDisplayName,
ULONG* pchEaten,
LPITEMIDLIST* ppidl,
ULONG* pdwAttributes
);
STDMETHOD(EnumObjects)(
HWND hwndOwner,
DWORD grfFlags,
LPENUMIDLIST* ppenumIDList
);
STDMETHOD(BindToObject)(
LPCITEMIDLIST pidl,
LPBC pbcReserved,
REFIID riid,
LPVOID* ppvOut
);
STDMETHOD(BindToStorage)(
LPCITEMIDLIST pidl,
LPBC pbcReserved,
REFIID riid,
LPVOID* ppvObj
);
STDMETHOD(CompareIDs)(
LPARAM lParam,
LPCITEMIDLIST pidl1,
LPCITEMIDLIST pidl2
);
STDMETHOD(CreateViewObject)(
HWND hwndOwner,
REFIID riid,
LPVOID* ppvOut
);
STDMETHOD(GetAttributesOf)(
UINT cidl,
LPCITEMIDLIST* apidl,
ULONG* pdwInOut
);
STDMETHOD(GetUIObjectOf)(
HWND hwndOwner,
UINT cidl,
LPCITEMIDLIST* apidl,
REFIID riid,
UINT* prgfInOut,
LPVOID* ppvOut
);
STDMETHOD(GetDisplayNameOf)(
LPCITEMIDLIST pidl,
DWORD uFlags,
LPSTRRET lpName
);
STDMETHOD(SetNameOf)(
HWND hwndOwner,
LPCITEMIDLIST pidl,
LPCOLESTR lpszName,
DWORD uFlags,
LPITEMIDLIST* ppidlOut
);
private:
// Other
static
HRESULT CALLBACK
_SFVCallBack(
LPSHELLVIEW psvOuter,
LPSHELLFOLDER psf,
HWND hwndOwner,
UINT uMsg,
WPARAM wParam,
LPARAM lParam
);
int
_CompareOne(
DWORD iCol,
LPIDSHARE pids1,
LPIDSHARE pids2
);
};
#endif // __SFOLDER_HXX__