select the item if his indicator is clicked and only directories under this item are selected
--- a/DirectoryTreeBrowser.st Tue Jun 10 14:14:09 2003 +0200
+++ b/DirectoryTreeBrowser.st Tue Jun 10 14:48:42 2003 +0200
@@ -442,10 +442,17 @@
"handle a click on the indicator
"
- |item|
+ |indicatorItem selectedItemNotUnderIndicatorItem selection|
- item := self fileList at:anIndex ifAbsent:nil.
- self toggleExpand:item
+ indicatorItem := self fileList at:anIndex ifAbsent:nil.
+ selection := self selectedItems asOrderedCollection.
+ selectedItemNotUnderIndicatorItem := selection detect:[:anItem |
+ (anItem fileName directory asString startsWith:(indicatorItem fileName asString)) not]
+ ifNone:[nil].
+ selectedItemNotUnderIndicatorItem isNil ifTrue:[
+ self currentFileNameHolder value:(OrderedCollection with:indicatorItem fileName).
+ ].
+ self toggleExpand:indicatorItem.
!
doSetSelectionToRoot
@@ -1246,5 +1253,5 @@
!DirectoryTreeBrowser class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libtool/DirectoryTreeBrowser.st,v 1.66 2003-05-13 16:49:56 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/DirectoryTreeBrowser.st,v 1.67 2003-06-10 12:48:42 penk Exp $'
! !