FileDialogV2.st
author Claus Gittinger <cg@exept.de>
Mon, 20 Jan 2020 21:02:47 +0100
changeset 19422 c6ca1c3e0fd7
parent 17920 773da6cf53a5
permissions -rw-r--r--
#REFACTORING by exept class: MultiViewToolApplication added: #askForFile:default:forSave:thenDo: changed: #askForFile:default:thenDo: #askForFile:thenDo: #menuSaveAllAs #menuSaveAs
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
     1
"
8a3828774d42 initial checkin
penk
parents:
diff changeset
     2
 COPYRIGHT (c) 2002 by eXept Software AG
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
     3
	      All Rights Reserved
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
     4
8a3828774d42 initial checkin
penk
parents:
diff changeset
     5
 This software is furnished under a license and may be used
8a3828774d42 initial checkin
penk
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
8a3828774d42 initial checkin
penk
parents:
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
8a3828774d42 initial checkin
penk
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
8a3828774d42 initial checkin
penk
parents:
diff changeset
     9
 other person.  No title to or ownership of the software is
8a3828774d42 initial checkin
penk
parents:
diff changeset
    10
 hereby transferred.
8a3828774d42 initial checkin
penk
parents:
diff changeset
    11
"
8a3828774d42 initial checkin
penk
parents:
diff changeset
    12
"{ Package: 'stx:libtool' }"
8a3828774d42 initial checkin
penk
parents:
diff changeset
    13
8a3828774d42 initial checkin
penk
parents:
diff changeset
    14
SimpleDialog subclass:#FileDialogV2
8a3828774d42 initial checkin
penk
parents:
diff changeset
    15
	instanceVariableNames:'aspects directory pattern filterHolder initialText multipleSelect
8a3828774d42 initial checkin
penk
parents:
diff changeset
    16
		doubleClickAction cancelLabelHolder okLabelHolder startFilename
8a3828774d42 initial checkin
penk
parents:
diff changeset
    17
		result filterField filenameField viewFiles filenameLabelHolder
8a3828774d42 initial checkin
penk
parents:
diff changeset
    18
		isLoadDialog newDirectoryVisibilityHolder
8a3828774d42 initial checkin
penk
parents:
diff changeset
    19
		appendButtonVisibleHolder appendWasPressed
8a3828774d42 initial checkin
penk
parents:
diff changeset
    20
		buttonPanelVisibleHolder appendLabelHolder contentsBrowser'
8a3828774d42 initial checkin
penk
parents:
diff changeset
    21
	classVariableNames:''
8a3828774d42 initial checkin
penk
parents:
diff changeset
    22
	poolDictionaries:''
8a3828774d42 initial checkin
penk
parents:
diff changeset
    23
	category:'Interface-Tools-File'
8a3828774d42 initial checkin
penk
parents:
diff changeset
    24
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
    25
8a3828774d42 initial checkin
penk
parents:
diff changeset
    26
!FileDialogV2 class methodsFor:'documentation'!
8a3828774d42 initial checkin
penk
parents:
diff changeset
    27
8a3828774d42 initial checkin
penk
parents:
diff changeset
    28
copyright
8a3828774d42 initial checkin
penk
parents:
diff changeset
    29
"
8a3828774d42 initial checkin
penk
parents:
diff changeset
    30
 COPYRIGHT (c) 2002 by eXept Software AG
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
    31
	      All Rights Reserved
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
    32
8a3828774d42 initial checkin
penk
parents:
diff changeset
    33
 This software is furnished under a license and may be used
8a3828774d42 initial checkin
penk
parents:
diff changeset
    34
 only in accordance with the terms of that license and with the
8a3828774d42 initial checkin
penk
parents:
diff changeset
    35
 inclusion of the above copyright notice.   This software may not
8a3828774d42 initial checkin
penk
parents:
diff changeset
    36
 be provided or otherwise made available to, or used by, any
8a3828774d42 initial checkin
penk
parents:
diff changeset
    37
 other person.  No title to or ownership of the software is
8a3828774d42 initial checkin
penk
parents:
diff changeset
    38
 hereby transferred.
8a3828774d42 initial checkin
penk
parents:
diff changeset
    39
"
8a3828774d42 initial checkin
penk
parents:
diff changeset
    40
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
    41
8a3828774d42 initial checkin
penk
parents:
diff changeset
    42
documentation
8a3828774d42 initial checkin
penk
parents:
diff changeset
    43
"
8a3828774d42 initial checkin
penk
parents:
diff changeset
    44
    documentation to be added.
8a3828774d42 initial checkin
penk
parents:
diff changeset
    45
8a3828774d42 initial checkin
penk
parents:
diff changeset
    46
    [author:]
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
    47
	Martin Walser (martin@vercingetorix)
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
    48
8a3828774d42 initial checkin
penk
parents:
diff changeset
    49
    [instance variables:]
8a3828774d42 initial checkin
penk
parents:
diff changeset
    50
8a3828774d42 initial checkin
penk
parents:
diff changeset
    51
    [class variables:]
8a3828774d42 initial checkin
penk
parents:
diff changeset
    52
8a3828774d42 initial checkin
penk
parents:
diff changeset
    53
    [see also:]
8a3828774d42 initial checkin
penk
parents:
diff changeset
    54
8a3828774d42 initial checkin
penk
parents:
diff changeset
    55
"
8a3828774d42 initial checkin
penk
parents:
diff changeset
    56
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
    57
8a3828774d42 initial checkin
penk
parents:
diff changeset
    58
examples
8a3828774d42 initial checkin
penk
parents:
diff changeset
    59
"
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
    60
								[exBegin]
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
    61
    FileDialog open
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
    62
								[exEnd]
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
    63
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
    64
								[exBegin]
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
    65
    FileDialog
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
    66
	requestFileName:'enter a fileName:'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
    67
	default:''
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
    68
	version:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
    69
	ifFail:['none']
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
    70
	pattern:'*.conf'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
    71
	fromDirectory:'/etc'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
    72
	whenBoxCreatedEvaluate:nil.
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
    73
								[exEnd]
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
    74
								[exBegin]
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
    75
    |fd|
8a3828774d42 initial checkin
penk
parents:
diff changeset
    76
8a3828774d42 initial checkin
penk
parents:
diff changeset
    77
    fd := FileDialog new.
8a3828774d42 initial checkin
penk
parents:
diff changeset
    78
    fd multipleSelect:true.
8a3828774d42 initial checkin
penk
parents:
diff changeset
    79
    fd open
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
    80
								[exEnd]
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
    81
"
8a3828774d42 initial checkin
penk
parents:
diff changeset
    82
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
    83
8a3828774d42 initial checkin
penk
parents:
diff changeset
    84
todo
8a3828774d42 initial checkin
penk
parents:
diff changeset
    85
"
8a3828774d42 initial checkin
penk
parents:
diff changeset
    86
    - make the filedialog windows like f
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
    87
      filename entry field shows only the filename not the whole directory
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
    88
      the tree allways starts in currrent directory
8a3828774d42 initial checkin
penk
parents:
diff changeset
    89
      the parent tree is shown in a compobox where the perents are selectable
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
    90
    - do not expand the ~ or relative pathnames to absolute pathnames
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
    91
"
8a3828774d42 initial checkin
penk
parents:
diff changeset
    92
! !
8a3828774d42 initial checkin
penk
parents:
diff changeset
    93
8a3828774d42 initial checkin
penk
parents:
diff changeset
    94
!FileDialogV2 class methodsFor:'instance creation'!
8a3828774d42 initial checkin
penk
parents:
diff changeset
    95
8a3828774d42 initial checkin
penk
parents:
diff changeset
    96
requestDirectoryName:title default:aFileName ifFail:failBlock
8a3828774d42 initial checkin
penk
parents:
diff changeset
    97
    "same as requestFileName, but only show directories"
8a3828774d42 initial checkin
penk
parents:
diff changeset
    98
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
    99
    ^ self
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   100
	requestDirectoryName:title
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   101
	default:aFileName
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   102
	ok:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   103
	abort:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   104
	version:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   105
	pattern:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   106
	fromDirectory:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   107
	ifFail:failBlock
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   108
	whenBoxCreatedEvaluate:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   109
	asLoadDialog:nil.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   110
8a3828774d42 initial checkin
penk
parents:
diff changeset
   111
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
   112
     FileDialogV2
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   113
	requestDirectoryName:'which directory ?'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   114
	default:Filename currentDirectory pathName
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   115
	ifFail:'none'
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   116
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
   117
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
   118
8a3828774d42 initial checkin
penk
parents:
diff changeset
   119
requestDirectoryName:title default:aFileName ok:okText abort:abortText ifFail:failBlock
8a3828774d42 initial checkin
penk
parents:
diff changeset
   120
    "same as requestFileName, but only show directories"
8a3828774d42 initial checkin
penk
parents:
diff changeset
   121
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   122
    ^ self
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   123
	requestDirectoryName:title
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   124
	default:aFileName
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   125
	ok:okText
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   126
	abort:abortText
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   127
	version:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   128
	pattern:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   129
	fromDirectory:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   130
	ifFail:failBlock
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   131
	whenBoxCreatedEvaluate:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   132
	asLoadDialog:nil.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   133
8a3828774d42 initial checkin
penk
parents:
diff changeset
   134
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
   135
     FileDialog
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   136
	requestDirectoryName:'which directory ?'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   137
	default:Filename currentDirectory pathName
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   138
	ok:'Yes'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   139
	abort:'No'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   140
	ifFail:'none'
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   141
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
   142
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
   143
8a3828774d42 initial checkin
penk
parents:
diff changeset
   144
requestDirectoryName:title default:aFileName ok:okText abort:abortText ifFail:failBlock acceptReturnAsOK:aBoolean
8a3828774d42 initial checkin
penk
parents:
diff changeset
   145
    "same as requestFileName, but only show directories"
