FileSelectionBrowser.st
changeset 462 90b8b353cd2f
parent 452 d6d5eceb23a9
child 468 bb4e776b9210
equal deleted inserted replaced
461:aed297a2d395 462:90b8b353cd2f
    57         title: aTitle;
    57         title: aTitle;
    58         listOfFileFilters: fileFilters;
    58         listOfFileFilters: fileFilters;
    59         open
    59         open
    60 !
    60 !
    61 
    61 
    62 request: aTitle fileName: aFileName fileFilters: fileFilters
       
    63 
       
    64     "self request: 'Select A File' fileName: '' fileFilters: #('.*')"
       
    65     
       
    66     ^self new
       
    67         title: aTitle;
       
    68         fileName: aFileName;
       
    69         listOfFileFilters: fileFilters;
       
    70         open
       
    71 !
       
    72 
       
    73 request: aTitle fileName: aFileName inDirectory: dir withFileFilters: fileFilters
    62 request: aTitle fileName: aFileName inDirectory: dir withFileFilters: fileFilters
    74 
    63 
    75     "self 
    64     "self 
    76         request: 'Select Your Profile File' 
    65         request: 'Select Your Profile File' 
    77         fileName: '.profile' 
    66         fileName: '.profile' 
    80 
    69 
    81     ^self new
    70     ^self new
    82         title: aTitle;
    71         title: aTitle;
    83         fileName: aFileName;
    72         fileName: aFileName;
    84         directory: dir;
    73         directory: dir;
       
    74         listOfFileFilters: fileFilters;
       
    75         open
       
    76 !
       
    77 
       
    78 request: aTitle pathName: aPath fileFilters: fileFilters
       
    79 
       
    80     "self request: 'Select A File' pathName: '' fileFilters: #('.*')"
       
    81 
       
    82     ^self new
       
    83         title: aTitle;
       
    84         fileName: aPath;
       
    85         directory: aPath;
    85         listOfFileFilters: fileFilters;
    86         listOfFileFilters: fileFilters;
    86         open
    87         open
    87 !
    88 !
    88 
    89 
    89 requestFileName
    90 requestFileName
   213 
   214 
   214 !FileSelectionBrowser methodsFor:'accessing'!
   215 !FileSelectionBrowser methodsFor:'accessing'!
   215 
   216 
   216 directory: aDirectory
   217 directory: aDirectory
   217 
   218 
   218     directory := aDirectory asFilename asAbsoluteFilename name
   219     directory := (aDirectory ? Filename homeDirectory) asFilename asAbsoluteFilename name
   219 !
   220 !
   220 
   221 
   221 directoryView
   222 directoryView
   222 
   223 
   223     ^directoryView ? (directoryView := DirectoryView new)
   224     ^directoryView ? (directoryView := DirectoryView new)
   315 
   316 
   316     super open.
   317     super open.
   317     accept value
   318     accept value
   318     ifTrue:
   319     ifTrue:
   319     [
   320     [
   320         ^self valueOfFileName value ? ''
   321         ^(self selectionOfDirectory value ? '') , Filename separator, (self valueOfFileName value ? '')
   321     ].
   322     ].
   322     ^nil
   323     ^nil
   323 
   324 
   324 
   325 
   325 
   326 
   326 !
   327 !
   327 
   328 
   328 postBuildWith:aBuilder
   329 postBuildWith:aBuilder
   329 
   330 
   330     directoryView listOfFileFilters: listOfFileFilters ? #('*').
   331     directoryView listOfFileFilters: listOfFileFilters ? #('*').
   331     directoryView fileSelectAction: [:aFileName |self valueOfFileName value: aFileName].
   332     directoryView fileSelectAction: [:aFileName |self valueOfFileName value: aFileName asFilename baseName].
   332     directoryView fileDoubleClickAction: [:aFileName |self fileDoubleClicked: aFileName].
   333     directoryView fileDoubleClickAction: [:aFileName |self fileDoubleClicked: aFileName asFilename baseName].
   333     directoryView fileFilterSelectAction: [:fileFilter|
   334     directoryView fileFilterSelectAction: [:fileFilter|
   334     self valueOfFileName value: (
   335     self valueOfFileName value: (
   335         ((self valueOfFileName value ? 'unknown') readStream upTo: $.), '.',
   336         ((self valueOfFileName value ? 'unknown') readStream upTo: $.), '.',
   336         (fileFilter copy reverse readStream upTo: $.) reverse)].
   337         (fileFilter copy reverse readStream upTo: $.) reverse)].
   337     self directoryTreeView selectPathname: directory ? self class lastSelection.
   338     self directoryTreeView selectPathname: directory ? self class lastSelection.
   338     self directoryTreeView monitoring: true.
       
   339 
   339 
   340     ^super postBuildWith:aBuilder
   340     ^super postBuildWith:aBuilder
   341 ! !
   341 ! !
   342 
   342 
   343 !FileSelectionBrowser class methodsFor:'documentation'!
   343 !FileSelectionBrowser class methodsFor:'documentation'!