//+--------------------------------------------------------------------------- // // 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__