ReactOS 0.4.16-dev-1946-g52006dd
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 45 of file CDefViewUtil.cpp.

Constructor & Destructor Documentation

◆ CShellFolderViewCBWrapper()

CShellFolderViewCBWrapper::CShellFolderViewCBWrapper ( )
inline

Definition at line 60 of file CDefViewUtil.cpp.

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

◆ ~CShellFolderViewCBWrapper()

virtual CShellFolderViewCBWrapper::~CShellFolderViewCBWrapper ( )
inlinevirtual

Definition at line 62 of file CDefViewUtil.cpp.

63 {
65 }
void WINAPI ILFree(LPITEMIDLIST pidl)
Definition: pidl.c:1045

Member Function Documentation

◆ Initialize()

HRESULT WINAPI CShellFolderViewCBWrapper::Initialize ( LPCSFV  psvcbi)
inline

Definition at line 67 of file CDefViewUtil.cpp.

68 {
69 m_psf = psvcbi->pshf;
70 m_psvOuter = psvcbi->psvOuter;
71 m_Pidl = psvcbi->pidl ? ILClone(psvcbi->pidl) : NULL;
72 m_Callback = psvcbi->pfnCallback;
73 m_FVM = psvcbi->fvm;
74 m_Events = psvcbi->lEvents;
75 return S_OK;
76 }
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:238
FOLDERVIEWMODE fvm
Definition: shlobj.h:1287
IShellView * psvOuter
Definition: shlobj.h:1283
LPFNVIEWCALLBACK pfnCallback
Definition: shlobj.h:1286
LONG lEvents
Definition: shlobj.h:1285
PCIDLIST_ABSOLUTE pidl
Definition: shlobj.h:1284
IShellFolder * pshf
Definition: shlobj.h:1282

◆ MessageSFVCB()

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

Definition at line 79 of file CDefViewUtil.cpp.

80 {
81 switch (uMsg)
82 {
83 case SFVM_HWNDMAIN:
85 break;
86
88 if (m_FVM)
90 break;
91 }
92
94 if (SUCCEEDED(hr))
95 return hr;
96
97 switch (uMsg)
98 {
99 case SFVM_GETNOTIFY:
101 *(LONG*)lParam = m_Events;
102 return S_OK;
103 }
104 return hr;
105 }
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:1323
#define SFVM_HWNDMAIN
Definition: shlobj.h:1339
#define SFVM_GETNOTIFY
Definition: shlobj.h:1342
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 108 of file CDefViewUtil.cpp.

109 {
110 // learn.microsoft.com/en-us/windows/win32/shell/sfvm-setisfv
111 HRESULT hr = CObjectWithSiteBase::SetSite(pUnkSite);
112 MessageSFVCB(SFVM_SETISFV, 0, (LPARAM)pUnkSite);
113 return hr;
114 }
STDMETHODIMP MessageSFVCB(UINT uMsg, WPARAM wParam, LPARAM lParam) override
LONG_PTR LPARAM
Definition: minwindef.h:175
#define SFVM_SETISFV
Definition: shlobj.h:1335

Member Data Documentation

◆ m_Callback

LPFNVIEWCALLBACK CShellFolderViewCBWrapper::m_Callback
protected

Definition at line 55 of file CDefViewUtil.cpp.

Referenced by Initialize(), and MessageSFVCB().

◆ m_Events

LONG CShellFolderViewCBWrapper::m_Events
protected

Definition at line 57 of file CDefViewUtil.cpp.

Referenced by Initialize(), and MessageSFVCB().

◆ m_FVM

FOLDERVIEWMODE CShellFolderViewCBWrapper::m_FVM
protected

Definition at line 56 of file CDefViewUtil.cpp.

Referenced by Initialize(), and MessageSFVCB().

◆ m_hWndMain

HWND CShellFolderViewCBWrapper::m_hWndMain
protected

Definition at line 51 of file CDefViewUtil.cpp.

Referenced by MessageSFVCB().

◆ m_Pidl

PIDLIST_ABSOLUTE CShellFolderViewCBWrapper::m_Pidl
protected

Definition at line 52 of file CDefViewUtil.cpp.

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

◆ m_psf

CComPtr<IShellFolder> CShellFolderViewCBWrapper::m_psf
protected

Definition at line 53 of file CDefViewUtil.cpp.

Referenced by Initialize(), and MessageSFVCB().

◆ m_psvOuter

CComPtr<IShellView> CShellFolderViewCBWrapper::m_psvOuter
protected

Definition at line 54 of file CDefViewUtil.cpp.

Referenced by Initialize(), and MessageSFVCB().


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