Last updated at 10:53 pm UTC on 23 August 2017
What is the responsibility of WorldState?
The class WorldState has the responsibility to implement some or all of the world functions for a PasteUpMorph for which the message
This message is implemented as
^ worldState notNil
Other PasteUpMorph instances do not have a WorldState instance.
For example BookMorphs use PasteUpMorphs as pages. The pages morphs do have nil for the worldstate variable.
A world knows its hands, bounds and a so called step list.
The step list keeps the morphs which need to be animated. To get into this list a morph has to register itself with the world.
Each morph is steppable. The world regularily calls the #step method.
The world is responsible for displaying morphs. Morphs never directly draw themselves. They post requests for redisplay which are collected by the world. These requests are optimized and then performed by calling the morphs' drawOn: methods.
The world knows how often this should happen at most. Between each redisplay, all events of all hands are processed.
A WorldState object responds to the messages
In the stepList the submorphs which need regularly the message send step are kept.
When are the deferred UI messages processed?
How do I set the Morph stepping interval?_____
Morphic as a simulation framework.