8a3828774d42 initial checkin
penk
parents:
diff changeset
   146
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   147
    ^ self
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   148
	requestDirectoryName:title
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   149
	default:aFileName
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   150
	ok:okText
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   151
	abort:abortText
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   152
	version:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   153
	pattern:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   154
	fromDirectory:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   155
	ifFail:failBlock
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   156
	whenBoxCreatedEvaluate:[:box|box doubleClickAction:[:index|box doAccept]]
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   157
	asLoadDialog:nil.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   158
8a3828774d42 initial checkin
penk
parents:
diff changeset
   159
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
   160
     FileDialog
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   161
	requestDirectoryName:'which directory ?'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   162
	default:Filename currentDirectory pathName
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   163
	ok:'Yes'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   164
	abort:'No'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   165
	ifFail:'none'
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   166
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
   167
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
   168
8a3828774d42 initial checkin
penk
parents:
diff changeset
   169
requestDirectoryName:titleString default:aFileName ok:okText abort:abortText version:versionSymbol pattern:pattern fromDirectory:aDirectoryPath ifFail:failBlock whenBoxCreatedEvaluate:boxCreatedCallback asLoadDialog:aBoolean
8a3828774d42 initial checkin
penk
parents:
diff changeset
   170
    "same as requestFileName, but only show directories"
8a3828774d42 initial checkin
penk
parents:
diff changeset
   171
8a3828774d42 initial checkin
penk
parents:
diff changeset
   172
    |enteredFileName instance enteredFileNameString|
8a3828774d42 initial checkin
penk
parents:
diff changeset
   173
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   174
    instance := self
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   175
	startApplicationFor:titleString
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   176
	default:aFileName
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   177
	ok:okText
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   178
	abort:abortText
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   179
	ifFail:failBlock
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   180
	pattern:pattern
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   181
	fromDirectory:aDirectoryPath
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   182
	whenBoxCreatedEvaluate:boxCreatedCallback
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   183
	asLoadDialog:aBoolean
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   184
	viewFiles:false
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   185
	multipleSelect:false.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   186
8a3828774d42 initial checkin
penk
parents:
diff changeset
   187
    enteredFileNameString := instance result.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   188
    enteredFileNameString isNil ifTrue:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   189
	^ failBlock value
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   190
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
   191
    enteredFileName := enteredFileNameString asFilename.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   192
    enteredFileNameString := enteredFileName asString.
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   193
    (enteredFileName notNil
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   194
    and:[enteredFileNameString notEmpty]) ifTrue:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   195
	versionSymbol isNil ifTrue:[ ^ enteredFileNameString].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   196
	versionSymbol == #mustBeNew ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   197
	    "/ file may not exist
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   198
	    enteredFileName exists ifTrue:[^ ''].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   199
	].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   200
	versionSymbol == #new ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   201
	    "/ file may not exist
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   202
	    enteredFileName exists ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   203
		(Dialog confirm:(self classResources string:'''%1'' exists.\\Continue anyway ?' with:enteredFileNameString) withCRs)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   204
		    ifFalse:[^ ''].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   205
	    ].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   206
	].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   207
	versionSymbol == #mustBeOld ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   208
	    enteredFileName exists ifFalse:[^ ''].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   209
	].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   210
	versionSymbol == #old ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   211
	    "/ file may not exist
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   212
	    enteredFileName exists ifFalse:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   213
		(self confirm:(self classResources string:'''%1'' does not exist yet.\\Continue anyway ?' with:enteredFileNameString) withCRs)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   214
		ifFalse:[^ ''].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   215
	    ].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   216
	].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   217
	FileSelectionBox lastFileSelectionDirectory:(enteredFileNameString).
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   218
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
   219
    ^ enteredFileNameString
8a3828774d42 initial checkin
penk
parents:
diff changeset
   220
8a3828774d42 initial checkin
penk
parents:
diff changeset
   221
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
   222
     FileDialog
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   223
	requestDirectoryName:'which directory ?'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   224
	default:Filename currentDirectory pathName
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   225
	ifFail:nil
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   226
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
   227
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
   228
     FileDialog
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   229
	requestDirectoryName:'which directory ?'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   230
	default:Filename currentDirectory pathName
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   231
	ok:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   232
	abort:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   233
	version:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   234
	pattern:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   235
	fromDirectory:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   236
	ifFail:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   237
	whenBoxCreatedEvaluate:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   238
	asLoadDialog:true
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   239
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
   240
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
   241
8a3828774d42 initial checkin
penk
parents:
diff changeset
   242
requestDirectoryName:title default:aFileName ok:okText ifFail:failBlock
8a3828774d42 initial checkin
penk
parents:
diff changeset
   243
    "same as requestFileName, but only show directories"
8a3828774d42 initial checkin
penk
parents:
diff changeset
   244
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   245
    ^ self
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   246
	requestDirectoryName:title
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   247
	default:aFileName
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   248
	ok:okText
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   249
	abort:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   250
	version:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   251
	pattern:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   252
	fromDirectory:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   253
	ifFail:failBlock
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   254
	whenBoxCreatedEvaluate:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   255
	asLoadDialog:nil.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   256
8a3828774d42 initial checkin
penk
parents:
diff changeset
   257
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
   258
     FileDialogV2
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   259
	requestDirectoryName:'which directory ?'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   260
	default:Filename currentDirectory pathName
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   261
	ok:'Yes'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   262
	ifFail:'none'
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   263
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
   264
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
   265
8a3828774d42 initial checkin
penk
parents:
diff changeset
   266
requestFileName:titleString default:defaultName ok:okText abort:abortText pattern:pattern fromDirectory:aDirectoryPathOrNil whenBoxCreatedEvaluate:boxCreatedCallback
8a3828774d42 initial checkin
penk
parents:
diff changeset
   267
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   268
    ^ self
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   269
	requestFileName:titleString
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   270
	default:defaultName
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   271
	ok:okText
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   272
	abort:abortText
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   273
	version:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   274
	ifFail:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   275
	pattern:pattern
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   276
	fromDirectory:aDirectoryPathOrNil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   277
	whenBoxCreatedEvaluate:boxCreatedCallback
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   278
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
   279
8a3828774d42 initial checkin
penk
parents:
diff changeset
   280
requestFileName:titleString default:defaultName ok:okText abort:abortText version:versionSymbol ifFail:failBlock pattern:pattern fromDirectory:aDirectoryPath whenBoxCreatedEvaluate:boxCreatedCallback
8a3828774d42 initial checkin
penk
parents:
diff changeset
   281
    "launch a Dialog, which allows user to enter a filename.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   282
     The files presented initially are those in aDirectoryPathOrNil, or the
8a3828774d42 initial checkin
penk
parents:
diff changeset
   283
     last fileBox directory (default: current directory) (if a nil path is given).
8a3828774d42 initial checkin
penk
parents:
diff changeset
   284
     The box will show okText in its okButton, abortText in the abortButton.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   285
     The matchPattern is set to pattern initially.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   286
     Return the string, or nil if cancel was pressed
8a3828774d42 initial checkin
penk
parents:
diff changeset
   287
     The version argument allows validation of the files existance;
8a3828774d42 initial checkin
penk
parents:
diff changeset
   288
     it may be any of:
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   289
	#mustBeNew      - fail (return empty string) if the file exists
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   290
	#new            - confirm if the file exists
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   291
	#mustBeOld      - fail if the file does not exist
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   292
	#old            - confirm if the file does not exist
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   293
	#any (other)    - no validation
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   294
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
   295
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   296
    ^ self
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   297
	requestFileName:titleString
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   298
	default:defaultName
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   299
	ok:okText
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   300
	abort:abortText
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   301
	version:versionSymbol
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   302
	ifFail:failBlock
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   303
	pattern:pattern
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   304
	fromDirectory:aDirectoryPath
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   305
	whenBoxCreatedEvaluate:boxCreatedCallback
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   306
	asLoadDialog:nil
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   307
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
   308
8a3828774d42 initial checkin
penk
parents:
diff changeset
   309
requestFileName:titleString default:defaultName ok:okText abort:abortText version:versionSymbol ifFail:failBlock pattern:pattern fromDirectory:aDirectoryPath whenBoxCreatedEvaluate:boxCreatedCallback asLoadDialog:aBoolean
8a3828774d42 initial checkin
penk
parents:
diff changeset
   310
    "launch a Dialog, which allows user to enter a filename.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   311
     The files presented initially are those in aDirectoryPathOrNil, or the
8a3828774d42 initial checkin
penk
parents:
diff changeset
   312
     last fileBox directory (default: current directory) (if a nil path is given).
8a3828774d42 initial checkin
penk
parents:
diff changeset
   313
     The box will show okText in its okButton, abortText in the abortButton.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   314
     The matchPattern is set to pattern initially.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   315
     Return the string, or nil if cancel was pressed
8a3828774d42 initial checkin
penk
parents:
diff changeset
   316
     The version argument allows validation of the files existance;
8a3828774d42 initial checkin
penk
parents:
diff changeset
   317
     it may be any of:
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   318
	#mustBeNew      - fail (return empty string) if the file exists
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   319
	#new            - confirm if the file exists
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   320
	#mustBeOld      - fail if the file does not exist
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   321
	#old            - confirm if the file does not exist
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   322
	#any (other)    - no validation
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   323
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
   324
8a3828774d42 initial checkin
penk
parents:
diff changeset
   325
8a3828774d42 initial checkin
penk
parents:
diff changeset
   326
    | instance enteredFileName enteredFileNameString|
8a3828774d42 initial checkin
penk
parents:
diff changeset
   327
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   328
    instance := self
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   329
	startApplicationFor:titleString
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   330
	default:defaultName
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   331
	ok:okText
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   332
	abort:abortText
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   333
	ifFail:failBlock
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   334
	pattern:pattern
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   335
	fromDirectory:aDirectoryPath
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   336
	whenBoxCreatedEvaluate:boxCreatedCallback
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   337
	asLoadDialog:aBoolean
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   338
	viewFiles:true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   339
	multipleSelect:false.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   340
