Module: wine Branch: master Commit: 2cce196210b82a94046389fe7f90d25da7d908d7 URL: http://source.winehq.org/git/wine.git/?a=commit;h=2cce196210b82a94046389fe7f...
Author: Nikolay Sivov nsivov@codeweavers.com Date: Wed Jan 25 22:51:31 2017 +0300
shell32/shellview: Set subitem callbacks for every column.
Signed-off-by: Nikolay Sivov nsivov@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/shell32/shlview.c | 33 ++++++++++++++++++++------------- 1 file changed, 20 insertions(+), 13 deletions(-)
diff --git a/dlls/shell32/shlview.c b/dlls/shell32/shlview.c index c15a32d..92eda55 100644 --- a/dlls/shell32/shlview.c +++ b/dlls/shell32/shlview.c @@ -562,22 +562,29 @@ static int LV_FindItemByPidl( return -1; }
-/********************************************************** -* LV_AddItem() -*/ -static void shellview_add_item(IShellViewImpl * This, LPCITEMIDLIST pidl) +static void shellview_add_item(IShellViewImpl *shellview, LPCITEMIDLIST pidl) { - LVITEMW lvItem; + LVITEMW item; + UINT i;
- TRACE("(%p)(pidl=%p)\n", This, pidl); + TRACE("(%p)(pidl=%p)\n", shellview, pidl);
- lvItem.mask = LVIF_TEXT | LVIF_IMAGE | LVIF_PARAM; /*set the mask*/ - lvItem.iItem = 0; - lvItem.iSubItem = 0; - lvItem.lParam = (LPARAM)pidl; - lvItem.pszText = LPSTR_TEXTCALLBACKW; /*get text on a callback basis*/ - lvItem.iImage = I_IMAGECALLBACK; /*get the image on a callback basis*/ - ListView_InsertItemW(This->hWndList, &lvItem); + item.mask = LVIF_TEXT | LVIF_IMAGE | LVIF_PARAM; + item.iItem = 0; + item.iSubItem = 0; + item.lParam = (LPARAM)pidl; + item.pszText = LPSTR_TEXTCALLBACKW; + item.iImage = I_IMAGECALLBACK; + SendMessageW(shellview->hWndList, LVM_INSERTITEMW, 0, (LPARAM)&item); + + for (i = 1; i < shellview->columns; i++) + { + item.mask = LVIF_TEXT; + item.iItem = 0; + item.iSubItem = 1; + item.pszText = LPSTR_TEXTCALLBACKW; + SendMessageW(shellview->hWndList, LVM_SETITEMW, 0, (LPARAM)&item); + } }
/**********************************************************