# HG changeset patch # User Claus Gittinger # Date 1190198118 -7200 # Node ID e4ce2c9df9acd48c96fef2b40b74cf05b53e4e78 # Parent 2afa6e06b6349a376e79ec7dc483ef22a1c46792 shift-right (shift-left) does a recursive-toggle-expand. diff -r 2afa6e06b634 -r e4ce2c9df9ac HierarchicalListView.st --- a/HierarchicalListView.st Fri Jul 27 11:23:11 2007 +0200 +++ b/HierarchicalListView.st Wed Sep 19 12:35:18 2007 +0200 @@ -645,7 +645,9 @@ indicatorAction notNil ifTrue:[ indicatorAction valueWithOptionalArgument:aLnNr and:self. - ] ifFalse:[ |sensor| + ] ifFalse:[ + |sensor| + sensor := self sensor. (sensor ctrlDown or:[sensor shiftDown]) ifTrue:[ item recursiveToggleExpand @@ -665,7 +667,6 @@ "/ numChildren == 0 ifTrue:[ "/ ^ self "/ ]. - ^ self "/ idx := aLnNr + numChildren. "/ vwOrgY := viewOrigin y. @@ -680,6 +681,8 @@ "/ ]. "/ vwOrgX := self computeViewOriginXat:aLnNr. "/ self scrollTo:(vwOrgX @ vwOrgY). + + "Modified: / 19-09-2007 / 08:48:15 / cg" ! lineChangedAt:aLnNr with:arg @@ -1225,10 +1228,14 @@ item toggleExpand. ^ self ]. - isCursorLeft := aKey == #CursorLeft. + isCursorLeft := (aKey == #CursorLeft). item isExpanded == isCursorLeft ifTrue:[ - item toggleExpand. + (self sensor ctrlDown or:[self sensor shiftDown]) ifTrue:[ + item recursiveToggleExpand. + ] ifFalse:[ + item toggleExpand. + ]. ^ self ]. isCursorLeft ifTrue:[ @@ -1245,6 +1252,8 @@ (self canSelectIndex:lineNr forAdd:false) ifTrue:[ self selection:lineNr ]. + + "Modified: / 18-09-2007 / 23:02:09 / cg" ! ! !HierarchicalListView methodsFor:'fetch resources'! @@ -1666,5 +1675,5 @@ !HierarchicalListView class methodsFor:'documentation'! version - ^ '$Header: /cvs/stx/stx/libwidg2/HierarchicalListView.st,v 1.107 2007-07-05 15:06:46 ca Exp $' + ^ '$Header: /cvs/stx/stx/libwidg2/HierarchicalListView.st,v 1.108 2007-09-19 10:35:18 cg Exp $' ! !