From 072951e2f8a46269b46ca5acd42a6bd976f96d2d Mon Sep 17 00:00:00 2001 From: Nikolay Sivov Date: Thu, 4 Mar 2010 22:36:27 +0300 Subject: [PATCH] shell32: Stub IShellView2::SelectAndPositionItem() over IFolderView::SelectAndPositionItems(). --- dlls/shell32/shlview.c | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/dlls/shell32/shlview.c b/dlls/shell32/shlview.c index 8114546c8a7..80c4c3a6757 100644 --- a/dlls/shell32/shlview.c +++ b/dlls/shell32/shlview.c @@ -2111,10 +2111,26 @@ static HRESULT WINAPI IShellView2_fnHandleRename(IShellView2* iface, LPCITEMIDLI return E_NOTIMPL; } -static HRESULT WINAPI IShellView2_fnSelectAndPositionItem(IShellView2* iface, LPCITEMIDLIST item, UINT flags, POINT *point) +static HRESULT WINAPI IShellView2_fnSelectAndPositionItem( + IShellView2* iface, + LPCITEMIDLIST item, + UINT flags, + POINT *point) { - FIXME("(%p)->(item %p, flags %#x, point %p) stub!\n", iface, item, flags, point); - return E_NOTIMPL; + IShellViewImpl *This = (IShellViewImpl *)iface; + IFolderView *view; + HRESULT hr; + + TRACE("(%p)->(item %p, flags %#x, point %p)\n", This, item, flags, point); + + hr = IShellView2_QueryInterface(iface, &IID_IFolderView, (void**)&view); + if (hr == S_OK) + { + hr = IFolderView_SelectAndPositionItems(view, 1, &item, point, flags); + IFolderView_Release(view); + } + + return hr; } static const IShellView2Vtbl svvt =