Author: gadamopoulos Date: Wed Apr 1 19:18:34 2015 New Revision: 67008 URL: http://svn.reactos.org/svn/reactos?rev=67008&view=rev Log: [SHELL32] - Show hidden files as dithered.
Modified: trunk/reactos/dll/win32/shell32/CDefView.cpp Modified: trunk/reactos/dll/win32/shell32/CDefView.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shell32/CDefView.cpp?rev=67008&r1=67007&r2=67008&view=diff ============================================================================== --- trunk/reactos/dll/win32/shell32/CDefView.cpp [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shell32/CDefView.cpp [iso-8859-1] Wed Apr 1 19:18:34 2015 @@ -787,6 +787,7 @@ lvItem.lParam = reinterpret_cast<LPARAM>(ILClone(pidl)); /*set the item's data*/ lvItem.pszText = LPSTR_TEXTCALLBACKW; /*get text on a callback basis*/ lvItem.iImage = I_IMAGECALLBACK; /*get the image on a callback basis*/ + lvItem.stateMask = LVIS_CUT; if (m_ListView.InsertItem(&lvItem) == -1) return FALSE; @@ -881,7 +882,10 @@ { /* if the value is 1, then show all hidden files/folders */ if (flagVal == 1) + { dFlags |= SHCONTF_INCLUDEHIDDEN; + m_ListView.SendMessageW(LVM_SETCALLBACKMASK, LVIS_CUT, 0); + } } /* close the key */ @@ -1755,6 +1759,17 @@ { lpdi->item.iImage = SHMapPIDLToSystemImageListIndex(m_pSFParent, pidl, 0); } + if(lpdi->item.mask & LVIF_STATE) + { + ULONG attributes = SFGAO_HIDDEN; + if (SUCCEEDED(m_pSFParent->GetAttributesOf(1, &pidl, &attributes))) + { + if (attributes & SFGAO_HIDDEN) + { + lpdi->item.state |= LVIS_CUT; + } + } + } lpdi->item.mask |= LVIF_DI_SETITEM; break;