--- a/FileDialog.st Mon Jun 09 14:11:03 2008 +0200
+++ b/FileDialog.st Mon Jun 09 14:11:55 2008 +0200
@@ -9,8 +9,6 @@
other person. No title to or ownership of the software is
hereby transferred.
"
-"{ Package: 'stx:libtool' }"
-
SimpleDialog subclass:#FileDialog
instanceVariableNames:'aspects treeBrowser directory pattern filterHolder initialText
multipleSelect doubleClickAction cancelLabelHolder okLabelHolder
@@ -18,7 +16,7 @@
filenameLabelHolder isLoadDialog newDirectoryVisibilityHolder
appendButtonVisibleHolder appendWasPressed
buttonPanelVisibleHolder appendLabelHolder browseVisibleHolder
- selectedDeviceDrive listOfDeviceDrives'
+ selectedDeviceDrive listOfDeviceDrives rootDirectoryHolder'
classVariableNames:'LastExtent'
poolDictionaries:''
category:'Interface-Tools-File'
@@ -735,6 +733,18 @@
hasHorizontalScrollBar: false
hasVerticalScrollBar: false
majorKey: DirectoryTreeBrowser
+ subAspectHolders:
+ (Array
+
+ (SubChannelInfoSpec
+ subAspect: filterModel
+ aspect: filterHolder
+ )
+ (SubChannelInfoSpec
+ subAspect: rootHolder
+ aspect: rootDirectoryHolder
+ )
+ )
createNewApplication: true
createNewBuilder: true
postBuildCallback: postBuildTreeBrowser:
@@ -999,6 +1009,7 @@
^ #(
#filenameHolder
#filterHolder
+ #rootDirectoryHolder
).
! !
@@ -1298,10 +1309,7 @@
"Return a value holder for filter"
filterHolder isNil ifTrue:[
- filterHolder := treeBrowser filterModel.
- self pattern notNil ifTrue:[
- filterHolder value:pattern.
- ]
+ filterHolder := (self pattern ? '*') asValue.
].
^ filterHolder
!
@@ -1309,11 +1317,7 @@
filterHolder:aHolder
"needed when used as subcanvas"
- filterHolder notNil ifTrue:[
- filterHolder removeDependent:self
- ].
filterHolder := aHolder.
- aHolder addDependent:self
!
gotoBookmarksMenuSpec
@@ -1364,6 +1368,21 @@
^ okLabelHolder.
!
+rootDirectoryHolder
+ "Return a value holder for filter"
+
+ rootDirectoryHolder isNil ifTrue:[
+ rootDirectoryHolder := self initialRootDirectory asValue.
+ ].
+ ^ rootDirectoryHolder
+!
+
+rootDirectoryHolder:aHolder
+ "Return a value holder for filter"
+
+ rootDirectoryHolder := aHolder.
+!
+
selectedDeviceDrive
selectedDeviceDrive isNil ifTrue:[
@@ -1572,9 +1591,10 @@
super postOpenAsSubcanvasWith:aBuilder.
"No ok and cancel buttons, when dialog is part of a larger dialog"
- self hideButtonPanel
+ self hideButtonPanel.
"filenameHolder contains the initial file name"
+ self startFilename:self filenameHolder value.
treeBrowser currentFileNameHolder value:(Array with:self filenameHolder value).
!
@@ -1724,5 +1744,5 @@
!FileDialog class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/FileDialog.st,v 1.98 2008-06-05 14:31:41 stefan Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/FileDialog.st,v 1.99 2008-06-09 12:11:55 stefan Exp $'
! !