logo       

Re: Re: World when: #aboutToEnterWorld send:to:: msg#00072

lang.smalltalk.squeak.beginners

Subject: Re: Re: World when: #aboutToEnterWorld send:to:

Thanks. Some progress:

I see this structure:
Each project has a unique World (a PasteUpMorph)
PasteUpMorph inherits the instance variable "extension" from Morph
Morph initializes extension as a MorphExtension (method initializeExtension)
(so World extension is a MorphExtension)

MorphExtension otherProperties is an instance variable of MorphExtension
MorphExtension initializes otherProperties as an IdentityDictionary
(method initializeOtherProperties)

When I evaluated
World when: #aboutToEnterWorld send: start to: Demo1.
it created this entry in World extension otherProperties :
(actionMap -> an IdentityDictionary
in which it stored this key/value
(#aboutToEnterWorld -> WeakMessageSend(nil -> Demo1) ))

Evaluating a series of MorphExtension methods, I was able to remove the
code.

World extension hasProperty: #actionMap (true)
World extension valueOfProperty: #actionMap (shows current value of
#actionMap).
World extension removeProperty: #actionMap
World extension hasProperty: #actionMap (false)

Now this does not explain why it runs automatically when the project is
opened nor does it explain where /how the actionMap key is created ....

nicolas cellier wrote:
>


<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise