Changeset 10185 for trunk/src/shell32
- Timestamp:
- Jul 28, 2003, 1:35:32 PM (22 years ago)
- Location:
- trunk/src/shell32
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/shell32/enumidlist.c
r9094 r10185 1 /* $Id: enumidlist.c,v 1. 6 2002-08-22 14:20:44sandervl Exp $ */1 /* $Id: enumidlist.c,v 1.7 2003-07-28 11:28:56 sandervl Exp $ */ 2 2 /* 3 3 * IEnumIDList … … 202 202 for (x = 0;x < count;x++) 203 203 { 204 if ( !(dwFlags & SHCONTF_INCLUDEHIDDEN) && (stffile[x].dwFileAttributes & FILE_ATTRIBUTE_HIDDEN) ) continue; 205 204 206 if (stffile[x].dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) 205 207 { //directory … … 247 249 for (x = 0;x < count;x++) 248 250 { 251 if ( !(dwFlags & SHCONTF_INCLUDEHIDDEN) && (stffile[x].dwFileAttributes & FILE_ATTRIBUTE_HIDDEN) ) continue; 252 249 253 if (! (stffile[x].dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) ) 250 254 { -
trunk/src/shell32/shlfolder.c
r9885 r10185 235 235 * This functions does not set flags!! It only resets flags when nessesary. 236 236 */ 237 #include <dbglog.h> 237 238 static HRESULT SHELL32_GetItemAttributes( 238 239 IShellFolder * psf, … … 240 241 LPDWORD pdwAttributes) 241 242 { 243 #if 1 244 GUID const *clsid; 245 DWORD dwAttributes; 246 DWORD dwSupportedAttr=SFGAO_CANCOPY | /*0x00000001 */ 247 SFGAO_CANMOVE | /*0x00000002 */ 248 SFGAO_CANLINK | /*0x00000004 */ 249 SFGAO_CANRENAME | /*0x00000010 */ 250 SFGAO_CANDELETE | /*0x00000020 */ 251 SFGAO_HASPROPSHEET | /*0x00000040 */ 252 SFGAO_DROPTARGET | /*0x00000100 */ 253 SFGAO_READONLY | /*0x00040000 */ 254 SFGAO_HIDDEN | /*0x00080000 */ 255 SFGAO_FILESYSANCESTOR | /*0x10000000 */ 256 SFGAO_FOLDER | /*0x20000000 */ 257 SFGAO_FILESYSTEM | /*0x40000000 */ 258 SFGAO_HASSUBFOLDER; /*0x80000000 */ 259 260 TRACE ("0x%08lx\n", *pdwAttributes); 261 262 dprintf(("_ILGetTextPointer returned %s", _ILGetTextPointer(pidl))); 263 264 if (*pdwAttributes & ~dwSupportedAttr) 265 { 266 WARN ("attributes 0x%08lx not implemented\n", (*pdwAttributes & ~dwSupportedAttr)); 267 *pdwAttributes &= dwSupportedAttr; 268 } 269 270 if (_ILIsDrive (pidl)) { 271 *pdwAttributes &= SFGAO_HASSUBFOLDER|SFGAO_FILESYSTEM|SFGAO_FOLDER|SFGAO_FILESYSANCESTOR|SFGAO_DROPTARGET|SFGAO_HASPROPSHEET|SFGAO_CANLINK; 272 } else if ((clsid = _ILGetGUIDPointer (pidl))) { 273 if (HCR_GetFolderAttributes (clsid, &dwAttributes)) { 274 *pdwAttributes &= dwAttributes; 275 } else { 276 *pdwAttributes &= SFGAO_HASSUBFOLDER|SFGAO_FOLDER|SFGAO_FILESYSANCESTOR|SFGAO_DROPTARGET|SFGAO_HASPROPSHEET|SFGAO_CANRENAME|SFGAO_CANLINK; 277 } 278 } else if (_ILGetDataPointer (pidl)) { 279 dwAttributes = _ILGetFileAttributes (pidl, NULL, 0); 280 *pdwAttributes &= ~SFGAO_FILESYSANCESTOR; 281 282 if (((SFGAO_FOLDER|SFGAO_HASSUBFOLDER) & *pdwAttributes) && !(dwAttributes & FILE_ATTRIBUTE_DIRECTORY)) 283 *pdwAttributes &= ~(SFGAO_FOLDER | SFGAO_HASSUBFOLDER); 284 285 if ((SFGAO_HIDDEN & *pdwAttributes) && !(dwAttributes & FILE_ATTRIBUTE_HIDDEN)) 286 *pdwAttributes &= ~SFGAO_HIDDEN; 287 288 if ((SFGAO_READONLY & *pdwAttributes) && !(dwAttributes & FILE_ATTRIBUTE_READONLY)) 289 *pdwAttributes &= ~SFGAO_READONLY; 290 } else { 291 *pdwAttributes &= SFGAO_HASSUBFOLDER|SFGAO_FOLDER|SFGAO_FILESYSANCESTOR|SFGAO_DROPTARGET|SFGAO_HASPROPSHEET|SFGAO_CANRENAME|SFGAO_CANLINK; 292 } 293 TRACE ("-- 0x%08lx\n", *pdwAttributes); 294 return S_OK; 295 #else 242 296 GUID const * clsid; 243 297 DWORD dwAttributes; … … 284 338 TRACE("-- 0x%08lx\n", *pdwAttributes); 285 339 return S_OK; 340 #endif 286 341 } 287 342 … … 1809 1864 if (!SUCCEEDED(SHELL32_CoCreateInitSF (This->absPidl, pidl, clsid, riid, (LPVOID*)&pShellFolder))) 1810 1865 { 1866 #ifdef __WIN32OS2__ 1867 //SvL: no implementation present, so just copy 'my computer' 1868 if ( IsEqualIID(clsid, &CLSID_NetworkPlaces)) { 1869 pShellFolder = ISF_MyComputer_Constructor(); 1870 } 1871 #else 1811 1872 return E_INVALIDARG; 1873 #endif 1812 1874 } 1813 1875 }
Note:
See TracChangeset
for help on using the changeset viewer.