UIPainterView.st
changeset 1031 7ce4b97f2c43
parent 1030 0b9fbaecbe88
child 1039 99a4be876840
--- a/UIPainterView.st	Wed Feb 17 12:35:34 1999 +0100
+++ b/UIPainterView.st	Wed Feb 17 21:15:58 1999 +0100
@@ -158,34 +158,44 @@
 !
 
 selectNames:aStringOrCollection
-    |prop coll s|
+    |prop coll s n newSel|
+
+    (aStringOrCollection size == 0) ifTrue:[
+        newSel := nil.
+    ] ifFalse:[
+        (s := aStringOrCollection) isString ifFalse:[
+            s size == 1 ifTrue:[
+                s := s first
+            ] ifFalse:[
+                coll := OrderedCollection new.
 
-    (aStringOrCollection isNil or:[aStringOrCollection isEmpty]) ifTrue:[
-        ^ self select:nil
+                s do:[:aName|
+                    (prop := self propertyOfName:aName) notNil ifTrue:[
+                        coll add:(prop view)
+                    ]
+                ].
+                (n := coll size) == 1 ifTrue:[ 
+                    newSel := coll at:1 
+                ] ifFalse:[
+                    n == 0 ifTrue:[ 
+                        newSel := nil
+                    ] ifFalse:[
+                        newSel := coll
+                    ]
+                ].
+                ^ self select:newSel.
+            ]
+        ].
+
+        prop := self propertyOfName:s.
+        prop isNil ifTrue:[
+            newSel := nil
+        ] ifFalse:[
+            newSel := prop view
+        ].
     ].
 
-    (s := aStringOrCollection) isString ifFalse:[
-        s size == 1 ifTrue:[
-            s := s first
-        ] ifFalse:[
-            coll := OrderedCollection new.
-
-            s do:[:aName|
-                (prop := self propertyOfName:aName) notNil ifTrue:[
-                    coll add:(prop view)
-                ]
-            ].
-            coll size == 1 ifTrue:[ ^ self select:(coll at:1) ].
-            coll size == 0 ifTrue:[ ^ self select:nil ].
-
-          ^ self select:coll.
-        ]
-    ].
-
-    prop := self propertyOfName:s.
-    prop isNil ifTrue:[^ self select:nil]
-              ifFalse:[^ self select:(prop view)]
-
+    ^ self select:newSel
 ! !
 
 !UIPainterView methodsFor:'change & update'!