MockPowerRenameRegExEvents.cpp
1 #include "pch.h" 2 #include "MockPowerRenameRegExEvents.h" 3 4 IFACEMETHODIMP_(ULONG) 5 CMockPowerRenameRegExEvents::AddRef() 6 { 7 return InterlockedIncrement(&m_refCount); 8 } 9 10 IFACEMETHODIMP_(ULONG) 11 CMockPowerRenameRegExEvents::Release() 12 { 13 long refCount = InterlockedDecrement(&m_refCount); 14 15 if (refCount == 0) 16 { 17 delete this; 18 } 19 return refCount; 20 } 21 22 IFACEMETHODIMP CMockPowerRenameRegExEvents::QueryInterface(_In_ REFIID riid, _Outptr_ void** ppv) 23 { 24 static const QITAB qit[] = { 25 QITABENT(CMockPowerRenameRegExEvents, IPowerRenameRegExEvents), 26 { 0 } 27 }; 28 return QISearch(this, qit, riid, ppv); 29 } 30 31 IFACEMETHODIMP CMockPowerRenameRegExEvents::OnSearchTermChanged(_In_ PCWSTR searchTerm) 32 { 33 CoTaskMemFree(m_searchTerm); 34 m_searchTerm = nullptr; 35 if (searchTerm != nullptr) 36 { 37 SHStrDup(searchTerm, &m_searchTerm); 38 } 39 return S_OK; 40 } 41 42 IFACEMETHODIMP CMockPowerRenameRegExEvents::OnReplaceTermChanged(_In_ PCWSTR replaceTerm) 43 { 44 CoTaskMemFree(m_replaceTerm); 45 m_replaceTerm = nullptr; 46 if (replaceTerm != nullptr) 47 { 48 SHStrDup(replaceTerm, &m_replaceTerm); 49 } 50 return S_OK; 51 } 52 53 IFACEMETHODIMP CMockPowerRenameRegExEvents::OnFlagsChanged(_In_ DWORD flags) 54 { 55 m_flags = flags; 56 return S_OK; 57 } 58 59 IFACEMETHODIMP CMockPowerRenameRegExEvents::OnFileTimeChanged(_In_ SYSTEMTIME fileTime) 60 { 61 m_fileTime = fileTime; 62 return S_OK; 63 } 64 65 IFACEMETHODIMP CMockPowerRenameRegExEvents::OnMetadataChanged() 66 { 67 return S_OK; 68 } 69 70 71 HRESULT CMockPowerRenameRegExEvents::s_CreateInstance(_Outptr_ IPowerRenameRegExEvents** ppsrree) 72 { 73 *ppsrree = nullptr; 74 CMockPowerRenameRegExEvents* psrree = new CMockPowerRenameRegExEvents(); 75 HRESULT hr = E_OUTOFMEMORY; 76 if (psrree) 77 { 78 hr = psrree->QueryInterface(IID_PPV_ARGS(ppsrree)); 79 psrree->Release(); 80 } 81 return hr; 82 } 83