Nikolay Sivov : shell32: Get rid of rename helper.

Alexandre Julliard julliard at winehq.org
Tue Jan 10 13:11:21 CST 2012


Module: wine
Branch: master
Commit: de0813c7a384b4e4eb2831999d356b74a59c7268
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=de0813c7a384b4e4eb2831999d356b74a59c7268

Author: Nikolay Sivov <nsivov at codeweavers.com>
Date:   Tue Jan 10 16:02:44 2012 +0300

shell32: Get rid of rename helper.

---

 dlls/shell32/shv_item_cmenu.c |   43 +++++++++++++++++-----------------------
 1 files changed, 18 insertions(+), 25 deletions(-)

diff --git a/dlls/shell32/shv_item_cmenu.c b/dlls/shell32/shv_item_cmenu.c
index ac91f37..06169c5 100644
--- a/dlls/shell32/shv_item_cmenu.c
+++ b/dlls/shell32/shv_item_cmenu.c
@@ -260,29 +260,6 @@ static void DoOpenExplore(ItemCmImpl *This, HWND hwnd, LPCSTR verb)
 }
 
 /**************************************************************************
-* DoRename
-*/
-static void DoRename(ItemCmImpl *This, HWND hwnd)
-{
-	LPSHELLBROWSER	lpSB;
-	LPSHELLVIEW	lpSV;
-
-	TRACE("(%p)->(wnd=%p)\n",This, hwnd);
-
-	/* get the active IShellView */
-	if ((lpSB = (LPSHELLBROWSER)SendMessageA(hwnd, CWM_GETISHELLBROWSER,0,0)))
-	{
-	  if(SUCCEEDED(IShellBrowser_QueryActiveShellView(lpSB, &lpSV)))
-	  {
-	    TRACE("(sv=%p)\n",lpSV);
-	    IShellView_SelectItem(lpSV, This->apidl[0],
-              SVSI_DESELECTOTHERS|SVSI_EDIT|SVSI_ENSUREVISIBLE|SVSI_FOCUSED|SVSI_SELECT);
-	    IShellView_Release(lpSV);
-	  }
-	}
-}
-
-/**************************************************************************
  * DoDelete
  *
  * deletes the currently selected items
@@ -479,9 +456,25 @@ static HRESULT WINAPI ISvItemCm_fnInvokeCommand(
             DoOpenExplore(This, lpcmi->hwnd, "open");
             break;
         case FCIDM_SHVIEW_RENAME:
-            TRACE("Verb FCIDM_SHVIEW_RENAME\n");
-            DoRename(This, lpcmi->hwnd);
+        {
+            IShellBrowser *browser;
+
+            /* get the active IShellView */
+            browser = (IShellBrowser*)SendMessageA(lpcmi->hwnd, CWM_GETISHELLBROWSER, 0, 0);
+            if (browser)
+            {
+                IShellView *view;
+
+                if(SUCCEEDED(IShellBrowser_QueryActiveShellView(browser, &view)))
+                {
+                    TRACE("(shellview=%p)\n", view);
+                    IShellView_SelectItem(view, This->apidl[0],
+                         SVSI_DESELECTOTHERS|SVSI_EDIT|SVSI_ENSUREVISIBLE|SVSI_FOCUSED|SVSI_SELECT);
+                    IShellView_Release(view);
+                }
+            }
             break;
+        }
         case FCIDM_SHVIEW_DELETE:
             TRACE("Verb FCIDM_SHVIEW_DELETE\n");
             DoDelete(This);




More information about the wine-cvs mailing list