# HG changeset patch # User Stefan Vogel # Date 1194884621 -3600 # Node ID bb6de5f8fd03e7bf6c856294dc70113a63626243 # Parent 70b90ed6e10db0b3daaaaaf26ef52ad5d5277183 Take care of true or false as pseudo-aspect-selectors diff -r 70b90ed6e10d -r bb6de5f8fd03 UIPainterView.st --- a/UIPainterView.st Thu Nov 08 17:01:02 2007 +0100 +++ b/UIPainterView.st Mon Nov 12 17:23:41 2007 +0100 @@ -657,50 +657,50 @@ |cls selector protoSpec| className isNil ifTrue:[ - self warn:'No class defined !!'. - ^ self + self warn:'No class defined !!'. + ^ self ]. cls := self resolveName:className. treeView propertiesDo:[:aProp| - |selector| - - (selector := aProp model) notNil ifTrue:[ - selector isArray ifFalse:[ - aTwoArgBlock value:(selector asSymbol) value:#modelAspect - ]. - ]. - - (selector := aProp menu) notNil ifTrue:[ - selector isArray ifFalse:[ - aTwoArgBlock value:(selector asSymbol) value:#menu - ]. - ]. - - (aProp spec aspectSelectors) do:[:aSel | - aSel isArray ifFalse:[ - aTwoArgBlock value:(aSel asSymbol) value:#channelAspect - ]. - ]. - aProp spec actionSelectors do:[:aSel| - aSel isArray ifFalse:[ - aTwoArgBlock value:(aSel asSymbol) value:#actionSelector - ]. - ]. - aProp spec valueSelectors do:[:aSel| - aSel isArray ifFalse:[ - aTwoArgBlock value:(aSel asSymbol) value:#valueSelector - ]. - ] + |selector| + + (selector := aProp model) notNil ifTrue:[ + selector isArray ifFalse:[ + aTwoArgBlock value:(selector asSymbol) value:#modelAspect + ]. + ]. + + (selector := aProp menu) notNil ifTrue:[ + selector isArray ifFalse:[ + aTwoArgBlock value:(selector asSymbol) value:#menu + ]. + ]. + + (aProp spec aspectSelectors) do:[:aSel | + (aSel isArray or:[aSel isBoolean]) ifFalse:[ + aTwoArgBlock value:(aSel asSymbol) value:#channelAspect + ]. + ]. + aProp spec actionSelectors do:[:aSel| + (aSel isArray or:[aSel isBoolean]) ifFalse:[ + aTwoArgBlock value:(aSel asSymbol) value:#actionSelector + ]. + ]. + aProp spec valueSelectors do:[:aSel| + (aSel isArray or:[aSel isBoolean]) ifFalse:[ + aTwoArgBlock value:(aSel asSymbol) value:#valueSelector + ]. + ] ]. protoSpec := treeView canvasSpec. (selector := protoSpec menu) notNil ifTrue:[ - selector isArray ifFalse:[ - aTwoArgBlock value:(selector asSymbol) value:#menu - ]. + selector isArray ifFalse:[ + aTwoArgBlock value:(selector asSymbol) value:#menu + ]. ]. ! @@ -1064,22 +1064,22 @@ generateCodeFrom:aListOfSelectors in:aClass do:aBlock |realSelectors redefCondition redefMessage| - realSelectors := aListOfSelectors select:[:sel | sel isArray not]. + realSelectors := aListOfSelectors reject:[:sel | sel isArray or:[sel isBoolean]]. self class redefineAspectMethods ifTrue:[ - redefCondition := [:cls :sel | (cls includesSelector:sel) not]. - redefMessage := ' skipped - already implemented in the class'. + redefCondition := [:cls :sel | (cls includesSelector:sel) not]. + redefMessage := ' skipped - already implemented in the class'. ] ifFalse:[ - redefCondition := [:cls :sel | (cls canUnderstand:sel) not]. - redefMessage := ' 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) - ] + (redefCondition value:aClass value:aSelector) ifTrue:[ + aBlock value:aSelector asSymbol + ] ifFalse:[ + Transcript showCR:('#' , aSelector , redefMessage) + ] ] !