ReactOS 0.4.16-dev-1238-gd80fdbe
CShellFolderViewCBWrapper Class Reference
Inheritance diagram for CShellFolderViewCBWrapper:
Collaboration diagram for CShellFolderViewCBWrapper:

Public Member Functions

 CShellFolderViewCBWrapper ()
 
virtual ~CShellFolderViewCBWrapper ()
 
HRESULT WINAPI Initialize (LPCSFV psvcbi)
 
STDMETHODIMP MessageSFVCB (UINT uMsg, WPARAM wParam, LPARAM lParam) override
 
STDMETHODIMP SetSite (IUnknown *pUnkSite) override
 
- Public Member Functions inherited from ATL::CComObjectRootEx< CComMultiThreadModelNoCS >
 ~CComObjectRootEx ()
 
ULONG InternalAddRef ()
 
ULONG InternalRelease ()
 
void Lock ()
 
void Unlock ()
 
HRESULT _AtlInitialConstruct ()
 
- Public Member Functions inherited from ATL::CComObjectRootBase
 CComObjectRootBase ()
 
 ~CComObjectRootBase ()
 
void SetVoid (void *)
 
HRESULT _AtlFinalConstruct ()
 
HRESULT FinalConstruct ()
 
void InternalFinalConstructAddRef ()
 
void InternalFinalConstructRelease ()
 
void FinalRelease ()
 

Protected Attributes

HWND m_hWndMain
 
PIDLIST_ABSOLUTE m_Pidl
 
CComPtr< IShellFolderm_psf
 
CComPtr< IShellViewm_psvOuter
 
LPFNVIEWCALLBACK m_Callback
 
FOLDERVIEWMODE m_FVM
 
LONG m_Events
 

Additional Inherited Members

- Static Public Member Functions inherited from ATL::CComObjectRootBase
static void WINAPI ObjectMain (bool)
 
static const struct _ATL_CATMAP_ENTRYGetCategoryMap ()
 
static HRESULT WINAPI InternalQueryInterface (void *pThis, const _ATL_INTMAP_ENTRY *pEntries, REFIID iid, void **ppvObject)
 
- Public Attributes inherited from ATL::CComObjectRootBase
LONG m_dwRef
 

Detailed Description

Definition at line 13 of file CDefViewUtil.cpp.

Constructor & Destructor Documentation

◆ CShellFolderViewCBWrapper()

CShellFolderViewCBWrapper::CShellFolderViewCBWrapper ( )
inline

Definition at line 28 of file CDefViewUtil.cpp.

PIDLIST_ABSOLUTE m_Pidl
#define NULL
Definition: types.h:112

◆ ~CShellFolderViewCBWrapper()

virtual CShellFolderViewCBWrapper::~CShellFolderViewCBWrapper ( )
inlinevirtual

Definition at line 30 of file CDefViewUtil.cpp.

31 {
33 }
void WINAPI ILFree(LPITEMIDLIST pidl)
Definition: pidl.c:1044

Member Function Documentation

◆ Initialize()

HRESULT WINAPI CShellFolderViewCBWrapper::Initialize ( LPCSFV  psvcbi)
inline

Definition at line 35 of file CDefViewUtil.cpp.

36 {
37 m_psf = psvcbi->pshf;
38 m_psvOuter = psvcbi->psvOuter;
39 m_Pidl = psvcbi->pidl ? ILClone(psvcbi->pidl) : NULL;
40 m_Callback = psvcbi->pfnCallback;
41 m_FVM = psvcbi->fvm;
42 m_Events = psvcbi->lEvents;
43 return S_OK;
44 }
CComPtr< IShellView > m_psvOuter
LPFNVIEWCALLBACK m_Callback
CComPtr< IShellFolder > m_psf
#define S_OK
Definition: intsafe.h:52
LPITEMIDLIST WINAPI ILClone(LPCITEMIDLIST pidl)
Definition: pidl.c:237
FOLDERVIEWMODE fvm
Definition: shlobj.h:1290
IShellView * psvOuter
Definition: shlobj.h:1286
LPFNVIEWCALLBACK pfnCallback
Definition: shlobj.h:1289
LONG lEvents
Definition: shlobj.h:1288
PCIDLIST_ABSOLUTE pidl
Definition: shlobj.h:1287
IShellFolder * pshf
Definition: shlobj.h:1285