8a3828774d42 initial checkin
penk
parents:
diff changeset
   341
    enteredFileNameString := instance result.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   342
    (enteredFileNameString isNil or:[enteredFileNameString isEmpty]) ifTrue:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   343
	^ failBlock value
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   344
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
   345
    enteredFileName := enteredFileNameString asFilename.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   346
    enteredFileNameString := enteredFileName asString.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   347
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   348
    (enteredFileName notNil
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   349
    and:[enteredFileNameString notEmpty]) ifTrue:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   350
	FileSelectionBox lastFileSelectionDirectory:(enteredFileName directoryName).
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   351
	versionSymbol isNil ifTrue:[ ^ enteredFileNameString].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   352
	versionSymbol == #mustBeNew ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   353
	    "/ file may not exist
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   354
	    enteredFileName exists ifTrue:[^ ''].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   355
	].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   356
	versionSymbol == #new ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   357
	    "/ file may not exist
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   358
	    enteredFileName exists ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   359
		(Dialog confirm:(self classResources string:'''%1'' exists.\\Continue anyway ?' with:enteredFileNameString) withCRs)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   360
		    ifFalse:[^ ''].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   361
	    ].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   362
	].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   363
	versionSymbol == #mustBeOld ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   364
	    enteredFileName exists ifFalse:[^ ''].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   365
	].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   366
	versionSymbol == #old ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   367
	    "/ file may not exist
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   368
	    enteredFileName exists ifFalse:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   369
		(self confirm:(self classResources string:'''%1'' does not exist yet.\\Continue anyway ?' with:enteredFileNameString) withCRs)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   370
		ifFalse:[^ ''].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   371
	    ].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   372
	].
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   373
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
   374
    ^ enteredFileNameString
8a3828774d42 initial checkin
penk
parents:
diff changeset
   375
"
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   376
     FileDialog
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   377
	requestFileName:'enter a fileName:'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   378
	default:''
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   379
	ok:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   380
	abort:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   381
	version:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   382
	ifFail:['none']
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   383
	pattern:'*'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   384
	fromDirectory:Filename currentDirectory pathName
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   385
	whenBoxCreatedEvaluate:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   386
	asLoadDialog:true
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   387
"
8a3828774d42 initial checkin
penk
parents:
diff changeset
   388
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
   389
8a3828774d42 initial checkin
penk
parents:
diff changeset
   390
requestFileName:titleString default:defaultName version:versionSymbol ifFail:failBlock pattern:pattern fromDirectory:aDirectoryPathOrNil whenBoxCreatedEvaluate:boxCreatedCallback
8a3828774d42 initial checkin
penk
parents:
diff changeset
   391
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   392
    ^ self
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   393
	requestFileName:titleString
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   394
	default:defaultName
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   395
	ok:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   396
	abort:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   397
	version:versionSymbol
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   398
	ifFail:failBlock
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   399
	pattern:pattern
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   400
	fromDirectory:aDirectoryPathOrNil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   401
	whenBoxCreatedEvaluate:boxCreatedCallback
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   402
8a3828774d42 initial checkin
penk
parents:
diff changeset
   403
    "
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   404
     FileDialog
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   405
	requestFileName:'enter a fileName:'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   406
	default:''
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   407
	version:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   408
	ifFail:['none']
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   409
	pattern:'*.conf'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   410
	fromDirectory:Filename currentDirectory pathName
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   411
	whenBoxCreatedEvaluate:nil.
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   412
     Dialog
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   413
	requestFileName:'enter a fileName:'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   414
	default:''
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   415
	version:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   416
	ifFail:['none']
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   417
	pattern:'*.conf'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   418
	fromDirectory:Filename currentDirectory pathName
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   419
	whenBoxCreatedEvaluate:nil
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   420
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
   421
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
   422
     FileDialog
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   423
	requestFileName:'enter a fileName:'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   424
	default:''
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   425
	version:#old
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   426
	ifFail:['none']
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   427
	pattern:'*.conf'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   428
	fromDirectory:Filename currentDirectory pathName
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   429
	whenBoxCreatedEvaluate:nil
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   430
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
   431
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
   432
     FileDialog
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   433
	requestFileName:'enter a fileName:'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   434
	default:''
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   435
	version:#mustBeNew
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   436
	ifFail:['none']
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   437
	pattern:'*.conf'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   438
	fromDirectory:Filename currentDirectory pathName
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   439
	whenBoxCreatedEvaluate:nil
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   440
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
   441
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
   442
8a3828774d42 initial checkin
penk
parents:
diff changeset
   443
requestFileNames:titleString default:defaultName ok:okText abort:abortText ifFail:failBlock pattern:pattern fromDirectory:aDirectoryPath whenBoxCreatedEvaluate:boxCreatedCallback
8a3828774d42 initial checkin
penk
parents:
diff changeset
   444
    "launch a Dialog, which allows user to enter a filename.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   445
     The files presented initially are those in aDirectoryPathOrNil, or the
8a3828774d42 initial checkin
penk
parents:
diff changeset
   446
     last fileBox directory (default: current directory) (if a nil path is given).
8a3828774d42 initial checkin
penk
parents:
diff changeset
   447
     The box will show okText in its okButton, abortText in the abortButton.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   448
     The matchPattern is set to pattern initially.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   449
     Return all selected Filenames as filenames in a collection, or nil if cancel was pressed
8a3828774d42 initial checkin
penk
parents:
diff changeset
   450
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
   451
8a3828774d42 initial checkin
penk
parents:
diff changeset
   452
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   453
    ^ self
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   454
	requestFileNames:titleString
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   455
	default:defaultName
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   456
	ok:okText
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   457
	abort:abortText
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   458
	ifFail:failBlock
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   459
	pattern:pattern
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   460
	fromDirectory:aDirectoryPath
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   461
	whenBoxCreatedEvaluate:boxCreatedCallback
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   462
	asLoadDialog:nil.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   463
8a3828774d42 initial checkin
penk
parents:
diff changeset
   464
8a3828774d42 initial checkin
penk
parents:
diff changeset
   465
"
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   466
     FileDialogV2
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   467
	requestFileNames:'enter a fileName:'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   468
	default:''
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   469
	ok:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   470
	abort:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   471
	ifFail:['none']
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   472
	pattern:'*.conf'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   473
	fromDirectory:Filename currentDirectory pathName
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   474
	whenBoxCreatedEvaluate:nil.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   475
"
8a3828774d42 initial checkin
penk
parents:
diff changeset
   476
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
   477
8a3828774d42 initial checkin
penk
parents:
diff changeset
   478
requestFileNames:titleString default:defaultName ok:okText abort:abortText ifFail:failBlock pattern:pattern fromDirectory:aDirectoryPath whenBoxCreatedEvaluate:boxCreatedCallback asLoadDialog:asLoadDialog
8a3828774d42 initial checkin
penk
parents:
diff changeset
   479
    "launch a Dialog, which allows user to enter a filename.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   480
     The files presented initially are those in aDirectoryPathOrNil, or the
8a3828774d42 initial checkin
penk
parents:
diff changeset
   481
     last fileBox directory (default: current directory) (if a nil path is given).
8a3828774d42 initial checkin
penk
parents:
diff changeset
   482
     The box will show okText in its okButton, abortText in the abortButton.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   483
     The matchPattern is set to pattern initially.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   484
     Return all selected Filenames as filenames in a collection, or nil if cancel was pressed
8a3828774d42 initial checkin
penk
parents:
diff changeset
   485
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
   486
8a3828774d42 initial checkin
penk
parents:
diff changeset
   487
8a3828774d42 initial checkin
penk
parents:
diff changeset
   488
    | instance enteredFileNames lastDirectory|
8a3828774d42 initial checkin
penk
parents:
diff changeset
   489
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   490
    instance := self
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   491
	startApplicationFor:titleString
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   492
	default:defaultName
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   493
	ok:okText
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   494
	abort:abortText
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   495
	ifFail:failBlock
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   496
	pattern:pattern
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   497
	fromDirectory:aDirectoryPath
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   498
	whenBoxCreatedEvaluate:boxCreatedCallback
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   499
	asLoadDialog:asLoadDialog
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   500
	viewFiles:true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   501
	multipleSelect:true.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   502
8a3828774d42 initial checkin
penk
parents:
diff changeset
   503
    enteredFileNames := instance currentSelectedFiles.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   504
    (enteredFileNames isEmpty or:[instance result isNil]) ifTrue:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   505
	^ failBlock value
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   506
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
   507
    lastDirectory := enteredFileNames first.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   508
    lastDirectory := lastDirectory isFilename ifTrue:[lastDirectory directory] ifFalse:[lastDirectory].
8a3828774d42 initial checkin
penk
parents:
diff changeset
   509
    FileSelectionBox lastFileSelectionDirectory:(lastDirectory directoryName).
8a3828774d42 initial checkin
penk
parents:
diff changeset
   510
    ^ enteredFileNames
8a3828774d42 initial checkin
penk
parents:
diff changeset
   511
8a3828774d42 initial checkin
penk
parents:
diff changeset
   512
"
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   513
     FileDialog
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   514
	requestFileNames:'enter a fileName:'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   515
	default:''
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   516
	ok:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   517
	abort:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   518
	ifFail:['none']
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   519
	pattern:'*.conf'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   520
	fromDirectory:Filename currentDirectory pathName
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   521
	whenBoxCreatedEvaluate:nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   522
	asLoadDialog:true.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   523
"
8a3828774d42 initial checkin
penk
parents:
diff changeset
   524
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
   525
8a3828774d42 initial checkin
penk
parents:
diff changeset
   526
startApplicationFor:titleString default:initialDefaultFileNameArg ok:okTextArg abort:abortTextArg ifFail:failBlock pattern:pattern fromDirectory:aDirectoryPath whenBoxCreatedEvaluate:boxCreatedCallback asLoadDialog:asLoadDialog viewFiles:viewFiles multipleSelect:multipleSelect
8a3828774d42 initial checkin
penk
parents:
diff changeset
   527
    "launch a Dialog, which allows user to enter a filename.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   528
     The files presented initially are those in aDirectoryPathOrNil, or the
