FileSaveBox.st
author Claus Gittinger <cg@exept.de>
Thu, 23 Nov 1995 03:26:58 +0100
changeset 197 00927189c882
parent 174 d80a6cc3f9b2
child 243 5c411425097d
permissions -rw-r--r--
checkin from browser
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
37
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
     1
"
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
     2
 COPYRIGHT (c) 1994 by Claus Gittinger
59
450ce95a72a4 *** empty log message ***
claus
parents: 37
diff changeset
     3
	      All Rights Reserved
37
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
     4
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
     5
 This software is furnished under a license and may be used
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
     9
 other person.  No title to or ownership of the software is
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    10
 hereby transferred.
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    11
"
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    12
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    13
FileSelectionBox subclass:#FileSaveBox
77
565b052f5277 *** empty log message ***
claus
parents: 59
diff changeset
    14
	 instanceVariableNames:'appendButton appendAction'
59
450ce95a72a4 *** empty log message ***
claus
parents: 37
diff changeset
    15
	 classVariableNames:''
450ce95a72a4 *** empty log message ***
claus
parents: 37
diff changeset
    16
	 poolDictionaries:''
450ce95a72a4 *** empty log message ***
claus
parents: 37
diff changeset
    17
	 category:'Views-DialogBoxes'
37
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    18
!
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    19
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    20
!FileSaveBox class methodsFor:'documentation'!
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    21
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    22
copyright
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    23
"
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    24
 COPYRIGHT (c) 1994 by Claus Gittinger
59
450ce95a72a4 *** empty log message ***
claus
parents: 37
diff changeset
    25
	      All Rights Reserved
37
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    26
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    27
 This software is furnished under a license and may be used
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    28
 only in accordance with the terms of that license and with the
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    29
 inclusion of the above copyright notice.   This software may not
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    30
 be provided or otherwise made available to, or used by, any
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    31
 other person.  No title to or ownership of the software is
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    32
 hereby transferred.
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    33
"
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    34
!
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    35
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    36
documentation
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    37
"
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    38
    Instances of FileSaveBox add an 'append'-button. The other
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    39
    behavior is that of a FileSelectionBox.
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    40
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    41
    Instance variables:
59
450ce95a72a4 *** empty log message ***
claus
parents: 37
diff changeset
    42
	appendAction            action to be performed when append is pressed
37
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    43
"
197
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    44
!
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    45
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    46
version
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    47
    ^ '$Header: /cvs/stx/stx/libwidg/FileSaveBox.st,v 1.7 1995-11-23 02:25:15 cg Exp $'
37
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    48
! !
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    49
197
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    50
!FileSaveBox methodsFor:'accessing'!
37
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    51
197
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    52
appendAction:aBlock
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    53
    "set the action to be performed when append is pressed"
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    54
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    55
    appendAction := aBlock
37
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    56
! !
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    57
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    58
!FileSaveBox methodsFor:'initialization'!
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    59
77
565b052f5277 *** empty log message ***
claus
parents: 59
diff changeset
    60
focusSequence
565b052f5277 *** empty log message ***
claus
parents: 59
diff changeset
    61
    |a|
565b052f5277 *** empty log message ***
claus
parents: 59
diff changeset
    62
565b052f5277 *** empty log message ***
claus
parents: 59
diff changeset
    63
    patternField shown ifTrue:[
565b052f5277 *** empty log message ***
claus
parents: 59
diff changeset
    64
	a := Array new:6.
565b052f5277 *** empty log message ***
claus
parents: 59
diff changeset
    65
	a at:1 put:enterField.
565b052f5277 *** empty log message ***
claus
parents: 59
diff changeset
    66
	a at:2 put:patternField.
565b052f5277 *** empty log message ***
claus
parents: 59
diff changeset
    67
	a at:3 put:selectionList.
565b052f5277 *** empty log message ***
claus
parents: 59
diff changeset
    68
	a at:4 put:abortButton.
565b052f5277 *** empty log message ***
claus
parents: 59
diff changeset
    69
	a at:5 put:appendButton.
565b052f5277 *** empty log message ***
claus
parents: 59
diff changeset
    70
	a at:6 put:okButton.
565b052f5277 *** empty log message ***
claus
parents: 59
diff changeset
    71
	^ a
565b052f5277 *** empty log message ***
claus
parents: 59
diff changeset
    72
    ].
565b052f5277 *** empty log message ***
claus
parents: 59
diff changeset
    73
    ^ Array with:enterField 
565b052f5277 *** empty log message ***
claus
parents: 59
diff changeset
    74
	    with:selectionList
565b052f5277 *** empty log message ***
claus
parents: 59
diff changeset
    75
	    with:abortButton 
565b052f5277 *** empty log message ***
claus
parents: 59
diff changeset
    76
	    with:appendButton 
565b052f5277 *** empty log message ***
claus
parents: 59
diff changeset
    77
	    with:okButton 
197
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    78
!
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    79
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    80
initialize
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    81
    super initialize.
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    82
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    83
    label := resources string:'Save file dialog'.
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    84
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    85
    okButton label:(resources string:'save').
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    86
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    87
    "
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    88
     insert an append-button between abort- and save-buttons
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    89
    "
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    90
    appendButton := Button okButton.
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    91
    appendButton isReturnButton:false.
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    92
    appendButton label:(resources string:'append').
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    93
    appendButton action:[appendButton turnOffWithoutRedraw. self appendPressed].
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    94
    buttonPanel addSubView:appendButton after:abortButton
37
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    95
! !
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    96
197
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    97
!FileSaveBox methodsFor:'user interaction'!
37
8dd71a2e79cd Initial revision
claus
parents:
diff changeset
    98
197
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
    99
appendPressed
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   100
    self hideAndEvaluate:[:string |
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   101
	appendAction notNil ifTrue:[
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   102
	    appendAction value:string 
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   103
	]
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   104
    ]
00927189c882 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 174
diff changeset
   105
! !
59
450ce95a72a4 *** empty log message ***
claus
parents: 37
diff changeset
   106