--- a/FindFileApplication.st Tue May 18 16:34:43 2004 +0200
+++ b/FindFileApplication.st Tue May 18 17:36:29 2004 +0200
@@ -21,7 +21,7 @@
accessLock searchTask expanded searchRecursively selectionHolder
hasListEntries targetApplication useLocate useGrep
rememberInCache searchOnlyInCache searchForSameContents
- matchedFilesList shownList'
+ matchedFilesList shownListHolder'
classVariableNames:'ContentsInfoCache ContentsInfoCacheAccessLock LastRememberInCache'
poolDictionaries:''
category:'Interface-Tools-File'
@@ -308,7 +308,7 @@
isMultiSelect: true
doubleClickSelector: fileDoubleClick:
useIndex: true
- sequenceList: shownList
+ sequenceList: shownListHolder
)
(ProgressIndicatorSpec
name: 'ProgressIndicator1'
@@ -552,7 +552,7 @@
!
clearShownList
- self shownList valueHolder removeAll.
+ self shownList removeAll.
!
copySelectedFileNamesToClipboard
@@ -574,7 +574,7 @@
deleteAllFiles
|files|
- files := self shownList valueHolder copy.
+ files := self shownList copy.
self deleteFiles:files confirm:true.
self clearShownList.
!
@@ -585,7 +585,7 @@
|delete result|
self windowGroup withWaitCursorDo:[
- delete := FileOperation getDeleteClass deleteFiles:colOfFiles confirm:confirm.
+ delete := FileOperation getDeleteClass deleteFiles:colOfFiles asSet confirm:confirm.
result := delete result.
result notNil ifTrue:[
result ifFalse:[
@@ -604,7 +604,7 @@
|sel files result|
sel := self selectionHolder value.
- files := sel collect:[:idx | self shownList valueHolder at:idx].
+ files := sel collect:[:idx | self shownList at:idx].
self deleteFiles:files confirm:true.
result == true ifTrue:[
self removeSelectedFilesFromResultList.
@@ -613,7 +613,7 @@
doSearch
- | namePattern namePatterns contentsPattern notContentsPattern dir fileToCompareAgainst|
+ | namePattern namePatterns contentsPattern notContentsPattern dir fileToCompareAgainst thisSearchTask|
"/ self changeExtentToSeeSearchResult.
@@ -680,7 +680,7 @@
].
].
- searchTask :=
+ searchTask := thisSearchTask :=
[
|message t|
@@ -717,9 +717,11 @@
self changeInformationTo:'Find File ' , '- done.' toTab:true.
].
] valueNowOrOnUnwindDo:[
- searchTask := nil.
- self enableStop value:false.
- self notify:message.
+ thisSearchTask == searchTask ifTrue:[
+ searchTask := nil.
+ self enableStop value:false.
+ self notify:message.
+ ].
]
] newProcess.
@@ -741,7 +743,7 @@
|sel list|
sel := self selectionHolder value.
- list := self shownList valueHolder.
+ list := self shownList.
(sel notNil and:[sel notEmpty]) ifTrue:[
sel reverseDo:[: key |
list removeAtIndex:key
@@ -765,9 +767,9 @@
showMatchedFiles:aBoolean
aBoolean ifTrue:[
- self shownList valueHolder:(self matchedFilesList)
+ self shownListHolder valueHolder:(self matchedFilesList)
] ifFalse:[
- self shownList valueHolder:(self resultList)
+ self shownListHolder valueHolder:(self resultList)
].
!
@@ -1000,11 +1002,15 @@
!
shownList
- shownList isNil ifTrue:[
- shownList := IndirectValue for:(self resultList).
- shownList addDependent:self.
+ ^ self shownListHolder valueHolder.
+!
+
+shownListHolder
+ shownListHolder isNil ifTrue:[
+ shownListHolder := IndirectValue for:(self resultList).
+ shownListHolder addDependent:self.
].
- ^ shownList.
+ ^ shownListHolder.
!
useGrep
@@ -1024,7 +1030,7 @@
!FindFileApplication methodsFor:'change & update'!
update:something with:aParameter from:changedObject
- changedObject == self shownList ifTrue:[
+ changedObject == self shownListHolder ifTrue:[
self hasListEntries value:(changedObject valueHolder notEmpty).
^ self
].
@@ -1602,5 +1608,5 @@
!FindFileApplication class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/FindFileApplication.st,v 1.54 2004-05-18 12:24:20 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/FindFileApplication.st,v 1.55 2004-05-18 15:36:29 cg Exp $'
! !