FileOperation.st
changeset 6374 f9bed8385350
parent 6373 16fb0a500e0d
child 6618 72df4c3bb723
--- a/FileOperation.st	Fri Aug 05 11:34:33 2005 +0200
+++ b/FileOperation.st	Fri Aug 05 12:05:11 2005 +0200
@@ -20,7 +20,7 @@
 !
 
 FileOperation subclass:#Copy
-	instanceVariableNames:'colOfCopiedFiles'
+	instanceVariableNames:'copiedFiles newFiles'
 	classVariableNames:''
 	poolDictionaries:''
 	privateIn:FileOperation
@@ -48,7 +48,7 @@
 !
 
 FileOperation subclass:#Move
-	instanceVariableNames:'colOfMovedFiles'
+	instanceVariableNames:'movedFiles'
 	classVariableNames:''
 	poolDictionaries:''
 	privateIn:FileOperation
@@ -302,10 +302,17 @@
 !
 
 collectionOfCopiedFiles
-    colOfCopiedFiles isNil ifTrue:[
-        colOfCopiedFiles := OrderedCollection new.
+    copiedFiles isNil ifTrue:[
+        copiedFiles := OrderedCollection new.
     ].
-    ^ colOfCopiedFiles
+    ^ copiedFiles
+!
+
+collectionOfNewFiles
+    newFiles isNil ifTrue:[
+        newFiles := OrderedCollection new.
+    ].
+    ^ newFiles
 ! !
 
 !FileOperation::Copy methodsFor:'actions'!
@@ -383,7 +390,7 @@
 !
 
 copyFiles:aColOfSourceFiles to:aDirectory withOverWriteWarning:overWriteWarning copyFileIfSame:copy
-    |newFile suffix fileString sourceIsDirectory overWriteExisting|
+    |newFile suffix fileString sourceIsDirectory doCopy|
 
     (aDirectory exists) ifFalse:[
         Dialog warn:'Can''t copy to non-existing directory ', aDirectory asString. 
@@ -395,10 +402,11 @@
         result := false.
         ^ self
     ].
-    aColOfSourceFiles do:[: filename |
+
+    aColOfSourceFiles do:[:filename |
         newFile := aDirectory construct:(filename baseName).
         sourceIsDirectory := filename isDirectory.
-        overWriteExisting := true.
+        doCopy := true.
         (newFile exists) ifTrue:[
             ((newFile asString = filename asString) and:[copy]) ifTrue:[
                 [newFile exists] whileTrue:[
@@ -411,8 +419,8 @@
                 ].
             ] ifFalse:[
                 overWriteWarning ifTrue:[
-                    overWriteExisting := (self fileExistsDialogForNewFile:newFile oldFile:filename withCancel:(aColOfSourceFiles size > 1) withRemoveIfSame:false).
-                    overWriteExisting isNil ifTrue:[
+                    doCopy := (self fileExistsDialogForNewFile:newFile oldFile:filename withCancel:(aColOfSourceFiles size > 1) withRemoveIfSame:false).
+                    doCopy isNil ifTrue:[
                         " abort pressed "
                         result := false.
                         ^ self.
@@ -420,7 +428,7 @@
                 ]
             ].
         ].
-        overWriteExisting ifTrue:[
+        doCopy ifTrue:[
             Error handle:[:ex|
                 "was not able to copy it"
                 result := false.
@@ -442,7 +450,8 @@
                     filename copyTo:newFile.
                 ].
             ].
-            self collectionOfCopiedFiles add:filename
+            self collectionOfCopiedFiles add:filename.
+            self collectionOfNewFiles add:newFile.
         ]
     ].
     DirectoryContents flushCachedDirectoryFor:aDirectory.
@@ -1009,10 +1018,10 @@
 !
 
 collectionOfMovedFiles
-    colOfMovedFiles isNil ifTrue:[
-        colOfMovedFiles := OrderedCollection new.
+    movedFiles isNil ifTrue:[
+        movedFiles := OrderedCollection new.
     ].
-    ^ colOfMovedFiles
+    ^ movedFiles
 ! !
 
 !FileOperation::Move methodsFor:'actions'!
@@ -1321,5 +1330,5 @@
 !FileOperation class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/FileOperation.st,v 1.69 2005-08-05 09:34:24 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/FileOperation.st,v 1.70 2005-08-05 10:05:11 cg Exp $'
 ! !