mirror of
https://github.com/reactos/reactos.git
synced 2025-08-07 08:33:11 +00:00
[SHELL32] Implement the Select verb in CommDlgBrowser (#7225)
- Use Select instead of Open default menu item. - Support CDB2GVF_NOSELECTVERB, CDB2GVF_NOINCLUDEITEM and CDB2GVF_SHOWALLFILES flags.
This commit is contained in:
parent
7d532f8792
commit
d5f6b8c50b
40 changed files with 342 additions and 12 deletions
|
@ -876,7 +876,7 @@ CDefaultContextMenu::QueryContextMenu(
|
|||
return MAKE_HRESULT(SEVERITY_SUCCESS, 0, cIds);
|
||||
|
||||
/* Add the default part of the menu */
|
||||
HMENU hmenuDefault = LoadMenu(_AtlBaseModule.GetResourceInstance(), L"MENU_SHV_FILE");
|
||||
HMENU hmenuDefault = LoadMenuW(_AtlBaseModule.GetResourceInstance(), L"MENU_SHV_FILE");
|
||||
|
||||
/* Remove uneeded entries */
|
||||
if (!(rfg & SFGAO_CANMOVE))
|
||||
|
@ -1260,6 +1260,13 @@ CDefaultContextMenu::BrowserFlagsFromVerb(LPCMINVOKECOMMANDINFOEX lpcmi, PStatic
|
|||
else
|
||||
FlagsName = L"BrowserFlags";
|
||||
|
||||
CComPtr<ICommDlgBrowser> pcdb;
|
||||
if (SUCCEEDED(psb->QueryInterface(IID_PPV_ARG(ICommDlgBrowser, &pcdb))))
|
||||
{
|
||||
if (LOBYTE(GetVersion()) < 6 || FlagsName[0] == 'E')
|
||||
return 0; // Don't browse in-place
|
||||
}
|
||||
|
||||
/* Try to get the flag from the verb */
|
||||
hr = StringCbPrintfW(wszKey, sizeof(wszKey), L"shell\\%s", pEntry->Verb.GetString());
|
||||
if (FAILED_UNEXPECTEDLY(hr))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue