HierarchicalList.st
changeset 2430 e50f234bf3fe
parent 2412 8c3d2548998e
child 2456 27a5e7ece5df
--- a/HierarchicalList.st	Mon Jan 20 12:55:02 2003 +0100
+++ b/HierarchicalList.st	Mon Jan 20 13:02:46 2003 +0100
@@ -66,9 +66,10 @@
 showRoot
     "show or hide root item
     "
-    ^ showRoot ? true
-
-
+    showRoot isNil ifTrue:[
+        showRoot := true
+    ].
+    ^ showRoot
 !
 
 showRoot:aBoolean
@@ -208,9 +209,11 @@
 !
 
 initContents:aSize
-    recursionLock isNil ifTrue:[
-        recursionLock := RecursionLock new
-    ].
+    "setup defaults
+    "
+    showRoot      isNil ifTrue:[ showRoot      := true ].
+    recursionLock isNil ifTrue:[ recursionLock := RecursionLock new ].
+
     ^ super initContents:aSize.
 !
 
@@ -265,7 +268,15 @@
     |index item|
 
     item  := root.
-    index := showRoot ifTrue:[1] ifFalse:[0].
+    index := 1.                 "/ on default discard first entry the root
+
+    root isNil ifTrue:[
+        item := self at:index ifAbsent:nil.
+    ] ifFalse:[
+        self showRoot ifFalse:[
+            index := 0          "/ read list from begin
+        ]
+    ].
 
     [item notNil] whileTrue:[
         item monitoringCycle.
@@ -373,5 +384,5 @@
 !HierarchicalList class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libwidg2/HierarchicalList.st,v 1.16 2002-12-12 12:39:06 penk Exp $'
+    ^ '$Header: /cvs/stx/stx/libwidg2/HierarchicalList.st,v 1.17 2003-01-20 12:02:46 ca Exp $'
 ! !