8a3828774d42 initial checkin
penk
parents:
diff changeset
   529
     last fileBox directory (default: current directory) (if a nil path is given).
8a3828774d42 initial checkin
penk
parents:
diff changeset
   530
     The box will show okText in its okButton, abortText in the abortButton.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   531
     The matchPattern is set to pattern initially.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   532
     Return the string, or nil if cancel was pressed
8a3828774d42 initial checkin
penk
parents:
diff changeset
   533
     The version argument allows validation of the files existance;
8a3828774d42 initial checkin
penk
parents:
diff changeset
   534
     it may be any of:
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   535
	#mustBeNew      - fail (return empty string) if the file exists
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   536
	#new            - confirm if the file exists
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   537
	#mustBeOld      - fail if the file does not exist
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   538
	#old            - confirm if the file does not exist
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   539
	#any (other)    - no validation
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   540
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
   541
8a3828774d42 initial checkin
penk
parents:
diff changeset
   542
8a3828774d42 initial checkin
penk
parents:
diff changeset
   543
    |defaultDir instance defaultFile okText abortText initialDefaultFileName|
8a3828774d42 initial checkin
penk
parents:
diff changeset
   544
8a3828774d42 initial checkin
penk
parents:
diff changeset
   545
    initialDefaultFileName := initialDefaultFileNameArg.
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   546
    initialDefaultFileName notNil ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   547
	initialDefaultFileName := initialDefaultFileName asFilename
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   548
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
   549
8a3828774d42 initial checkin
penk
parents:
diff changeset
   550
    okText := okTextArg.
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   551
    okText isNil ifTrue:[ okText := self resources string:'OK' ].
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   552
    abortText := abortTextArg.
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   553
    abortText isNil ifTrue:[ abortText := self resources string:'Cancel' ].
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   554
8a3828774d42 initial checkin
penk
parents:
diff changeset
   555
    defaultDir := aDirectoryPath.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   556
"/    defaultDir isNil ifTrue:[
8a3828774d42 initial checkin
penk
parents:
diff changeset
   557
"/        (initialDefaultFileName size > 0 and:[initialDefaultFileName exists]) ifTrue:[
8a3828774d42 initial checkin
penk
parents:
diff changeset
   558
"/            defaultDir := initialDefaultFileName asAbsoluteFilename directory.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   559
"/        ] ifFalse:[
8a3828774d42 initial checkin
penk
parents:
diff changeset
   560
"/            defaultDir := FileSelectionBox lastFileSelectionDirectory.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   561
"/            defaultDir isNil ifTrue:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   562
"/                defaultDir := Filename currentDirectory asAbsoluteFilename.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   563
"/            ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
   564
"/            defaultDir asFilename exists ifFalse:[
8a3828774d42 initial checkin
penk
parents:
diff changeset
   565
"/                defaultDir := nil
8a3828774d42 initial checkin
penk
parents:
diff changeset
   566
"/            ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
   567
"/        ]
8a3828774d42 initial checkin
penk
parents:
diff changeset
   568
"/    ].
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   569
    (initialDefaultFileName notNil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   570
    and:[initialDefaultFileName isAbsolute
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   571
    and:[true "initialDefaultFileName asFilename exists"]]) ifTrue:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   572
	defaultDir := initialDefaultFileName asAbsoluteFilename.
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   573
	viewFiles ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   574
	    defaultDir := defaultDir directory.
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   575
	].
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   576
    ] ifFalse:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   577
	defaultDir isNil ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   578
	    defaultDir := FileSelectionBox lastFileSelectionDirectory.
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   579
	    defaultDir isNil ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   580
		defaultDir := Filename currentDirectory asAbsoluteFilename.
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   581
	    ].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   582
	    defaultDir asFilename exists ifFalse:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   583
		defaultDir := nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   584
	    ].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   585
	]
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   586
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
   587
    defaultDir := defaultDir asFilename asAbsoluteFilename.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   588
"/    [defaultDir exists] whileFalse:[
8a3828774d42 initial checkin
penk
parents:
diff changeset
   589
"/        defaultDir := defaultDir directory.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   590
"/    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
   591
8a3828774d42 initial checkin
penk
parents:
diff changeset
   592
    viewFiles ifFalse:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   593
	defaultFile := defaultDir asAbsoluteFilename.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   594
    ] ifTrue:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   595
	(initialDefaultFileName notNil and:[initialDefaultFileName withoutSuffix baseName ~= '*']) ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   596
	    defaultFile := defaultDir construct:initialDefaultFileName baseName.
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   597
	].
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   598
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
   599
    defaultFile isNil ifTrue:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   600
	defaultFile := defaultDir.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   601
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
   602
8a3828774d42 initial checkin
penk
parents:
diff changeset
   603
    instance := self new.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   604
    defaultDir notNil ifTrue:[instance directory:defaultDir].
8a3828774d42 initial checkin
penk
parents:
diff changeset
   605
    instance multipleSelect:multipleSelect ? false.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   606
    instance startFilename:defaultFile.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   607
    instance pattern:((pattern isNil or:[pattern isEmpty]) ifTrue:['*'] ifFalse:[pattern]).
8a3828774d42 initial checkin
penk
parents:
diff changeset
   608
    instance initialText:titleString.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   609
    instance okLabelHolder value:okText.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   610
    instance cancelLabelHolder value:abortText.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   611
8a3828774d42 initial checkin
penk
parents:
diff changeset
   612
    instance beLoadDialog:asLoadDialog ? false.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   613
    instance viewFiles:viewFiles ? true.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   614
    self setDoubleClickActionFor:instance.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   615
    instance allButOpenInterface:#windowSpec.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   616
    boxCreatedCallback notNil ifTrue:[boxCreatedCallback value:instance].
8a3828774d42 initial checkin
penk
parents:
diff changeset
   617
8a3828774d42 initial checkin
penk
parents:
diff changeset
   618
    Dialog aboutToOpenBoxNotificationSignal raiseRequestWith:instance.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   619
8a3828774d42 initial checkin
penk
parents:
diff changeset
   620
    instance openWindowModal.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   621
    ^ instance
8a3828774d42 initial checkin
penk
parents:
diff changeset
   622
! !
8a3828774d42 initial checkin
penk
parents:
diff changeset
   623
8a3828774d42 initial checkin
penk
parents:
diff changeset
   624
!FileDialogV2 class methodsFor:'accessing'!
8a3828774d42 initial checkin
penk
parents:
diff changeset
   625
8a3828774d42 initial checkin
penk
parents:
diff changeset
   626
setDoubleClickActionFor:instance
8a3828774d42 initial checkin
penk
parents:
diff changeset
   627
8a3828774d42 initial checkin
penk
parents:
diff changeset
   628
    instance doubleClickAction:[:anIndex|
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   629
	| item |
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   630
	item := instance contentsBrowser browserItemList at:anIndex ifAbsent:nil.
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   631
	item notNil ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   632
	    ((instance viewFiles and:[item isDirectory not])
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   633
	    " or:[(instance viewFiles not and:[item isDirectory])] " ) ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   634
		instance doAccept.
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   635
	    ]
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   636
	]
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   637
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
   638
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
   639
8a3828774d42 initial checkin
penk
parents:
diff changeset
   640
viewDetailsIcon
8a3828774d42 initial checkin
penk
parents:
diff changeset
   641
    ^ FileBrowserV2 viewDetailsIcon
8a3828774d42 initial checkin
penk
parents:
diff changeset
   642
! !
8a3828774d42 initial checkin
penk
parents:
diff changeset
   643
5966
a677b08c76c0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5871
diff changeset
   644
!FileDialogV2 class methodsFor:'help specs'!
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   645
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   646
helpSpec
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   647
    <resource: #help>
8a3828774d42 initial checkin
penk
parents:
diff changeset
   648
6098
8b70ed799a5e bookmarks
Claus Gittinger <cg@exept.de>
parents: 6087
diff changeset
   649
    |spec|
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   650
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   651
    spec := AbstractFileBrowser helpSpec addPairsFrom:#(
5966
a677b08c76c0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5871
diff changeset
   652
a677b08c76c0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5871
diff changeset
   653
#fileBrowse
a677b08c76c0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5871
diff changeset
   654
'Browse'
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   655
6098
8b70ed799a5e bookmarks
Claus Gittinger <cg@exept.de>
parents: 6087
diff changeset
   656
).
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   657
6098
8b70ed799a5e bookmarks
Claus Gittinger <cg@exept.de>
parents: 6087
diff changeset
   658
"/    hist := self directoryHistory.
8b70ed799a5e bookmarks
Claus Gittinger <cg@exept.de>
parents: 6087
diff changeset
   659
"/    hist notNil ifTrue:[
8b70ed799a5e bookmarks
Claus Gittinger <cg@exept.de>
parents: 6087
diff changeset
   660
"/        hist canForward ifTrue:[
8b70ed799a5e bookmarks
Claus Gittinger <cg@exept.de>
parents: 6087
diff changeset
   661
"/            spec at:#directoryForward put:(self classResources string:'Forward to: %1' with:hist nextForwardItem).
8b70ed799a5e bookmarks
Claus Gittinger <cg@exept.de>
parents: 6087
diff changeset
   662
"/        ].
8b70ed799a5e bookmarks
Claus Gittinger <cg@exept.de>
parents: 6087
diff changeset
   663
"/        hist canBackward ifTrue:[
8b70ed799a5e bookmarks
Claus Gittinger <cg@exept.de>
parents: 6087
diff changeset
   664
"/            spec at:#directoryBack put:(self classResources string:'Back to: %1' with:hist nextBackwardItem).
8b70ed799a5e bookmarks
Claus Gittinger <cg@exept.de>
parents: 6087
diff changeset
   665
"/        ].
8b70ed799a5e bookmarks
Claus Gittinger <cg@exept.de>
parents: 6087
diff changeset
   666
"/    ].
8b70ed799a5e bookmarks
Claus Gittinger <cg@exept.de>
parents: 6087
diff changeset
   667
    ^ spec.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   668
