Rename.st
changeset 1588 6dde5ad32643
parent 1585 91ec771207a2
equal deleted inserted replaced
1587:91a7b38eb142 1588:6dde5ad32643
     8 !
     8 !
     9 
     9 
    10 
    10 
    11 !Rename class methodsFor:'actions'!
    11 !Rename class methodsFor:'actions'!
    12 
    12 
    13 filesRename:aColOfFiles
    13 renameFile:oldFile to:newName
    14     "move from to
    14     "move from to
    15     "
    15     "
    16 
    16 
    17     |instance|
    17     |instance|
    18 
    18 
    19     instance := self new.
    19     instance := self new.
    20     instance filesRename:aColOfFiles.
    20     instance renameFile:oldFile to:newName.
    21     ^ instance
    21     ^ instance
    22 !
    22 !
    23 
    23 
    24 renameFrom:oldFile to:newName
    24 renameFiles:aColOfFiles 
    25     "move from to
    25     "move from to
    26     "
    26     "
    27 
    27 
    28     |instance|
    28     |instance|
    29 
    29 
    30     instance := self new.
    30     instance := self new.
    31     instance renameFrom:oldFile to:newName.
    31     instance renameFiles:aColOfFiles.
    32     ^ instance
    32     ^ instance
    33 ! !
    33 ! !
    34 
    34 
    35 !Rename class methodsFor:'defaults'!
    35 !Rename class methodsFor:'defaults'!
    36 
    36 
   111     ^ renamedFiles
   111     ^ renamedFiles
   112 ! !
   112 ! !
   113 
   113 
   114 !Rename methodsFor:'actions'!
   114 !Rename methodsFor:'actions'!
   115 
   115 
   116 filesRename:aColOfFiles
   116 renameFile:oldFile to:newName
   117     "rename the selected file(s)"
       
   118 
       
   119     |queryBox b lastNewName lastOldName initialText oldName|
       
   120 
       
   121     queryBox := FilenameEnterBox new.
       
   122     queryBox okText:'Rename'.
       
   123     aColOfFiles size > 1 ifTrue:[
       
   124         b := queryBox addAbortButtonLabelled:'Cancel All'.
       
   125         b action:[^ self ].
       
   126     ].
       
   127 
       
   128     aColOfFiles do:[:oldFile |
       
   129         oldName := oldFile baseName asString.
       
   130         queryBox title:('Rename ', oldName, ' to:').
       
   131 
       
   132         lastNewName notNil ifTrue:[
       
   133             "/ intelligent default ...
       
   134             initialText := self class goodRenameDefaultFor:oldName lastOld:lastOldName lastNew:lastNewName
       
   135         ].
       
   136         initialText notNil ifTrue:[
       
   137             queryBox initialText:initialText.
       
   138         ] ifFalse:[                                            
       
   139             queryBox initialText:oldName.
       
   140         ].
       
   141         queryBox action:[:newName |
       
   142             (self renameFrom:oldFile to:newName asString) ifTrue:[
       
   143                 result := true.   
       
   144             ].
       
   145             lastOldName := oldName.
       
   146             lastNewName := newName.
       
   147         ].
       
   148 
       
   149         queryBox showAtPointer
       
   150     ].
       
   151 !
       
   152 
       
   153 renameFrom:oldFile to:newName
       
   154     "rename a file (or directory)"
   117     "rename a file (or directory)"
   155 
   118 
   156     |old new msg|
   119     |old new msg|
   157 
   120 
   158     (oldFile isNil or:[newName isNil]) ifTrue:[
   121     (oldFile isNil or:[newName isNil]) ifTrue:[
   182         ].
   145         ].
   183         old renameTo:new.
   146         old renameTo:new.
   184         self renamedFiles add:new.
   147         self renamedFiles add:new.
   185     ].
   148     ].
   186     result := true.
   149     result := true.
       
   150 !
       
   151 
       
   152 renameFiles:aColOfFiles 
       
   153     "rename the selected file(s)"
       
   154 
       
   155     |queryBox b lastNewName lastOldName initialText oldName|
       
   156 
       
   157     queryBox := FilenameEnterBox new.
       
   158     queryBox okText:'Rename'.
       
   159     aColOfFiles size > 1 ifTrue:[
       
   160         b := queryBox addAbortButtonLabelled:'Cancel All'.
       
   161         b action:[^ self]
       
   162     ].
       
   163     aColOfFiles do:[:oldFile | 
       
   164         oldName := oldFile baseName asString.
       
   165         queryBox title:('Rename ' , oldName , ' to:').
       
   166         lastNewName notNil ifTrue:[
       
   167             initialText := self class 
       
   168                         goodRenameDefaultFor:oldName
       
   169                         lastOld:lastOldName
       
   170                         lastNew:lastNewName
       
   171         ].
       
   172         initialText notNil ifTrue:[
       
   173             queryBox initialText:initialText
       
   174         ] ifFalse:[
       
   175             queryBox initialText:oldName
       
   176         ].
       
   177         queryBox 
       
   178             action:[:newName | 
       
   179                 (self renameFile:oldFile to:newName asString) ifTrue:[
       
   180                     result := true
       
   181                 ].
       
   182                 lastOldName := oldName.
       
   183                 lastNewName := newName
       
   184             ].
       
   185         queryBox showAtPointer
       
   186     ]
   187 ! !
   187 ! !
   188 
   188 
   189 !Rename class methodsFor:'documentation'!
   189 !Rename class methodsFor:'documentation'!
   190 
   190 
   191 version
   191 version