[squeak-dev] The Trunk: ST80-ar.53.mcz

commits at source.squeak.org commits at source.squeak.org
Sat Sep 19 05:03:25 UTC 2009


Andreas Raab uploaded a new version of ST80 to project The Trunk:
http://source.squeak.org/trunk/ST80-ar.53.mcz

==================== Summary ====================

Name: ST80-ar.53
Author: ar
Time: 18 September 2009, 10:03:05 am
UUID: 6974d5c8-b0d7-0f46-a0ff-22437607078b
Ancestors: ST80-ar.52

Project refactoring: Provide MVCProject to represent 'classic' Smalltalk-80 environments.

=============== Diff against ST80-ar.52 ===============

Item was changed:
  ----- Method: ScreenController>>openMorphicProject (in category 'menu messages') -----
  openMorphicProject
  	"Open a morphic project from within a MVC project"
+ 	Smalltalk at: #MorphicProject ifPresent:[:mp| ProjectView open: mp new].!
- 	Smalltalk verifyMorphicAvailability ifFalse: [^ self].
- 	ProjectView open: Project newMorphic.
- !

Item was added:
+ ----- Method: MVCProject class>>convertOldProjects (in category 'class initialization') -----
+ convertOldProjects
+ 	"Convert old MVC projects to be MVCProjects"
+ 	Project allInstancesDo:[:p|
+ 		(p world isKindOf: ControlManager) 
+ 			ifTrue:[p primitiveChangeClassTo: self basicNew]].!

Item was added:
+ ----- Method: MVCProject>>initialize (in category 'initialize') -----
+ initialize
+ 	super initialize.
+ 	world := ControlManager new.!

Item was added:
+ ----- Method: MVCProject>>openProject: (in category 'initialize') -----
+ openProject: aProject
+ 	"Create a new for a new project in the context of the receiver"
+ 	ProjectView openAndEnter: aProject.!

Item was added:
+ ----- Method: MVCProject>>invalidate (in category 'display') -----
+ invalidate
+ 	"Invalidate the entire project so that a redraw will be forced later."
+ 	world "ScheduledControllers" unCacheWindows!

Item was changed:
  ----- Method: ScreenController>>openProject (in category 'menu messages') -----
  openProject 
  	"Create and schedule a Project."
+ 	ProjectView open: MVCProject new.!
- 
- 	| proj |
- 	Smalltalk at: #ProjectView ifPresent:
- 		[:c | proj := Project new.
- 		c open: proj].
- !

Item was added:
+ ----- Method: MVCProject>>subProjects (in category 'utilities') -----
+ subProjects
+ 	"Answer a list of all the subprojects  of the receiver. "
+ 	^(world controllersSatisfying: [:m | m model isKindOf: Project]) 
+ 		collect: [:c | c model]!

Item was added:
+ Project subclass: #MVCProject
+ 	instanceVariableNames: ''
+ 	classVariableNames: ''
+ 	poolDictionaries: ''
+ 	category: 'ST80-Support'!
+ 
+ !MVCProject commentStamp: 'ar 9/18/2009 21:38' prior: 0!
+ Holds MVC Projects. 
+ 
+ Currently in transition from the hodge-podge in Project, it stores its control manager in the "world" instance variable inherited from Project.!

Item was added:
+ ----- Method: MVCProject>>displaySizeChanged (in category 'display') -----
+ displaySizeChanged
+ 	"Inform the current project that its display size has changed"
+ 	world "ScheduledControllers" restore; searchForActiveController!

Item was added:
+ ----- Method: MVCProject>>restore (in category 'display') -----
+ restore
+ 	"Redraw the entire Project"
+ 	world "ScheduledControllers" restore.!




More information about the Squeak-dev mailing list