# HG changeset patch # User Claus Gittinger # Date 1106226233 -3600 # Node ID 925053b958c7f39954c282ac08dacd13fed884df # Parent 45a19dfda66b15f2ddb79a84e79ed4731c46f30d +erase diff -r 45a19dfda66b -r 925053b958c7 AbstractFileBrowser.st --- a/AbstractFileBrowser.st Thu Jan 20 14:03:36 2005 +0100 +++ b/AbstractFileBrowser.st Thu Jan 20 14:03:53 2005 +0100 @@ -1320,6 +1320,12 @@ translateLabel: true ) (MenuItem + enabled: hasSelection + label: 'Erase' + itemValue: eraseFiles + translateLabel: true + ) + (MenuItem label: '-' ) (MenuItem @@ -3440,6 +3446,31 @@ ^ result. ! +eraseFiles:colOfFiles + "delete current selected files/directories + " + ^ self eraseFiles:colOfFiles confirm:true. +! + +eraseFiles:colOfFiles confirm:confirm + "erase current selected files/directories + " + |delete result| + + self windowGroup withWaitCursorDo:[ + delete := FileOperation eraseFiles:colOfFiles confirm:confirm. + result := delete result. + result notNil ifTrue:[ + result ifFalse:[ + self notify:delete errorString. + ] ifTrue:[ + self updateListAfterDelete:colOfFiles. + ] + ]. + ]. + ^ result. +! + moveFile:aSourceFile to:aDestFile "defete current selected files/directories " @@ -4139,51 +4170,26 @@ stream close. ! ! -!AbstractFileBrowser methodsFor:'menu actions-edit'! +!AbstractFileBrowser methodsFor:'menu actions-file'! copyFiles - - | files dirs| - - files := self currentSelectedFiles. - files notEmpty ifTrue:[ - self copyFilesToClipBoard:(files). - ] ifFalse:[ - dirs := self currentSelectedDirectories. - dirs notEmpty ifTrue:[ - self copyFilesToClipBoard:(dirs). - ]. - ]. + self + withSelectedFilesOrDirectoriesDo:[:filesOrDirs | self copyFilesToClipBoard:filesOrDirs] ! cutFiles - - | files dirs| - - files := self currentSelectedFiles. - files notEmpty ifTrue:[ - self cutFilesToClipBoard:(files). - ] ifFalse:[ - dirs := self currentSelectedDirectories. - dirs notEmpty ifTrue:[ - self cutFilesToClipBoard:(dirs). - ]. - ]. + self + withSelectedFilesOrDirectoriesDo:[:filesOrDirs | self cutFilesToClipBoard:filesOrDirs] ! deleteFiles - - | files dirs| - - files := self currentSelectedFiles. - files notEmpty ifTrue:[ - self deleteFiles:(files). - ] ifFalse:[ - dirs := self currentSelectedDirectories. - dirs notEmpty ifTrue:[ - self deleteFiles:(dirs). - ]. - ]. + self + withSelectedFilesOrDirectoriesDo:[:filesOrDirs | self deleteFiles:filesOrDirs] +! + +eraseFiles + self + withSelectedFilesOrDirectoriesDo:[:filesOrDirs | self eraseFiles:filesOrDirs] ! openSettingsDialog @@ -4194,6 +4200,20 @@ dialog allButOpen. dialog doReload. dialog openWindow +! + +withSelectedFilesOrDirectoriesDo:aBlock + |files dirs| + + files := self currentSelectedFiles. + files notEmpty ifTrue:[ + aBlock value:files. + ] ifFalse:[ + dirs := self currentSelectedDirectories. + dirs notEmpty ifTrue:[ + aBlock value:dirs. + ]. + ]. ! ! !AbstractFileBrowser methodsFor:'menu actions-help'! @@ -6571,5 +6591,5 @@ !AbstractFileBrowser class methodsFor:'documentation'! version - ^ '$Header: /cvs/stx/stx/libtool/AbstractFileBrowser.st,v 1.275 2004-12-13 10:49:43 cg Exp $' + ^ '$Header: /cvs/stx/stx/libtool/AbstractFileBrowser.st,v 1.276 2005-01-20 13:03:53 cg Exp $' ! !