[squeak-dev] The Trunk: System-dtl.181.mcz

commits at source.squeak.org commits at source.squeak.org
Sat Nov 28 22:27:58 UTC 2009


David T. Lewis uploaded a new version of System to project The Trunk:
http://source.squeak.org/trunk/System-dtl.181.mcz

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

Name: System-dtl.181
Author: dtl
Time: 28 November 2009, 6:23:28 am
UUID: cd5e027f-af69-42b3-a6bc-47e49e1b5af8
Ancestors: System-kb.180

Update project class>>deletingProject: to remove explicit dependency on ProjectViewMorph

=============== Diff against System-kb.180 ===============

Item was changed:
  ----- Method: Project class>>deletingProject: (in category 'utilities') -----
  deletingProject: outgoingProject
  
+ 	| pvmClass |
+ 	pvmClass := Smalltalk at: #ProjectViewMorph ifAbsent: [nil].
  	ImageSegment allSubInstancesDo: [:seg |
  		seg ifOutPointer: outgoingProject thenAllObjectsDo: [:obj |
+ 			(obj isKindOf: pvmClass) ifTrue: [obj deletingProject: outgoingProject.  obj abandon].
- 			(obj isKindOf: ProjectViewMorph) ifTrue: [
- 				obj deletingProject: outgoingProject.  obj abandon].
  			(obj isKindOf: Project) ifTrue: [obj deletingProject: outgoingProject]]].
+ 	self allProjects do: [:p | p deletingProject: outgoingProject].	"ones that are in"
+ 	pvmClass ifNotNil: [
+ 		pvmClass allSubInstancesDo: [:p | 
+ 			p deletingProject: outgoingProject.
+ 			p project == outgoingProject ifTrue: [p abandon]]].
- 	Project allProjects do: [:p | p deletingProject: outgoingProject].	"ones that are in"
- 	ProjectViewMorph allSubInstancesDo: [:p | 
- 		p deletingProject: outgoingProject.
- 		p project == outgoingProject ifTrue: [p abandon]].
- 
  	AllProjects := self allProjects copyWithout: outgoingProject.!




More information about the Squeak-dev mailing list