--- a/FileBrowserV2.st Mon Jun 09 11:43:15 2008 +0200
+++ b/FileBrowserV2.st Mon Jun 09 12:53:54 2008 +0200
@@ -86,14 +86,10 @@
on:aDirectoryPath
"return a new FileBrowserV2 in a pathname"
- |instance files|
- instance := self new createBuilder.
- aDirectoryPath isCollection ifTrue:[
- files := aDirectoryPath
- ] ifFalse:[
- files := Array with:aDirectoryPath.
- ].
- instance currentFileNameHolder value:files.
+ |instance|
+
+ instance := self new.
+ instance onDirectory:aDirectoryPath.
^ instance
!
@@ -154,21 +150,11 @@
If editing is true, the browser opens the document as text to be edited;
if false, it looks for an appropriate viewer and uses that if one is found."
- |f browser|
-
- f := aFilename asFilename asAbsoluteFilename.
- f isDirectory ifTrue:[
- ^ self openOn:aFilename
- ].
+ |browser|
- browser := self on:(f directory).
- browser currentFileNameHolder setValue:(Array with:f).
- browser open.
- editing ifTrue:[
- browser openTextEditorForFile:f.
- ] ifFalse:[
- browser openApplForFile:f.
- ].
+ browser := self new.
+ browser openOnFileNamed:aFilename editing:editing.
+ ^ browser
"
FileBrowserV2 openOnFileNamed:'Makefile'
@@ -182,6 +168,7 @@
dir := someAspects at:#currentFileNameHolder ifAbsent:nil.
clone := self openOn:(dir value) withExtent:extent.
+ ^ clone
! !
!FileBrowserV2 class methodsFor:'class initialization'!
@@ -1867,6 +1854,51 @@
self previewVisibleHolder addDependent:self.
!
+onDirectory:aDirectoryPath
+ |files|
+
+ self createBuilder.
+ aDirectoryPath isCollection ifTrue:[
+ files := aDirectoryPath
+ ] ifFalse:[
+ files := Array with:aDirectoryPath.
+ ].
+ self currentFileNameHolder value:files.
+!
+
+openOnDirectory:aDirectoryPath
+ self onDirectory:aDirectoryPath.
+ self open
+!
+
+openOnFileNamed:aFilename editing:editing
+ "start a new FileBrowserV2 on a aFilename;
+ If editing is true, the browser opens the document as text to be edited;
+ if false, it looks for an appropriate viewer and uses that if one is found."
+
+ |f|
+
+ f := aFilename asFilename asAbsoluteFilename.
+ f isDirectory ifTrue:[
+ self onDirectory:aFilename.
+ self open.
+ ^ self.
+ ].
+
+ self onDirectory:(f directory).
+ self currentFileNameHolder setValue:(Array with:f).
+ self open.
+ editing ifTrue:[
+ self openTextEditorForFile:f.
+ ] ifFalse:[
+ self openApplForFile:f.
+ ].
+
+ "
+ FileBrowserV2 openOnFileNamed:'Makefile'
+ "
+!
+
postBuildDirectoryTree:aWidget
aWidget application multipleSelect:true.
!
@@ -1923,7 +1955,7 @@
!FileBrowserV2 class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/FileBrowserV2.st,v 1.175 2008-05-07 09:15:28 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/FileBrowserV2.st,v 1.176 2008-06-09 10:53:54 cg Exp $'
! !
FileBrowserV2 initialize!