xref: /reactos/dll/win32/browseui/aclistisf.cpp (revision c2c66aff)
1 /*
2  *  Shell AutoComplete list
3  *
4  *  Copyright 2015  Thomas Faber
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 2.1 of the License, or (at your option) any later version.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14  * Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with this library; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19  */
20 
21 #include "precomp.h"
22 
23 CACListISF::CACListISF() :
24     m_dwOptions(0)
25 {
26 }
27 
28 CACListISF::~CACListISF()
29 {
30 }
31 
32 // *** IEnumString methods ***
33 HRESULT STDMETHODCALLTYPE CACListISF::Next(ULONG celt, LPOLESTR *rgelt, ULONG *pceltFetched)
34 {
35     TRACE("(%p, %d, %p, %p)\n", this, celt, rgelt, pceltFetched);
36     return E_NOTIMPL;
37 }
38 
39 HRESULT STDMETHODCALLTYPE CACListISF::Reset()
40 {
41     TRACE("(%p)\n", this);
42     return E_NOTIMPL;
43 }
44 
45 HRESULT STDMETHODCALLTYPE CACListISF::Skip(ULONG celt)
46 {
47     TRACE("(%p, %d)\n", this, celt);
48     return E_NOTIMPL;
49 }
50 
51 HRESULT STDMETHODCALLTYPE CACListISF::Clone(IEnumString **ppOut)
52 {
53     TRACE("(%p, %p)\n", this, ppOut);
54     *ppOut = NULL;
55     return E_NOTIMPL;
56 }
57 
58 // *** IACList methods ***
59 HRESULT STDMETHODCALLTYPE CACListISF::Expand(LPCOLESTR pszExpand)
60 {
61     TRACE("(%p, %ls)\n", this, pszExpand);
62     return E_NOTIMPL;
63 }
64 
65 // *** IACList2 methods ***
66 HRESULT STDMETHODCALLTYPE CACListISF::SetOptions(DWORD dwFlag)
67 {
68     TRACE("(%p, %lu)\n", this, dwFlag);
69     m_dwOptions = dwFlag;
70     return S_OK;
71 }
72 
73 HRESULT STDMETHODCALLTYPE CACListISF::GetOptions(DWORD* pdwFlag)
74 {
75     TRACE("(%p, %p)\n", this, pdwFlag);
76     *pdwFlag = m_dwOptions;
77     return S_OK;
78 }
79 
80 // *** IShellService methods ***
81 HRESULT STDMETHODCALLTYPE CACListISF::SetOwner(IUnknown *punkOwner)
82 {
83     TRACE("(%p, %p)\n", this, punkOwner);
84     return E_NOTIMPL;
85 }
86 
87 // *** IPersist methods ***
88 HRESULT STDMETHODCALLTYPE CACListISF::GetClassID(CLSID *pClassID)
89 {
90     TRACE("(%p, %p)\n", this, pClassID);
91     if (pClassID == NULL)
92         return E_POINTER;
93     *pClassID = CLSID_ACListISF;
94     return S_OK;
95 }
96 
97 // *** IPersistFolder methods ***
98 HRESULT STDMETHODCALLTYPE CACListISF::Initialize(LPCITEMIDLIST pidl)
99 {
100     TRACE("(%p, %p)\n", this, pidl);
101     return S_OK;
102 }
103