6098
8b70ed799a5e bookmarks
Claus Gittinger <cg@exept.de>
parents: 6087
diff changeset
   669
    "
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   670
     self helpSpec
5966
a677b08c76c0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5871
diff changeset
   671
    "
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   672
! !
8a3828774d42 initial checkin
penk
parents:
diff changeset
   673
8a3828774d42 initial checkin
penk
parents:
diff changeset
   674
!FileDialogV2 class methodsFor:'interface specs'!
8a3828774d42 initial checkin
penk
parents:
diff changeset
   675
8a3828774d42 initial checkin
penk
parents:
diff changeset
   676
windowSpec
8a3828774d42 initial checkin
penk
parents:
diff changeset
   677
    "This resource specification was automatically generated
8a3828774d42 initial checkin
penk
parents:
diff changeset
   678
     by the UIPainter of ST/X."
8a3828774d42 initial checkin
penk
parents:
diff changeset
   679
8a3828774d42 initial checkin
penk
parents:
diff changeset
   680
    "Do not manually edit this!! If it is corrupted,
8a3828774d42 initial checkin
penk
parents:
diff changeset
   681
     the UIPainter may not be able to read the specification."
8a3828774d42 initial checkin
penk
parents:
diff changeset
   682
8a3828774d42 initial checkin
penk
parents:
diff changeset
   683
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
   684
     UIPainter new openOnClass:FileDialogV2 andSelector:#windowSpec
8a3828774d42 initial checkin
penk
parents:
diff changeset
   685
     FileDialogV2 new openInterface:#windowSpec
8a3828774d42 initial checkin
penk
parents:
diff changeset
   686
     FileDialogV2 open
8a3828774d42 initial checkin
penk
parents:
diff changeset
   687
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
   688
8a3828774d42 initial checkin
penk
parents:
diff changeset
   689
    <resource: #canvas>
8a3828774d42 initial checkin
penk
parents:
diff changeset
   690
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   691
    ^
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   692
     #(FullSpec
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   693
	name: windowSpec
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   694
	window:
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   695
       (WindowSpec
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   696
	  label: 'FileDialogV2'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   697
	  name: 'FileDialogV2'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   698
	  min: (Point 10 10)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   699
	  max: (Point 1024 768)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   700
	  bounds: (Rectangle 0 0 400 400)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   701
	)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   702
	component:
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   703
       (SpecCollection
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   704
	  collection: (
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   705
	   (ViewSpec
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   706
	      name: 'FilePart'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   707
	      layout: (LayoutFrame 0 0.0 0 0.0 0 1.0 -32 1.0)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   708
	      component:
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   709
	     (SpecCollection
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   710
		collection: (
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   711
		 (MenuPanelSpec
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   712
		    name: 'ToolBar1'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   713
		    layout: (LayoutFrame 0 0.0 0 0.0 0 1.0 32 0)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   714
		    tabable: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   715
		    menu: toolBarMenu
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   716
		    textDefault: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   717
		  )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   718
		 (SubCanvasSpec
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   719
		    name: 'DirectoryContentsBrowser'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   720
		    layout: (LayoutFrame 0 0.0 57 0 0 1.0 -30 1)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   721
		    tabable: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   722
		    hasHorizontalScrollBar: false
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   723
		    hasVerticalScrollBar: false
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   724
		    majorKey: DirectoryContentsBrowser
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   725
		    createNewApplication: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   726
		    createNewBuilder: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   727
		    postBuildCallback: postBuildTreeBrowser:
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   728
		  )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   729
		 (VariableHorizontalPanelSpec
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   730
		    name: 'VariableHorizontalPanel1'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   731
		    layout: (LayoutFrame 0 0 32 0 0 1 57 0)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   732
		    level: 1
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   733
		    showHandle: false
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   734
		    barLevel: 0
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   735
		    component:
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   736
		   (SpecCollection
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   737
		      collection: (
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   738
		       (ViewSpec
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   739
			  name: 'Box1'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   740
			)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   741
		       (ViewSpec
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   742
			  name: 'Box2'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   743
			  component:
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   744
			 (SpecCollection
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   745
			    collection: (
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   746
			     (LabelSpec
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   747
				label: 'Filter:'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   748
				name: 'FilterLabel'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   749
				layout: (LayoutFrame 8 0 2 0 59 0 -2 1)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   750
				translateLabel: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   751
				adjust: right
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   752
			      )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   753
			     (InputFieldSpec
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   754
				name: 'FilterEntryField'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   755
				layout: (LayoutFrame 60 0 -22 1 -2 1 -2 1)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   756
				model: filterHolder
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   757
				immediateAccept: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   758
				acceptOnReturn: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   759
				acceptOnTab: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   760
				acceptOnLostFocus: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   761
				acceptOnPointerLeave: false
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   762
				postBuildCallback: postBuildFilterField:
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   763
			      )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   764
			     )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   765
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   766
			  )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   767
			)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   768
		       )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   769
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   770
		    )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   771
		    handles: (Any 0.5 1.0)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   772
		  )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   773
		 (LabelSpec
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   774
		    label: 'Filename:'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   775
		    name: 'FilenameLabel'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   776
		    layout: (LayoutFrame 3 0 -21 1 73 0 -1 1)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   777
		    translateLabel: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   778
		    labelChannel: filenameLabelHolder
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   779
		    adjust: left
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   780
		  )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   781
		 (FilenameInputFieldSpec
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   782
		    name: 'FilenameEntryField'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   783
		    layout: (LayoutFrame 70 0 -21 1 -4 1 -1 1)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   784
		    tabable: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   785
		    model: filenameHolder
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   786
		    immediateAccept: false
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   787
		    acceptOnPointerLeave: false
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   788
		    hasKeyboardFocusInitially: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   789
		    postBuildCallback: postBuildFileNameField:
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   790
		  )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   791
		 )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   792
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   793
	      )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   794
	    )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   795
	   (HorizontalPanelViewSpec
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   796
	      name: 'ButtonPanel'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   797
	      layout: (LayoutFrame 0 0.0 -32 1 0 1 0 1)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   798
	      visibilityChannel: buttonPanelVisibleHolder
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   799
	      horizontalLayout: fitSpace
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   800
	      verticalLayout: center
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   801
	      horizontalSpace: 3
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   802
	      verticalSpace: 3
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   803
	      reverseOrderIfOKAtLeft: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   804
	      component:
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   805
	     (SpecCollection
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   806
		collection: (
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   807
		 (ActionButtonSpec
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   808
		    label: 'Cancel'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   809
		    name: 'cancelButton'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   810
		    translateLabel: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   811
		    labelChannel: cancelLabelHolder
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   812
		    tabable: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   813
		    model: doCancel
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   814
		    extent: (Point 129 22)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   815
		  )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   816
		 (ActionButtonSpec
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   817
		    label: 'Append'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   818
		    name: 'appendButton'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   819
		    visibilityChannel: appendButtonVisibleHolder
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   820
		    translateLabel: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   821
		    labelChannel: appendLabelHolder
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   822
		    tabable: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   823
		    model: appendPressed
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   824
		    extent: (Point 129 22)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   825
		  )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   826
		 (ActionButtonSpec
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   827
		    label: 'OK'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   828
		    name: 'okButton'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   829
		    translateLabel: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   830
		    labelChannel: okLabelHolder
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   831
		    tabable: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   832
		    model: okPressed
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   833
		    isDefault: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   834
		    extent: (Point 130 22)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   835
		  )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   836
		 )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   837
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   838
	      )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   839
	    )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   840
	   )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   841
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   842
	)
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   843
      )
8a3828774d42 initial checkin
penk
parents:
diff changeset
   844
! !
8a3828774d42 initial checkin
penk
parents:
diff changeset
   845
8a3828774d42 initial checkin
penk
parents:
diff changeset
   846
!FileDialogV2 class methodsFor:'menu specs'!
8a3828774d42 initial checkin
penk
parents:
diff changeset
   847
8a3828774d42 initial checkin
penk
parents:
diff changeset
   848
toolBarMenu
8a3828774d42 initial checkin
penk
parents:
diff changeset
   849
    "This resource specification was automatically generated
8a3828774d42 initial checkin
penk
parents:
diff changeset
   850
     by the MenuEditor of ST/X."
8a3828774d42 initial checkin
penk
parents:
diff changeset
   851
8a3828774d42 initial checkin
penk
parents:
diff changeset
   852
    "Do not manually edit this!! If it is corrupted,
8a3828774d42 initial checkin
penk
parents:
diff changeset
   853
     the MenuEditor may not be able to read the specification."
8a3828774d42 initial checkin
penk
parents:
diff changeset
   854
8a3828774d42 initial checkin
penk
parents:
diff changeset
   855
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
   856
     MenuEditor new openOnClass:FileDialogV2 andSelector:#toolBarMenu
8a3828774d42 initial checkin
penk
parents:
diff changeset
   857
     (Menu new fromLiteralArrayEncoding:(FileDialogV2 toolBarMenu)) startUp
8a3828774d42 initial checkin
penk
parents:
diff changeset
   858
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
   859
8a3828774d42 initial checkin
penk
parents:
diff changeset
   860
    <resource: #menu>
