[3/4] shell32: return command strings for a few more commands
Daniel Jeliński
djelinski1 at gmail.com
Sat Aug 10 16:25:42 CDT 2013
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.winehq.org/pipermail/wine-patches/attachments/20130810/c91ce919/attachment.html>
-------------- next part --------------
From d4244737f3fa975d83c9dee9e3ebf13dcbfdf553 Mon Sep 17 00:00:00 2001
From: Daniel Jelinski <djelinski1 at gmail.com>
Date: Sat, 10 Aug 2013 19:23:53 +0200
Subject: shell32: return command strings for a few more commands
Partially fixes bug 21766 - in Total Commander with this patch only "Rename" from context menu acts as rename.
Many other commands still don't work as expected.
---
dlls/shell32/shlview_cmenu.c | 56 ++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 56 insertions(+)
diff --git a/dlls/shell32/shlview_cmenu.c b/dlls/shell32/shlview_cmenu.c
index b7dc994..6004afc 100644
--- a/dlls/shell32/shlview_cmenu.c
+++ b/dlls/shell32/shlview_cmenu.c
@@ -505,6 +505,34 @@ static HRESULT WINAPI ItemMenu_GetCommandString(
case GCS_VERBA:
switch(idCommand)
{
+ case FCIDM_SHVIEW_OPEN:
+ strcpy(lpszName, "open");
+ hr = S_OK;
+ break;
+ case FCIDM_SHVIEW_EXPLORE:
+ strcpy(lpszName, "explore");
+ hr = S_OK;
+ break;
+ case FCIDM_SHVIEW_CUT:
+ strcpy(lpszName, "cut");
+ hr = S_OK;
+ break;
+ case FCIDM_SHVIEW_COPY:
+ strcpy(lpszName, "copy");
+ hr = S_OK;
+ break;
+ case FCIDM_SHVIEW_CREATELINK:
+ strcpy(lpszName, "link");
+ hr = S_OK;
+ break;
+ case FCIDM_SHVIEW_DELETE:
+ strcpy(lpszName, "delete");
+ hr = S_OK;
+ break;
+ case FCIDM_SHVIEW_PROPERTIES:
+ strcpy(lpszName, "properties");
+ hr = S_OK;
+ break;
case FCIDM_SHVIEW_RENAME:
strcpy(lpszName, "rename");
hr = S_OK;
@@ -517,6 +545,34 @@ static HRESULT WINAPI ItemMenu_GetCommandString(
case GCS_VERBW:
switch(idCommand)
{
+ case FCIDM_SHVIEW_OPEN:
+ MultiByteToWideChar(CP_ACP, 0, "open", -1, (LPWSTR)lpszName, uMaxNameLen);
+ hr = S_OK;
+ break;
+ case FCIDM_SHVIEW_EXPLORE:
+ MultiByteToWideChar(CP_ACP, 0, "explore", -1, (LPWSTR)lpszName, uMaxNameLen);
+ hr = S_OK;
+ break;
+ case FCIDM_SHVIEW_CUT:
+ MultiByteToWideChar(CP_ACP, 0, "cut", -1, (LPWSTR)lpszName, uMaxNameLen);
+ hr = S_OK;
+ break;
+ case FCIDM_SHVIEW_COPY:
+ MultiByteToWideChar(CP_ACP, 0, "copy", -1, (LPWSTR)lpszName, uMaxNameLen);
+ hr = S_OK;
+ break;
+ case FCIDM_SHVIEW_CREATELINK:
+ MultiByteToWideChar(CP_ACP, 0, "link", -1, (LPWSTR)lpszName, uMaxNameLen);
+ hr = S_OK;
+ break;
+ case FCIDM_SHVIEW_DELETE:
+ MultiByteToWideChar(CP_ACP, 0, "delete", -1, (LPWSTR)lpszName, uMaxNameLen);
+ hr = S_OK;
+ break;
+ case FCIDM_SHVIEW_PROPERTIES:
+ MultiByteToWideChar(CP_ACP, 0, "properties", -1, (LPWSTR)lpszName, uMaxNameLen);
+ hr = S_OK;
+ break;
case FCIDM_SHVIEW_RENAME:
MultiByteToWideChar( CP_ACP, 0, "rename", -1, (LPWSTR)lpszName, uMaxNameLen );
hr = S_OK;
--
1.8.1.2
More information about the wine-patches
mailing list