ReactOS 0.4.16-dev-197-g92996da
CFolderViewCB.cpp
Go to the documentation of this file.
1/*
2 * PROJECT: ReactOS Zip Shell Extension
3 * LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
4 * PURPOSE: IShellFolderViewCB implementation
5 * COPYRIGHT: Copyright 2017 David Quintana (gigaherz@gmail.com)
6 * Copyright 2017 Mark Jansen (mark.jansen@reactos.org)
7 */
8
9#include "precomp.h"
10
11class CFolderViewCB :
12 public CComObjectRootEx<CComMultiThreadModelNoCS>,
13 public IShellFolderViewCB
14{
15public:
16
18 {
19 }
20
21 // *** IShellFolderViewCB methods ***
23 {
24 /* TODO: Handle SFVM_GET_WEBVIEW_CONTENT to add tasks */
25 switch (uMsg)
26 {
28 {
30 *pViewMode = FVM_DETAILS;
31 return S_OK;
32 }
34 return S_FALSE;
36 return S_OK;
37 }
38
39 return E_NOTIMPL;
40 }
41
42public:
45
47 COM_INTERFACE_ENTRY_IID(IID_IShellFolderViewCB, IShellFolderViewCB)
49};
50
52{
53 return ShellObjectCreator<CFolderViewCB>(riid, ppvOut);
54}
HRESULT _CFolderViewCB_CreateInstance(REFIID riid, LPVOID *ppvOut)
#define STDMETHODIMP
Definition: basetyps.h:43
STDMETHODIMP MessageSFVCB(UINT uMsg, WPARAM wParam, LPARAM lParam)
virtual ~CFolderViewCB()
WPARAM wParam
Definition: combotst.c:138
LPARAM lParam
Definition: combotst.c:139
#define E_NOTIMPL
Definition: ddrawi.h:99
REFIID riid
Definition: atlbase.h:39
#define S_OK
Definition: intsafe.h:52
#define BEGIN_COM_MAP(x)
Definition: atlcom.h:581
#define COM_INTERFACE_ENTRY_IID(iid, x)
Definition: atlcom.h:601
#define DECLARE_PROTECT_FINAL_CONSTRUCT()
Definition: atlcom.h:679
#define DECLARE_NOT_AGGREGATABLE(x)
Definition: atlcom.h:651
#define END_COM_MAP()
Definition: atlcom.h:592
unsigned int UINT
Definition: ndis.h:50
#define REFIID
Definition: guiddef.h:118
#define SFVM_DEFVIEWMODE
Definition: shlobj.h:1318
#define SFVM_BACKGROUNDENUM
Definition: shlobj.h:1323
#define SFVM_COLUMNCLICK
Definition: shlobj.h:1315
FOLDERVIEWMODE
Definition: shobjidl.idl:677
@ FVM_DETAILS
Definition: shobjidl.idl:683
LONG_PTR LPARAM
Definition: windef.h:208
UINT_PTR WPARAM
Definition: windef.h:207
#define S_FALSE
Definition: winerror.h:2357