Move.st
author penk
Tue, 03 Sep 2002 17:23:22 +0200
changeset 1585 91ec771207a2
child 1588 6dde5ad32643
permissions -rw-r--r--
initial checkin
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1585
91ec771207a2 initial checkin
penk
parents:
diff changeset
     1
"{ Package: 'stx:libtool2' }"
91ec771207a2 initial checkin
penk
parents:
diff changeset
     2
91ec771207a2 initial checkin
penk
parents:
diff changeset
     3
FileOperations subclass:#Move
91ec771207a2 initial checkin
penk
parents:
diff changeset
     4
	instanceVariableNames:''
91ec771207a2 initial checkin
penk
parents:
diff changeset
     5
	classVariableNames:''
91ec771207a2 initial checkin
penk
parents:
diff changeset
     6
	poolDictionaries:''
91ec771207a2 initial checkin
penk
parents:
diff changeset
     7
	category:'Interface-Support'
91ec771207a2 initial checkin
penk
parents:
diff changeset
     8
!
91ec771207a2 initial checkin
penk
parents:
diff changeset
     9
91ec771207a2 initial checkin
penk
parents:
diff changeset
    10
91ec771207a2 initial checkin
penk
parents:
diff changeset
    11
!Move class methodsFor:'actions'!
91ec771207a2 initial checkin
penk
parents:
diff changeset
    12
91ec771207a2 initial checkin
penk
parents:
diff changeset
    13
moveFile:aSourceFile to:aDestFile
91ec771207a2 initial checkin
penk
parents:
diff changeset
    14
    "move from to
91ec771207a2 initial checkin
penk
parents:
diff changeset
    15
    "
91ec771207a2 initial checkin
penk
parents:
diff changeset
    16
91ec771207a2 initial checkin
penk
parents:
diff changeset
    17
    |instance|
91ec771207a2 initial checkin
penk
parents:
diff changeset
    18
91ec771207a2 initial checkin
penk
parents:
diff changeset
    19
    instance := self new.
91ec771207a2 initial checkin
penk
parents:
diff changeset
    20
    instance moveFile:aSourceFile to:aDestFile.
91ec771207a2 initial checkin
penk
parents:
diff changeset
    21
    ^ instance
91ec771207a2 initial checkin
penk
parents:
diff changeset
    22
! !
91ec771207a2 initial checkin
penk
parents:
diff changeset
    23
91ec771207a2 initial checkin
penk
parents:
diff changeset
    24
!Move methodsFor:'actions'!
91ec771207a2 initial checkin
penk
parents:
diff changeset
    25
91ec771207a2 initial checkin
penk
parents:
diff changeset
    26
moveFile:aSourceFile to:aDestFile
91ec771207a2 initial checkin
penk
parents:
diff changeset
    27
    "defete current selected files/directories
91ec771207a2 initial checkin
penk
parents:
diff changeset
    28
    "
91ec771207a2 initial checkin
penk
parents:
diff changeset
    29
91ec771207a2 initial checkin
penk
parents:
diff changeset
    30
    |newFile|
91ec771207a2 initial checkin
penk
parents:
diff changeset
    31
91ec771207a2 initial checkin
penk
parents:
diff changeset
    32
    aDestFile exists not ifTrue:[
91ec771207a2 initial checkin
penk
parents:
diff changeset
    33
        DialogBox warn:'cant move to:', aDestFile asString. 
91ec771207a2 initial checkin
penk
parents:
diff changeset
    34
        result := false.
91ec771207a2 initial checkin
penk
parents:
diff changeset
    35
        ^ self
91ec771207a2 initial checkin
penk
parents:
diff changeset
    36
    ].
91ec771207a2 initial checkin
penk
parents:
diff changeset
    37
    newFile := (aDestFile pathName asFilename) construct:(aSourceFile baseName).
91ec771207a2 initial checkin
penk
parents:
diff changeset
    38
    (self fileExistDialogFor:newFile) ifFalse:[
91ec771207a2 initial checkin
penk
parents:
diff changeset
    39
        result := false.
91ec771207a2 initial checkin
penk
parents:
diff changeset
    40
        ^ self.
91ec771207a2 initial checkin
penk
parents:
diff changeset
    41
    ].
91ec771207a2 initial checkin
penk
parents:
diff changeset
    42
    Error handle:[:ex|
91ec771207a2 initial checkin
penk
parents:
diff changeset
    43
        DialogBox warn:ex errorString.
91ec771207a2 initial checkin
penk
parents:
diff changeset
    44
        result := false.
91ec771207a2 initial checkin
penk
parents:
diff changeset
    45
    ] do:[
91ec771207a2 initial checkin
penk
parents:
diff changeset
    46
        aSourceFile renameTo:(aDestFile construct:(aSourceFile baseName)).
91ec771207a2 initial checkin
penk
parents:
diff changeset
    47
        result := true.
91ec771207a2 initial checkin
penk
parents:
diff changeset
    48
    ].
91ec771207a2 initial checkin
penk
parents:
diff changeset
    49
! !
91ec771207a2 initial checkin
penk
parents:
diff changeset
    50
91ec771207a2 initial checkin
penk
parents:
diff changeset
    51
!Move class methodsFor:'documentation'!
91ec771207a2 initial checkin
penk
parents:
diff changeset
    52
91ec771207a2 initial checkin
penk
parents:
diff changeset
    53
version
91ec771207a2 initial checkin
penk
parents:
diff changeset
    54
    ^ '$Header$'
91ec771207a2 initial checkin
penk
parents:
diff changeset
    55
! !