[Pharo-project] strange loop

Igor Stasenko siguctua at gmail.com
Sun May 1 23:06:53 CEST 2011


On 1 May 2011 21:38, Stéphane Ducasse <stephane.ducasse at inria.fr> wrote:
> this is strange
>
> I was trying to code a simple list of method browser and my browser seems to
>
> MorphExtension>>valueOfProperty: aSymbol
>        "answer the value of the receiver's property named aSymbol"
>        ^ extension ifNotNil: [extension valueOfProperty: aSymbol]
>
hmm.. i have different implementation here:

valueOfProperty: aSymbol
"answer the value of the receiver's property named aSymbol"
	^ self
		valueOfProperty: aSymbol
		ifAbsent: []

and there is no 'extension' ivar in MorphExtension class.
Or you changed something there?

> I end up in a endless loop
>
> update: aParameter
>
>        |state|
>        aParameter  ifNil: [^self].
>        getLabelSelector ifNotNil: [
>                aParameter == getLabelSelector ifTrue: [
>                        (self labelMorph respondsTo: #font)
>                                ifTrue: [self label: (model perform: getLabelSelector) font: self labelMorph font]
>                                ifFalse: [self label: (model perform: getLabelSelector)]]].
>        state := self getModelState.
>        (state ~= (self valueOfProperty: #lastState) or: [
>                        ^^^
>
> when I inspect self I get a PluggableButtonMorph
> but the method shown in the debugger is MoprhExtension??????
>
>        getStateSelector isNil and: [aParameter == #onOffColor]])
>                ifTrue: [self color: self colorToUse.
>                                self setProperty: #lastState toValue: state].
>        aParameter == getEnabledSelector ifTrue: [^self enabled: (model perform: getEnabledSelector)].
>        getColorSelector ifNotNil: [ | cc |
>                color = (cc := model perform: getColorSelector)
>                        ifFalse: [
>                                color := cc.
>                                self onColor: color offColor: color.
>                                self changed ]].
>



-- 
Best regards,
Igor Stasenko AKA sig.


More information about the Pharo-project mailing list