[squeak-dev] Re: MVC-Morphic refactoring, review needed

Andreas Raab andreas.raab at gmx.de
Wed Nov 25 05:33:57 UTC 2009


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.

Cheers,
   - Andreas



More information about the Squeak-dev mailing list