UIPainterView.st
changeset 1696 0cb66a26b156
parent 1683 f95658463570
child 1714 f57812a56d17
--- a/UIPainterView.st	Wed Mar 19 14:25:40 2003 +0100
+++ b/UIPainterView.st	Wed Apr 02 18:54:10 2003 +0200
@@ -1019,24 +1019,23 @@
 !
 
 generateCodeFrom:aListOfSelectors in:aClass do:aBlock
+    |realSelectors redefCondition redefMessage|
+
+    realSelectors := aListOfSelectors select:[:sel | sel isArray not].
 
     self class redefineAspectMethods ifTrue:[
-        aListOfSelectors do:[:aSelector|
-            (aSelector isArray or:[aClass includesSelector:aSelector]) ifFalse:[
-                aBlock value:aSelector asSymbol
-            ] ifTrue:[
-                Transcript showCR:'#' , aSelector , ' skipped - already implemented in the class'
-            ]
-        ]
+        redefCondition := [:cls :sel | (cls includesSelector:sel) not].
+        redefMessage := ' skipped - already implemented in the class'.
     ] ifFalse:[
-        aListOfSelectors do:[:aSelector|
-            aSelector isArray ifFalse:[
-                (aClass canUnderstand:aSelector) ifFalse:[
-                    aBlock value:aSelector asSymbol
-                ] ifTrue:[
-                    Transcript showCR:'#' , aSelector , ' skipped - already implemented in the class (or superclass)'
-                ]
-            ]
+        redefCondition := [:cls :sel | (cls canUnderstand:sel) not].
+        redefMessage := ' skipped - already implemented in the class (or superclass)'.
+    ].
+
+    realSelectors do:[:aSelector|
+        (redefCondition value:aClass value:aSelector) ifTrue:[
+            aBlock value:aSelector asSymbol
+        ] ifFalse:[
+            Transcript showCR:('#' , aSelector , redefMessage)
         ]
     ]
 !