--- a/AbstractFileBrowser.st Sat Mar 06 08:35:47 2004 +0100
+++ b/AbstractFileBrowser.st Mon Mar 08 20:05:00 2004 +0100
@@ -1,5 +1,3 @@
-"{ Encoding: utf8 }"
-
"
COPYRIGHT (c) 2002 by eXept Software AG
All Rights Reserved
@@ -3748,16 +3746,19 @@
deleteFiles:colOfFiles confirm:confirm
"delete current selected files/directories
"
- |delete|
+ |delete result|
self windowGroup withWaitCursorDo:[
delete := FileOperation getDeleteClass deleteFiles:colOfFiles confirm:confirm.
- delete result ifFalse:[
- self notify:delete errorString.
+ result := delete result.
+ result notNil ifTrue:[
+ result ifFalse:[
+ self notify:delete errorString.
+ ].
+ self updateListAfterDelete:colOfFiles.
].
- self updateListAfterDelete:colOfFiles.
- ].
- ^ delete result.
+ ].
+ ^ result.
!
moveFile:aSourceFile to:aDestFile
@@ -6650,5 +6651,5 @@
!AbstractFileBrowser class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/AbstractFileBrowser.st,v 1.213 2004-03-05 13:28:40 penk Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/AbstractFileBrowser.st,v 1.214 2004-03-08 19:05:00 cg Exp $'
! !
--- a/FileOperation.st Sat Mar 06 08:35:47 2004 +0100
+++ b/FileOperation.st Mon Mar 08 20:05:00 2004 +0100
@@ -1,5 +1,3 @@
-"{ Encoding: utf8 }"
-
"{ Package: 'stx:libtool2' }"
Object subclass:#FileOperation
@@ -204,7 +202,7 @@
!FileOperation::Copy class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/FileOperation.st,v 1.41 2004-03-04 10:08:18 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/FileOperation.st,v 1.42 2004-03-08 19:04:50 cg Exp $'
! !
!FileOperation::Copy methodsFor:'accessing'!
@@ -411,7 +409,7 @@
!FileOperation::Create class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/FileOperation.st,v 1.41 2004-03-04 10:08:18 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/FileOperation.st,v 1.42 2004-03-08 19:04:50 cg Exp $'
! !
!FileOperation::Create methodsFor:'accessing'!
@@ -684,7 +682,7 @@
!FileOperation::Delete class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/FileOperation.st,v 1.41 2004-03-04 10:08:18 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/FileOperation.st,v 1.42 2004-03-08 19:04:50 cg Exp $'
! !
!FileOperation::Delete methodsFor:'actions'!
@@ -724,72 +722,83 @@
deleteFiles:colOfFiles confirm:confirm
"delete current selected files/directories
"
- |resources retVal nFilesToDelete ask labels values fileTypeString|
+ |resources answer nFilesToDelete ask labels values fileTypeString|
ask := confirm.
resources := AbstractFileBrowser classResources.
nFilesToDelete := colOfFiles size.
colOfFiles do:[:filenameOrString |
- |filename askForNonEmptyDirectory|
+ |filename askForNonEmptyDirectory skip|
filename := filenameOrString asFilename.
+ skip := false.
fileTypeString := ''.
filename isSymbolicLink ifTrue:[
fileTypeString := 'symbolic link '.
] ifFalse:[
- filename exists not ifTrue:[
- self warn:('%1 does not exist' bindWith:filename asString allBold).
- ^ self.
+ filename exists ifFalse:[
+ (Dialog
+ confirm:('%1 does not exist' bindWith:filename asString allBold)
+ yesLabel:(resources string:'OK')
+ noLabel:(resources string:'Cancel'))
+ ifFalse:[
+ ^ self.
+ ].
+ skip := true.
]
].
- ask ifTrue:[
- nFilesToDelete = 1 ifTrue:[
- labels := #('No' 'Yes').
- values := #(#no #yes).
+ skip ifFalse:[
+ ask ifTrue:[
+ nFilesToDelete = 1 ifTrue:[
+ labels := #('No' 'Yes').
+ values := #(#no #yes).
+ ] ifFalse:[
+ labels := #('Cancel' 'No' 'Yes' 'Yes to All' ).
+ values := #(#cancel #no #yes #yesToAll).
+ ].
+ answer := Dialog
+ confirmWithCancel:(resources
+ stringWithCRs:'Really delete\\ %1%2%3 ?'
+ with:fileTypeString
+ with:(filename asString allBold)
+ with:(nFilesToDelete = 1 ifTrue:'' ifFalse:['\\(' , nFilesToDelete printString , ' files alltogether)']) withCRs )
+ labels:(resources array:labels)
+ values:values
+ default:(values indexOf:#yes).
] ifFalse:[
- labels := #('Cancel' 'No' 'Yes' 'Yes to All' ).
- values := #(#cancel #no #yes #yesToAll).
+ answer := #yesToAll.
].
- retVal := Dialog
- confirmWithCancel:(resources
- stringWithCRs:'Really delete\\ %1%2%3 ?'
- with:fileTypeString
- with:(filename asString allBold)
- with:(nFilesToDelete = 1 ifTrue:'' ifFalse:['\\(' , nFilesToDelete printString , ' files alltogether)']) withCRs )
- labels:(resources array:labels)
- values:values
- default:(values indexOf:#yes).
- ] ifFalse:[
- retVal := #yesToAll.
- ].
- retVal == #cancel ifTrue:[
- ^ self.
- ].
+
+ answer == #cancel ifTrue:[
+ ^ self.
+ ].
+
+ answer == #yesToAll ifTrue:[
+ ask := false.
+ answer := #yes.
+ ].
- retVal == #yesToAll ifTrue:[
- ask := false.
- retVal := #yes.
- ].
- retVal == #yes ifTrue:[
- askForNonEmptyDirectory := true.
- filename isSymbolicLink ifFalse:[
- filename isNonEmptyDirectory ifTrue:[
- askForNonEmptyDirectory := Dialog
- confirmWithCancel:(('Directory ''%1'' is not empty', Character cr asString, 'remove anyway ?')
- bindWith:filename pathName allBold)
- labels:( #('Cancel' 'Keep' 'Remove') )
- values:#(nil false true)
- default:3.
- askForNonEmptyDirectory == nil ifTrue:[
- ^ self
+ answer == #yes ifTrue:[
+ askForNonEmptyDirectory := true.
+ filename isSymbolicLink ifFalse:[
+ filename isNonEmptyDirectory ifTrue:[
+ askForNonEmptyDirectory := Dialog
+ confirmWithCancel:(('Directory ''%1'' is not empty', Character cr asString, 'remove anyway ?')
+ bindWith:filename pathName allBold)
+ labels:( #('Cancel' 'Keep' 'Remove') )
+ values:#(nil false true)
+ default:3.
+ askForNonEmptyDirectory == nil ifTrue:[
+ ^ self
+ ].
].
].
+ askForNonEmptyDirectory ifTrue:[
+ self deleteFile:filename.
+ ]
].
- askForNonEmptyDirectory ifTrue:[
- self deleteFile:filename.
- ]
].
].
! !
@@ -865,7 +874,7 @@
!FileOperation::Move class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/FileOperation.st,v 1.41 2004-03-04 10:08:18 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/FileOperation.st,v 1.42 2004-03-08 19:04:50 cg Exp $'
! !
!FileOperation::Move methodsFor:'accessing'!
@@ -1035,7 +1044,7 @@
!FileOperation::Rename class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/FileOperation.st,v 1.41 2004-03-04 10:08:18 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/FileOperation.st,v 1.42 2004-03-08 19:04:50 cg Exp $'
! !
!FileOperation::Rename methodsFor:'accessing'!
@@ -1141,5 +1150,5 @@
!FileOperation class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/FileOperation.st,v 1.41 2004-03-04 10:08:18 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/FileOperation.st,v 1.42 2004-03-08 19:04:50 cg Exp $'
! !