8a3828774d42 initial checkin
penk
parents:
diff changeset
   861
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   862
    ^
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   863
     #(Menu
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   864
	(
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   865
	 (MenuItem
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   866
	    activeHelpKey: directoryBack
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   867
	    enabled: enableBack
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   868
	    label: 'Back'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   869
	    itemValue: doBack
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   870
	    translateLabel: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   871
	    isButton: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   872
	    submenuChannel: menuDirHistoryBack
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   873
	    labelImage: (ResourceRetriever ToolbarIconLibrary historyBackIcon)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   874
	    keepLinkedMenu: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   875
	  )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   876
	 (MenuItem
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   877
	    activeHelpKey: directoryForward
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   878
	    enabled: enableForward
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   879
	    label: 'Forward'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   880
	    itemValue: doForward
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   881
	    translateLabel: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   882
	    isButton: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   883
	    submenuChannel: menuDirHistoryForward
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   884
	    labelImage: (ResourceRetriever ToolbarIconLibrary historyForwardIcon)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   885
	    keepLinkedMenu: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   886
	  )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   887
	 (MenuItem
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   888
	    label: '-'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   889
	  )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   890
	 (MenuItem
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   891
	    activeHelpKey: directoryUp
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   892
	    enabled: enableDirectoryUp
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   893
	    label: 'DirectoryUp'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   894
	    itemValue: doGoDirectoryUp
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   895
	    translateLabel: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   896
	    isButton: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   897
	    labelImage: (ResourceRetriever ToolbarIconLibrary directoryUpIcon)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   898
	  )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   899
	 (MenuItem
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   900
	    label: ''
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   901
	  )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   902
	 (MenuItem
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   903
	    activeHelpKey: fileHome
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   904
	    enabled: enableHome
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   905
	    label: 'Home'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   906
	    itemValue: doGotoHomeDirectory
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   907
	    translateLabel: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   908
	    isButton: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   909
	    labelImage: (ResourceRetriever ToolbarIconLibrary homeIcon)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   910
	  )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   911
	 (MenuItem
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   912
	    activeHelpKey: fileGotoBookmark
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   913
	    label: 'Bookmarks'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   914
	    translateLabel: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   915
	    isButton: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   916
	    submenuChannel: gotoBookmarksMenuSpec
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   917
	    labelImage: (ResourceRetriever ToolbarIconLibrary directoryBookmarksIcon)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   918
	  )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   919
	 (MenuItem
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   920
	    label: '-'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   921
	    isVisible: browseVisibleHolder
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   922
	  )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   923
	 (MenuItem
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   924
	    activeHelpKey: fileBrowse
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   925
	    label: 'Browse'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   926
	    itemValue: doBrowseDirectory
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   927
	    translateLabel: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   928
	    isButton: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   929
	    isVisible: browseVisibleHolder
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   930
	    labelImage: (ResourceRetriever ToolbarIconLibrary fileBrowser24x24Icon)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   931
	  )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   932
	 (MenuItem
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   933
	    label: '-'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   934
	  )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   935
	 (MenuItem
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   936
	    label: 'New Directory...'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   937
	    itemValue: newDirectory
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   938
	    translateLabel: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   939
	    isButton: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   940
	    isVisible: newDirectoryVisibilityHolder
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   941
	    labelImage: (ResourceRetriever ToolbarIconLibrary newDirectoryIcon)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   942
	  )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   943
	 (MenuItem
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   944
	    label: 'viewDetails'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   945
	    translateLabel: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   946
	    isButton: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   947
	    startGroup: right
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   948
	    hideMenuOnActivated: false
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   949
	    indication: viewDetails
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   950
	    labelImage: (ResourceRetriever ToolbarIconLibrary viewDetailsIcon)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   951
	  )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   952
	 (MenuItem
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   953
	    activeHelpKey: toggleDetails
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   954
	    label: 'viewDetails'
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   955
	    translateLabel: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   956
	    isButton: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   957
	    startGroup: right
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   958
	    isVisible: false
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   959
	    indication: viewDetails
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   960
	    submenuChannel: viewDetailsMenuSpec
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   961
	    labelImage: (ResourceRetriever ToolbarIconLibrary viewDetailsIcon)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   962
	  )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   963
	 (MenuItem
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   964
	    activeHelpKey: selectDetails
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   965
	    label: ''
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   966
	    isButton: true
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   967
	    startGroup: right
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   968
	    submenuChannel: viewDetailsMenuSpec
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   969
	    labelImage: (ResourceRetriever ToolbarIconLibrary empty1x20Icon)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   970
	  )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   971
	 )
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   972
	nil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
   973
	nil
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   974
      )
7568
b1d31b3b9499 share the bookmarks-menu with the fileBrowser.
Claus Gittinger <cg@exept.de>
parents: 6122
diff changeset
   975
b1d31b3b9499 share the bookmarks-menu with the fileBrowser.
Claus Gittinger <cg@exept.de>
parents: 6122
diff changeset
   976
    "Modified: / 06-12-2006 / 12:08:39 / cg"
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
   977
! !
8a3828774d42 initial checkin
penk
parents:
diff changeset
   978
8a3828774d42 initial checkin
penk
parents:
diff changeset
   979
!FileDialogV2 methodsFor:'accessing'!
8a3828774d42 initial checkin
penk
parents:
diff changeset
   980
8a3828774d42 initial checkin
penk
parents:
diff changeset
   981
currentSelectedFiles
8a3828774d42 initial checkin
penk
parents:
diff changeset
   982
8a3828774d42 initial checkin
penk
parents:
diff changeset
   983
    | selectedFiles|
8a3828774d42 initial checkin
penk
parents:
diff changeset
   984
8a3828774d42 initial checkin
penk
parents:
diff changeset
   985
    selectedFiles := contentsBrowser currentFileNameHolder value.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   986
    ^ selectedFiles select:[:aFile| aFile isDirectory not].
8a3828774d42 initial checkin
penk
parents:
diff changeset
   987
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
   988
8a3828774d42 initial checkin
penk
parents:
diff changeset
   989
directory
8a3828774d42 initial checkin
penk
parents:
diff changeset
   990
    "return the value of the instance variable 'directory' (automatically generated)"
8a3828774d42 initial checkin
penk
parents:
diff changeset
   991
8a3828774d42 initial checkin
penk
parents:
diff changeset
   992
    ^ directory
8a3828774d42 initial checkin
penk
parents:
diff changeset
   993
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
   994
8a3828774d42 initial checkin
penk
parents:
diff changeset
   995
directory:something
8a3828774d42 initial checkin
penk
parents:
diff changeset
   996
    "set the value of the instance variable 'directory' (automatically generated)"
8a3828774d42 initial checkin
penk
parents:
diff changeset
   997
8a3828774d42 initial checkin
penk
parents:
diff changeset
   998
    directory := something.
8a3828774d42 initial checkin
penk
parents:
diff changeset
   999
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1000
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1001
initialText
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1002
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1003
    initialText isNil ifTrue:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1004
	^ resources string:'File Dialog'.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1005
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1006
    ^ resources string:initialText
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1007
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1008
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1009
initialText:something
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1010
    "set the value of the instance variable 'initialText' (automatically generated)"
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1011
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1012
    initialText := something.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1013
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1014
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1015
pattern
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1016
    "return the value of the instance variable 'pattern' (automatically generated)"
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1017
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1018
    ^ pattern
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1019
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1020
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1021
pattern:something
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1022
    "set the value of the instance variable 'pattern' (automatically generated)"
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1023
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1024
    pattern := something.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1025
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1026
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1027
result
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1028
    "return the value of the instance variable 'result' (automatically generated)"
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1029
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1030
    ^ result
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1031
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1032
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1033
result:something
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1034
    "set the value of the instance variable 'result' (automatically generated)"
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1035
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1036
    result := something.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1037
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1038
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1039
selectedDirectories
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1040
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1041
    | selectedFiles|
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1042
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1043
    selectedFiles := contentsBrowser currentFileNameHolder value.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1044
    ^ selectedFiles select:[:aFile| aFile isDirectory].
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1045
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1046
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1047
startFilename
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1048
    "return the value of the instance variable 'startFilename' (automatically generated)"
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1049
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1050
    startFilename isNil ifTrue:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1051
	startFilename := Filename currentDirectory asAbsoluteFilename.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1052
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1053
    ^ startFilename
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1054
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1055
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1056
startFilename:something
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1057
    "set the value of the instance variable 'startFilename' (automatically generated)"
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1058
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1059
    startFilename := something.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1060