◆ MessageSFVCB()

STDMETHODIMP CShellFolderViewCBWrapper::MessageSFVCB ( UINT  uMsg,
WPARAM  wParam,
LPARAM  lParam 
)
inlineoverride

Definition at line 47 of file CDefViewUtil.cpp.

48 {
49 switch (uMsg)
50 {
51 case SFVM_HWNDMAIN:
53 break;
54
56 if (m_FVM)
58 break;
59 }
60
62 if (SUCCEEDED(hr))
63 return hr;
64
65 switch (uMsg)
66 {
67 case SFVM_GETNOTIFY:
69 *(LONG*)lParam = m_Events;
70 return S_OK;
71 }
72 return hr;
73 }
WPARAM wParam
Definition: combotst.c:138
LPARAM lParam
Definition: combotst.c:139
HANDLE HWND
Definition: compat.h:19
#define SUCCEEDED(hr)
Definition: intsafe.h:50
long LONG
Definition: pedump.c:60
HRESULT hr
Definition: shlfolder.c:183
#define SFVM_DEFVIEWMODE
Definition: shlobj.h:1326
#define SFVM_HWNDMAIN
Definition: shlobj.h:1342
#define SFVM_GETNOTIFY
Definition: shlobj.h:1345
FOLDERVIEWMODE
Definition: shobjidl.idl:677
ITEMIDLIST UNALIGNED * LPITEMIDLIST
Definition: shtypes.idl:41

Referenced by SetSite().

◆ SetSite()

STDMETHODIMP CShellFolderViewCBWrapper::SetSite ( IUnknown pUnkSite)
inlineoverride

Definition at line 76 of file CDefViewUtil.cpp.

77 {
78 // learn.microsoft.com/en-us/windows/win32/shell/sfvm-setisfv
79 HRESULT hr = CObjectWithSiteBase::SetSite(pUnkSite);
80 MessageSFVCB(SFVM_SETISFV, 0, (LPARAM)pUnkSite);
81 return hr;
82 }
STDMETHODIMP MessageSFVCB(UINT uMsg, WPARAM wParam, LPARAM lParam) override
#define SFVM_SETISFV
Definition: shlobj.h:1338
LONG_PTR LPARAM
Definition: windef.h:208

Member Data Documentation

◆ m_Callback

LPFNVIEWCALLBACK CShellFolderViewCBWrapper::m_Callback
protected

Definition at line 23 of file CDefViewUtil.cpp.

Referenced by Initialize(), and MessageSFVCB().

◆ m_Events

LONG CShellFolderViewCBWrapper::m_Events
protected

Definition at line 25 of file CDefViewUtil.cpp.

Referenced by Initialize(), and MessageSFVCB().

◆ m_FVM

FOLDERVIEWMODE CShellFolderViewCBWrapper::m_FVM
protected

Definition at line 24 of file CDefViewUtil.cpp.

Referenced by Initialize(), and MessageSFVCB().

◆ m_hWndMain

HWND CShellFolderViewCBWrapper::m_hWndMain
protected

Definition at line 19 of file CDefViewUtil.cpp.

Referenced by MessageSFVCB().

◆ m_Pidl

PIDLIST_ABSOLUTE CShellFolderViewCBWrapper::m_Pidl
protected

Definition at line 20 of file CDefViewUtil.cpp.

Referenced by Initialize(), MessageSFVCB(), and ~CShellFolderViewCBWrapper().

◆ m_psf

CComPtr<IShellFolder> CShellFolderViewCBWrapper::m_psf
protected

Definition at line 21 of file CDefViewUtil.cpp.

Referenced by Initialize(), and MessageSFVCB().

◆ m_psvOuter

CComPtr<IShellView> CShellFolderViewCBWrapper::m_psvOuter
protected

Definition at line 22 of file CDefViewUtil.cpp.

Referenced by Initialize(), and MessageSFVCB().


The documentation for this class was generated from the following file: