[etoys-dev] Project refactoring
bert at freudenbergs.de
Wed Nov 25 04:59:23 EST 2009
There is a discussion underway on squeak-dev about refactoring Projects. Since we intend to eventually use this for Etoys, it would be good to join the fun now rather than deal with the fallout later.
Thread starts here:
E.g. I'm not sure if in Etoys we want projects without a project view as Andreas suggested below.
- Bert -
Begin forwarded message:
> From: Andreas Raab <andreas.raab at gmx.de>
> Date: 25. November 2009 06:33:57 MEZ
> To: The general-purpose Squeak developers list <squeak-dev at lists.squeakfoundation.org>
> Subject: [squeak-dev] Re: MVC-Morphic refactoring, review needed
> Reply-To: The general-purpose Squeak developers list <squeak-dev at lists.squeakfoundation.org>
> David T. Lewis wrote:
>>> Instead, what we should do is to make it so that deletion of projects is explicit, via the menu action called "close project" (with confirmation etc). Then you can get rid of all of that logic - it's always safe to delete a project view since the underlying project will only be deleted when you explicitly choose to.
>> I'm not sure I understand. Are you thinking of a menu action in the
>> world menu of the current project, or a menu action in the window menu
>> of the view on the project? (Or something that already exists that
>> I am overlooking?)
> The former. I think the "Projects" menu should say:
> New Project
> Load Project
> Save Project
> Close Project
> and "Close Project" is the only action that ever nukes the project for real. Project views are just project views, they can be deleted without any further implications for the original project.
>> I think that it is still necessary to ensure that the project
>> is finalized when the last open view has been closed, at least in
>> the case of a Morphic project with Players and Wonderlands (I don't
>> know what the issues are, but the cleanup code must be there for
>> a reason).
> My point is that a project can exist without any currently visible project views. The project remains accessible via the "jump to project" menu and its "primary" reference is through Project>>allProjects.
>> So if the user closes the last open view on a project, I expect that
>> we still want the project to be automatically finalized, and we would
>> not want finalization to occur unless the view being closed was the
>> last open view on that project.
>> Does that sound right?
> Not quite (from my perspective - I'm not saying you have to agree :-) Views are views, they're not the real thing. We could conceivably offer to close the project when the last view is closed, but going forward I think we'll end up with more projects that have no dedicated views and are only accessible via places like the "jump to" menu.
> - Andreas
More information about the etoys-dev