! !
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1061
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1062
!FileDialogV2 methodsFor:'accessing browser'!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1063
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1064
showHiddenFiles
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1065
    ^ contentsBrowser showHiddenFiles
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1066
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1067
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1068
userContextAvailable
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1069
    ^ contentsBrowser userContextAvailable
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1070
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1071
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1072
viewDescription
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1073
    ^ contentsBrowser viewDescription
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1074
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1075
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1076
viewDetails
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1077
    ^ contentsBrowser viewDetails
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1078
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1079
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1080
viewDetailsMenuSpec
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1081
    ^ contentsBrowser viewDetailsMenuSpec
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1082
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1083
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1084
viewGroup
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1085
    ^ contentsBrowser viewGroup
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1086
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1087
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1088
viewIcon
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1089
    ^ contentsBrowser viewIcon
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1090
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1091
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1092
viewInodeNumber
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1093
    ^ contentsBrowser viewInodeNumber
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1094
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1095
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1096
viewOwner
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1097
    ^ contentsBrowser viewOwner
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1098
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1099
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1100
viewPermissions
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1101
    ^ contentsBrowser viewPermissions
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1102
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1103
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1104
viewPreview
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1105
    ^ contentsBrowser viewPreview
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1106
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1107
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1108
viewSize
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1109
    ^ contentsBrowser viewSize
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1110
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1111
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1112
viewSizeInBytes
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1113
    ^ contentsBrowser viewSizeInBytes
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1114
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1115
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1116
viewSizeInKiloBytes
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1117
    ^ contentsBrowser viewSizeInKiloBytes
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1118
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1119
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1120
viewTime
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1121
    ^ contentsBrowser viewTime
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1122
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1123
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1124
viewType
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1125
    ^ contentsBrowser viewType
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1126
! !
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1127
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1128
!FileDialogV2 methodsFor:'accessing-behavior'!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1129
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1130
asLoadDialog
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1131
    ^ self isLoadDialog
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1132
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1133
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1134
asLoadDialog:aBoolean
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1135
    self beLoadDialog:aBoolean
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1136
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1137
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1138
beLoadDialog:aBoolean
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1139
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1140
    isLoadDialog := aBoolean
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1141
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1142
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1143
doubleClickAction
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1144
    "return the value of the instance variable 'doubleClickAction' (automatically generated)"
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1145
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1146
    ^ doubleClickAction
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1147
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1148
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1149
doubleClickAction:something
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1150
    "set the value of the instance variable 'doubleClickAction' (automatically generated)"
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1151
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1152
    doubleClickAction := something.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1153
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1154
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1155
isLoadDialog
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1156
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1157
    ^ isLoadDialog ? true
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1158
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1159
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1160
multipleSelect
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1161
    ^ multipleSelect ? false
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1162
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1163
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1164
multipleSelect:aBoolean
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1165
    multipleSelect := aBoolean.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1166
    contentsBrowser notNil ifTrue:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1167
	contentsBrowser multipleSelect:aBoolean.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1168
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1169
! !
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1170
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1171
!FileDialogV2 methodsFor:'accessing-components'!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1172
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1173
addButton:aButton
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1174
    DialogBox defaultOKButtonAtLeft ifTrue:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1175
	(self componentAt:#ButtonPanel) addSubView:aButton before:(self okButton)
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1176
    ] ifFalse:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1177
	(self componentAt:#ButtonPanel) addSubView:aButton after:(self okButton)
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1178
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1179
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1180
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1181
contentsBrowser
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1182
    "return the value of the instance variable 'treeBrowser' (automatically generated)"
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1183
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1184
    ^ contentsBrowser
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1185
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1186
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1187
okButton
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1188
    ^ (self componentAt:#okButton)
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1189
! !
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1190
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1191
!FileDialogV2 methodsFor:'accessing-look'!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1192
5966
a677b08c76c0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5871
diff changeset
  1193
browseVisibleHolder
a677b08c76c0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5871
diff changeset
  1194
    ^ true
a677b08c76c0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5871
diff changeset
  1195
!
a677b08c76c0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5871
diff changeset
  1196
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1197
hideButtonPanel
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1198
    self buttonPanelVisibleHolder value:false
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1199
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1200
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1201
newDirectoryVisibilityHolder
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1202
    newDirectoryVisibilityHolder isNil ifTrue:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1203
	newDirectoryVisibilityHolder := true asValue.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1204
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1205
    ^ newDirectoryVisibilityHolder
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1206
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1207
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1208
showButtonPanel
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1209
    self buttonPanelVisibleHolder value:true
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1210
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1211
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1212
viewFiles
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1213
    "return the value of the instance variable 'viewFiles' (automatically generated)"
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1214
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1215
    ^ viewFiles
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1216
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1217
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1218
viewFiles:something
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1219
    "set the value of the instance variable 'viewFiles' (automatically generated)"
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1220
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1221
    viewFiles := something.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1222
! !
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1223
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1224
!FileDialogV2 methodsFor:'aspects'!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1225
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1226
appendButtonVisibleHolder
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1227
    appendButtonVisibleHolder isNil ifTrue:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1228
	appendButtonVisibleHolder := false asValue.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1229
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1230
    ^ appendButtonVisibleHolder
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1231
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1232
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1233
appendLabelHolder
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1234
    appendLabelHolder isNil ifTrue:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1235
	appendLabelHolder := 'Append' asValue.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1236
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1237
    ^ appendLabelHolder
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1238
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1239
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1240
aspectOrNil:aKey forSubApplication:aSubApp
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1241
    "this hook provides an aspect for a subApp"
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1242
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1243
    aKey == #currentFileNameHolder ifTrue:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1244
	directory notNil ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1245
	    ^ (OrderedCollection with:directory) asValue
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1246
	]
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1247
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1248
    ^ nil
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1249
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1250
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1251
buttonPanelVisibleHolder
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1252
    buttonPanelVisibleHolder isNil ifTrue:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1253
	buttonPanelVisibleHolder := true asValue.
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1254
	buttonPanelVisibleHolder onChangeSend:#buttonPanelVisibilityChanged to:self.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1255
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1256
    ^ buttonPanelVisibleHolder.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1257
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1258
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1259
cancelLabelHolder
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1260
    "automatically generated by UIPainter ..."
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1261
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1262
    "*** the code below creates a default model when invoked."
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1263
    "*** (which may not be the one you wanted)"
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1264
    "*** Please change as required and accept it in the browser."
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1265
    "*** (and replace this comment by something more useful ;-)"
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1266
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1267
    cancelLabelHolder isNil ifTrue:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1268
	cancelLabelHolder := 'Cancel' asValue.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1269
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1270
    ^ cancelLabelHolder.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1271
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1272
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1273
enableBack
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1274
    ^ contentsBrowser enableBack.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1275
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1276
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1277
enableDirectoryUp
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1278
    ^ contentsBrowser enableDirectoryUp.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1279
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1280
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1281
enableForward
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1282
    ^ contentsBrowser enableForward.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1283
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1284
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1285
enableHome
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1286
    ^ contentsBrowser enableHome.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1287
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1288
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1289
filenameHolder
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1290
    "Return a value holder with the filename.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1291
     Shown in the filename input-field.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1292
     Being the selection in the tree.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1293
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1294
    |holder|
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1295
    holder := builder bindingAt:#filenameHolder.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1296
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1297
    holder ifNil:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1298
	holder := ValueHolder new.
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1299
	holder addDependent:self.
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1300
	builder aspectAt:#filenameHolder
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1301
		     put:holder.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1302
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1303
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1304
    ^ holder.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1305
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1306
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1307
filenameLabelHolder
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1308
    "Return a value holder for the input string.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1309
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1310
    filenameLabelHolder isNil ifTrue:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1311
	filenameLabelHolder := 'Filename:' asValue.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1312
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1313
    ^ filenameLabelHolder
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1314
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1315
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1316
filterHolder
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1317
    "Return a value holder for filter
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1318
    "
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1319
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1320
    filterHolder isNil ifTrue:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1321
	filterHolder := contentsBrowser filterModel.
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1322
	self pattern notNil ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1323
	    filterHolder value:pattern.
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1324
	]
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1325
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1326
    ^ filterHolder
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1327
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1328
6098
8b70ed799a5e bookmarks
Claus Gittinger <cg@exept.de>
parents: 6087
diff changeset
  1329
gotoBookmarksMenuSpec
8b70ed799a5e bookmarks
Claus Gittinger <cg@exept.de>
parents: 6087
diff changeset
  1330
    <resource: #programMenu>
8b70ed799a5e bookmarks
Claus Gittinger <cg@exept.de>
parents: 6087
diff changeset
  1331
7568
b1d31b3b9499 share the bookmarks-menu with the fileBrowser.
Claus Gittinger <cg@exept.de>
parents: 6122
diff changeset
  1332
    ^ contentsBrowser gotoBookmarksMenuSpec
6098
8b70ed799a5e bookmarks
Claus Gittinger <cg@exept.de>
parents: 6087
diff changeset
  1333
7568
b1d31b3b9499 share the bookmarks-menu with the fileBrowser.
Claus Gittinger <cg@exept.de>
parents: 6122
diff changeset
  1334
"/    |menu bookmarks|
b1d31b3b9499 share the bookmarks-menu with the fileBrowser.
Claus Gittinger <cg@exept.de>
parents: 6122
diff changeset
  1335
"/
b1d31b3b9499 share the bookmarks-menu with the fileBrowser.
Claus Gittinger <cg@exept.de>
parents: 6122
diff changeset
  1336
"/    menu := contentsBrowser class emptyMenuSpec decodeAsLiteralArray.
b1d31b3b9499 share the bookmarks-menu with the fileBrowser.
Claus Gittinger <cg@exept.de>
parents: 6122
diff changeset
  1337
"/    menu findGuiResourcesIn:self.
b1d31b3b9499 share the bookmarks-menu with the fileBrowser.
Claus Gittinger <cg@exept.de>
parents: 6122
diff changeset
  1338
"/    menu receiver:self.
b1d31b3b9499 share the bookmarks-menu with the fileBrowser.
Claus Gittinger <cg@exept.de>
parents: 6122
diff changeset
  1339
"/
b1d31b3b9499 share the bookmarks-menu with the fileBrowser.
Claus Gittinger <cg@exept.de>
parents: 6122
diff changeset
  1340
"/    "/ add the bookmark items ...
b1d31b3b9499 share the bookmarks-menu with the fileBrowser.
Claus Gittinger <cg@exept.de>
parents: 6122
diff changeset
  1341
"/    bookmarks := contentsBrowser class directoryBookmarks.
b1d31b3b9499 share the bookmarks-menu with the fileBrowser.
Claus Gittinger <cg@exept.de>
parents: 6122
diff changeset
  1342
"/    bookmarks notEmptyOrNil ifTrue:[
b1d31b3b9499 share the bookmarks-menu with the fileBrowser.
Claus Gittinger <cg@exept.de>
parents: 6122
diff changeset
  1343
"/        bookmarks do:[:dirName |
b1d31b3b9499 share the bookmarks-menu with the fileBrowser.
Claus Gittinger <cg@exept.de>
parents: 6122
diff changeset
  1344
"/            menu addItem:((MenuItem label:dirName asString value:[
b1d31b3b9499 share the bookmarks-menu with the fileBrowser.
Claus Gittinger <cg@exept.de>
parents: 6122
diff changeset
  1345
"/                (contentsBrowser currentDirectories value includes:dirName) ifFalse:[
b1d31b3b9499 share the bookmarks-menu with the fileBrowser.
Claus Gittinger <cg@exept.de>
parents: 6122
diff changeset
  1346
"/                    contentsBrowser setCurrentFileName:dirName.
b1d31b3b9499 share the bookmarks-menu with the fileBrowser.
Claus Gittinger <cg@exept.de>
parents: 6122
diff changeset
  1347
"/                ].
b1d31b3b9499 share the bookmarks-menu with the fileBrowser.
Claus Gittinger <cg@exept.de>
parents: 6122
diff changeset
  1348
"/            ])).
b1d31b3b9499 share the bookmarks-menu with the fileBrowser.
Claus Gittinger <cg@exept.de>
parents: 6122
diff changeset
  1349
