equal
deleted
inserted
replaced
417 ! ! |
417 ! ! |
418 |
418 |
419 !DirectoryView methodsFor:'private'! |
419 !DirectoryView methodsFor:'private'! |
420 |
420 |
421 readDirectory |
421 readDirectory |
422 |
422 |allDirectories allFiles foundFiles filterList dir newContents| |
423 |allFiles foundFiles filterList dir| |
423 |
424 |
424 allFiles := OrderedCollection new. |
425 allFiles := Set new. |
425 allDirectories := OrderedCollection new. |
426 foundFiles := Set new. |
426 foundFiles := OrderedCollection new. |
427 "/ filterList := self listOfFileFilters value. |
427 "/ filterList := self listOfFileFilters value. |
428 filterList := self selectedFileFilter asCollectionOfSubstringsSeparatedBy:$;. |
428 filterList := self selectedFileFilter asCollectionOfSubstringsSeparatedBy:$;. |
429 filterList := filterList collect:[:pattern | pattern withoutSeparators]. |
429 filterList := filterList collect:[:pattern | pattern withoutSeparators]. |
430 |
430 |
431 self withCursor:Cursor read do:[ |
431 self withCursor:Cursor read do:[ |
438 "/ ]. |
438 "/ ]. |
439 "/ ]. |
439 "/ ]. |
440 "/ ]. |
440 "/ ]. |
441 dir filesAndBasenamesDo:[:file :name| |
441 dir filesAndBasenamesDo:[:file :name| |
442 allFiles add: name |
442 allFiles add: name |
|
443 ]. |
|
444 dir directoriesAndBasenamesDo:[:file :name| |
|
445 allDirectories add: name |
443 ]. |
446 ]. |
444 |
447 |
445 Filename isCaseSensitive ifFalse:[ |
448 Filename isCaseSensitive ifFalse:[ |
446 filterList do:[:filter| |
449 filterList do:[:filter| |
447 |lcFilter| |
450 |lcFilter| |
459 select:[:name | filter match:name] |
462 select:[:name | filter match:name] |
460 ). |
463 ). |
461 ] |
464 ] |
462 ]. |
465 ]. |
463 |
466 |
464 foundFiles := foundFiles asOrderedCollection sort. |
467 foundFiles sort. |
|
468 allDirectories sort. |
|
469 |
465 dir := directory asFilename. |
470 dir := directory asFilename. |
466 self listOfFiles contents: (foundFiles collect:[:name| FileRow new fileName:(dir construct:name)]) |
471 |
|
472 newContents := OrderedCollection new. |
|
473 newContents addAll:(allDirectories collect:[:name| FileRow new fileName:(dir construct:name)]). |
|
474 newContents addAll:(foundFiles collect:[:name| FileRow new fileName:(dir construct:name)]). |
|
475 |
|
476 self listOfFiles contents:newContents |
467 ] |
477 ] |
468 ] |
478 ] |
469 |
479 |
470 "Modified: / 23.9.1998 / 17:00:42 / cg" |
480 "Modified: / 23.9.1998 / 17:00:42 / cg" |
471 ! |
481 ! |