On Fri, Oct 06, 2017 at 02:15:41PM +0200, H. Hirzel wrote:
On 10/6/17, Bert Freudenberg bert@freudenbergs.de wrote:
On Thu, Oct 5, 2017 at 9:25 PM, H. Hirzel hannes.hirzel@gmail.com wrote:
If you drop
http://etoys.laptop.org/src/Content/ExampleEtoys/CarAndPen.014.pr
on to the desktop Squeak asks you for a replacement for 'MultiNewParagraph' as this class was removed in April (The Trunk: EToys-nice.292.mcz)
Answer 'NewParagraph'. Then the Etoys project loads and gives some error messages. Some are related to preferences. An issue to fix first.
Another issue is that actually a MorphicProject is created instead of the new #EtoysProject type we want.
I do not now yet where to do this.
???I can't tell you from memory where exactly to fix this, but the project loading mechanism was designed to be flexible enough to allow all kinds of class changes.
Good to know.
In particular
- we get a MorphicProject when reading the *.pr project file.
- we need to convert it to an EtoysProject
Some more investigation needed.
I think this makes sense (I am still trying to wrap my head around how this stuff works in Etoys, I am an Etoys newbie).
So we might have some kind of rule in project loading that says "if the current project is an EtoysProject, and if I am loading a *.pr for a MorphicProject, then make it an EtoysProject". And perhaps when saving a project, we could reverse the rule and always save a project as MorphicProject, because we know that a loader in EtoysProject will know how to do the right thing with it.
I can see now that I misunderstood one important thing. I was assuming that a new EtoysProject would open up with a playfield like the one I see when I first start a normal Etoys image. But I see now this is wrong, an Etoys project should initially have an empty playfield, but perhaps there is a one-time setup that happens the very first time that I enter a new EtoysProject from the world of "normal Squeak". So maybe if I enter a new EtoysProject from a MorphicProject or MVCProject, it will automatically load some initial project that sets up the welcoming playfield with a car driving around, but when I load or create new EtoysProjects from there, the new projects would just start with empty playfields.
Am I guessing right?
Dave
It's awesome you're looking into this :)
- Bert -???