"/        ].
b1d31b3b9499 share the bookmarks-menu with the fileBrowser.
Claus Gittinger <cg@exept.de>
parents: 6122
diff changeset
  1350
"/    ].
b1d31b3b9499 share the bookmarks-menu with the fileBrowser.
Claus Gittinger <cg@exept.de>
parents: 6122
diff changeset
  1351
"/    ^ menu
6098
8b70ed799a5e bookmarks
Claus Gittinger <cg@exept.de>
parents: 6087
diff changeset
  1352
7568
b1d31b3b9499 share the bookmarks-menu with the fileBrowser.
Claus Gittinger <cg@exept.de>
parents: 6122
diff changeset
  1353
    "Modified: / 06-12-2006 / 12:06:17 / cg"
6098
8b70ed799a5e bookmarks
Claus Gittinger <cg@exept.de>
parents: 6087
diff changeset
  1354
!
8b70ed799a5e bookmarks
Claus Gittinger <cg@exept.de>
parents: 6087
diff changeset
  1355
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1356
okLabelHolder
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1357
    "automatically generated by UIPainter ..."
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1358
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1359
    "*** the code below creates a default model when invoked."
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1360
    "*** (which may not be the one you wanted)"
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1361
    "*** Please change as required and accept it in the browser."
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1362
    "*** (and replace this comment by something more useful ;-)"
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1363
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1364
    okLabelHolder isNil ifTrue:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1365
	okLabelHolder := 'OK' asValue.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1366
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1367
    ^ okLabelHolder.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1368
! !
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1369
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1370
!FileDialogV2 methodsFor:'change & update'!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1371
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1372
buttonPanelVisibilityChanged
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1373
    |filePart|
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1374
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1375
    filePart := builder componentAt:#FilePart.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1376
    filePart notNil ifTrue:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1377
	buttonPanelVisibleHolder value ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1378
	    filePart layout bottomOffset:-40
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1379
	] ifFalse:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1380
	    filePart layout bottomOffset:0
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1381
	].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1382
	filePart containerChangedSize    "/ force resize
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1383
   ]
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1384
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1385
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1386
update:something with:aParameter from:changedObject
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1387
    |files newFile newLabel fn entryFieldFilename|
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1388
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1389
    changedObject == contentsBrowser currentFileNameHolder ifTrue:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1390
	files := changedObject value.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1391
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1392
	(files isEmpty) ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1393
	    newFile := nil.
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1394
	] ifFalse:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1395
	    files size == 1 ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1396
		newFile := files first.
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1397
	    ] ifFalse:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1398
		newFile := ''.
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1399
	    ].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1400
	].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1401
	(self filenameHolder value notNil and:[newFile asFilename isDirectory]) ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1402
	    entryFieldFilename := self filenameHolder value asFilename.
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1403
	    self startFilename asFilename baseName = entryFieldFilename baseName ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1404
		entryFieldFilename isDirectory not ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1405
		    newFile := newFile asFilename construct:entryFieldFilename baseName.
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1406
		].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1407
	    ].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1408
	].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1409
	self filenameHolder value:newFile withoutNotifying:self.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1410
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1411
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1412
    changedObject == contentsBrowser viewFilesInDirectoryTree ifTrue:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1413
	changedObject value ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1414
	    newLabel := 'Filename:'.
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1415
	] ifFalse:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1416
	    newLabel := 'Directory:'.
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1417
	].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1418
	self filenameLabelHolder value:(resources string:newLabel)
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1419
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1420
    changedObject == self filenameHolder ifTrue:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1421
	fn := changedObject value asFilename.
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1422
	(fn exists) ifFalse:[^ self].
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1423
	contentsBrowser currentFileNameHolder value:(OrderedCollection with:fn) withoutNotifying:self.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1424
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1425
    ^ super update:something with:aParameter from:changedObject
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1426
! !
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1427
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1428
!FileDialogV2 methodsFor:'event handling'!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1429
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1430
appendWasPressed
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1431
    "valid after the dialog has been closed: true if append was pressed"
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1432
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1433
    ^ appendWasPressed
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1434
! !
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1435
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1436
!FileDialogV2 methodsFor:'initialization & release'!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1437
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1438
postBuildFileNameField:aWidget
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1439
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1440
    filenameField := aWidget.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1441
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1442
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1443
postBuildFilterField:aWidget
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1444
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1445
    filterField := aWidget.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1446
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1447
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1448
postBuildTreeBrowser:aSubCanvasView
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1449
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1450
    contentsBrowser := aSubCanvasView client.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1451
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1452
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1453
postBuildWith:aBuilder
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1454
    contentsBrowser multipleSelect:multipleSelect.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1455
    appendWasPressed := false.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1456
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1457
    (aBuilder componentAt:'cancelButton') cursor:(Cursor thumbsDown).
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1458
    (aBuilder componentAt:'appendButton') cursor:(Cursor thumbsUp).
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1459
    (aBuilder componentAt:'okButton') cursor:(Cursor thumbsUp).
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1460
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1461
    ^ super postBuildWith:aBuilder
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1462
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1463
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1464
postOpen
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1465
    |directory rootDirectory|
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1466
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1467
"/     self windowGroup addPreEventHook:self.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1468
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1469
    "No ok and cancel buttons, when dialog is part of a larger dialog"
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1470
    self window topView isModal ifFalse:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1471
	self hideButtonPanel
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1472
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1473
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1474
    contentsBrowser currentFileNameHolder addDependent:self.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1475
    contentsBrowser doubleClickAction:self doubleClickAction.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1476
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1477
    directory := (self directory) ? (Filename currentDirectory asAbsoluteFilename).
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1478
    rootDirectory := directory asFilename directory.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1479
    contentsBrowser rootHolder value:rootDirectory.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1480
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1481
    contentsBrowser viewDirsInContentsBrowser value:true.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1482
    contentsBrowser sortDirectoriesBeforeFiles value:true.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1483
    contentsBrowser viewFilesInContentsBrowser setValue:(self viewFiles ? true).
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1484
    contentsBrowser viewFilesInDirectoryTree changed.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1485
    contentsBrowser currentFileNameHolder value:(OrderedCollection with:self startFilename).
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1486
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1487
    self isLoadDialog ifTrue:[
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1488
"/        contentsBrowser newVisibilityHolder value:false.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1489
"/        contentsBrowser allowFileOperations value:false.
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1490
	self newDirectoryVisibilityHolder value:false.
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1491
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1492
    self filenameHolder value:self startFilename.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1493
    self window label:self initialText.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1494
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1495
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1496
postOpenAsSubcanvasWith:aBuilder
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1497
    self postOpen.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1498
    ^ super postOpenAsSubcanvasWith:aBuilder
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1499
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1500
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1501
postOpenWith:aBuilder
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1502
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1503
    self postOpen.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1504
    ^ super postOpenWith:aBuilder.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1505
! !
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1506
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1507
!FileDialogV2 methodsFor:'private'!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1508
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1509
returnWasPressedInFilterField
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1510
    |ev|
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1511
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1512
    ev := self windowGroup lastEvent.
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1513
    (ev notNil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1514
    and:[ev isKeyEvent
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1515
    and:[ev key == #Return
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1516
    and:[(   ev targetView isSameOrComponentOf:filterField)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1517
	 or:[false "ev targetView isSameOrComponentOf:filenameField"]]]]) ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1518
	^ true
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1519
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1520
    ^ false
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1521
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1522
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1523
returnWasPressedInFilterOrFilenameField
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1524
    |ev|
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1525
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1526
    ev := self windowGroup lastEvent.
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1527
    (ev notNil
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1528
    and:[ev isKeyEvent
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1529
    and:[ev key == #Return
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1530
    and:[(   ev targetView isSameOrComponentOf:filterField)
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1531
	 or:[false "ev targetView isSameOrComponentOf:filenameField"]]]]) ifTrue:[
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1532
	^ true
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1533
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1534
    ^ false
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1535
! !
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1536
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1537
!FileDialogV2 methodsFor:'user actions'!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1538
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1539
appendPressed
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1540
    appendWasPressed := true.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1541
    self commonAcceptAction.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1542
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1543
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1544
commonAcceptAction
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1545
    filenameField accept.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1546
    self result:(self filenameHolder value asString).
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1547
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1548
    ^ super doAccept
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1549
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1550
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1551
doAccept
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1552
    "force accept - ignore in filterField"
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1553
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1554
    self returnWasPressedInFilterField ifTrue:[
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1555
	^ self
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1556
    ].
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1557
    appendWasPressed := false.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1558
    self commonAcceptAction.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1559
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1560
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1561
doBack
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1562
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1563
    contentsBrowser doBack.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1564
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1565
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1566
doCancel
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1567
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1568
    self result:nil.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1569
    ^ super doCancel.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1570
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1571
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1572
doForward
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1573
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1574
    contentsBrowser doForward.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1575
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1576
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1577
doGoDirectoryUp
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1578
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1579
    contentsBrowser doGoDirectoryUp.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1580
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1581
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1582
doGotoHomeDirectory
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1583
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1584
    contentsBrowser doGotoHomeDirectory.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1585
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1586
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1587
menuDirHistory:backOrForward
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1588
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1589
    ^ contentsBrowser menuDirHistory:backOrForward.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1590
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1591
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1592
menuDirHistoryBack
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1593
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1594
    ^ contentsBrowser menuDirHistory:#back.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1595
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1596
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1597
menuDirHistoryForward
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1598
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1599
    ^ contentsBrowser menuDirHistory:#forward.
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1600
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1601
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1602
newDirectory
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1603
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1604
    ^ contentsBrowser newDirectory
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1605
!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1606
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1607
okPressed
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1608
    self doAccept
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1609
! !
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1610
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1611
!FileDialogV2 class methodsFor:'documentation'!
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1612
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1613
version
17920
773da6cf53a5 flyByHelpSpec -> helpSpec
Claus Gittinger <cg@exept.de>
parents: 7568
diff changeset
  1614
    ^ '$Header$'
5871
8a3828774d42 initial checkin
penk
parents:
diff changeset
  1615
! !