[SHELL32] Add CDefView::DefMessageSFVCB (Retrial of #1145) (#1151)

CORE-14976
This commit is contained in:
Katayama Hirofumi MZ 2018-12-17 19:22:31 +09:00 committed by GitHub
parent 21a0846aff
commit 5525c81b2f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -128,6 +128,7 @@ class CDefView :
BOOL CreateList();
void UpdateListColors();
BOOL InitList();
HRESULT DefMessageSFVCB(UINT uMsg, WPARAM wParam, LPARAM lParam);
static INT CALLBACK ListViewCompareItems(LPARAM lParam1, LPARAM lParam2, LPARAM lpData);
PCUITEMID_CHILD _PidlByItem(int i);
@ -3263,13 +3264,29 @@ HRESULT CDefView::_MergeToolbar()
return S_OK;
}
// The default processing of IShellFolderView callbacks
HRESULT CDefView::DefMessageSFVCB(UINT uMsg, WPARAM wParam, LPARAM lParam)
{
// TODO: SFVM_GET_CUSTOMVIEWINFO, SFVM_WINDOWCREATED
TRACE("CDefView::DefMessageSFVCB uMsg=%u\n", uMsg);
return E_NOTIMPL;
}
HRESULT CDefView::_DoFolderViewCB(UINT uMsg, WPARAM wParam, LPARAM lParam)
{
HRESULT hr = E_NOTIMPL;
if (m_pShellFolderViewCB)
{
return m_pShellFolderViewCB->MessageSFVCB(uMsg, wParam, lParam);
hr = m_pShellFolderViewCB->MessageSFVCB(uMsg, wParam, lParam);
}
return E_NOINTERFACE;
if (hr == E_NOTIMPL)
{
hr = DefMessageSFVCB(uMsg, wParam, lParam);
}
return hr;
}
HRESULT CDefView_CreateInstance(IShellFolder *pFolder, REFIID riid, LPVOID * ppvOut)