[ZIPFLDR] Add 'Extract All' to individual item context menu.

This commit is contained in:
Mark Jansen 2018-08-02 22:36:17 +02:00
parent 875e58d781
commit 572976bb14
No known key found for this signature in database
GPG key ID: B39240EE84BEAE8B

View file

@ -356,9 +356,33 @@ public:
switch (uMsg)
{
case DFM_MERGECONTEXTMENU:
DPRINT1("FIXME: Add menu items for DFM_MERGECONTEXTMENU\n");
{
CComQIIDPtr<I_ID(IContextMenu)> spContextMenu(psf);
if (!spContextMenu)
return E_NOINTERFACE;
QCMINFO *pqcminfo = (QCMINFO *)lParam;
HRESULT hr = spContextMenu->QueryContextMenu(pqcminfo->hmenu,
pqcminfo->indexMenu,
pqcminfo->idCmdFirst,
pqcminfo->idCmdLast,
CMF_NORMAL);
if (FAILED_UNEXPECTEDLY(hr))
return hr;
pqcminfo->indexMenu += HRESULT_CODE(hr);
return S_OK;
}
case DFM_INVOKECOMMAND:
{
CComQIIDPtr<I_ID(IContextMenu)> spContextMenu(psf);
if (!spContextMenu)
return E_NOINTERFACE;
CMINVOKECOMMANDINFO ici = { sizeof(ici) };
ici.lpVerb = MAKEINTRESOURCEA(wParam);
return spContextMenu->InvokeCommand(&ici);
}
case DFM_INVOKECOMMANDEX:
case DFM_GETDEFSTATICID: // Required for Windows 7 to pick a default
return S_FALSE;