The Trunk: Morphic-ar.283.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

The Trunk: Morphic-ar.283.mcz

commits-2
Andreas Raab uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-ar.283.mcz

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

Name: Morphic-ar.283
Author: ar
Time: 3 January 2010, 2:16:51 am
UUID: 357490e2-cd3c-0844-b1d7-d079fc35d2d5
Ancestors: Morphic-ul.282

Make Nebraska unloadable. Some methods in Worldstate need to remain in the Morphic package otherwise things blow up after unloading Nebraska.

=============== Diff against Morphic-ul.282 ===============

Item was added:
+ ----- Method: WorldState>>remoteServer: (in category 'Nebraska support') -----
+ remoteServer: aNebraskaServer
+ remoteServer ifNotNil:[remoteServer destroy].
+ remoteServer := aNebraskaServer.
+ self canvas: nil.!

Item was added:
+ ----- Method: WorldState>>assuredRemoteCanvas (in category 'Nebraska support') -----
+ assuredRemoteCanvas
+ | newCanvas |
+ (self canvas notNil) ifTrue: [ ^self canvas ].
+ newCanvas := MultiCanvas new.
+ newCanvas depth: 32.
+ newCanvas extent: viewBox extent.
+ self remoteCanvasesDo: [ :c | newCanvas addCanvas: c ].
+ newCanvas addCanvas: Display getCanvas.
+
+ "newCanvas := CachingCanvas on: newCanvas."
+ self canvas: newCanvas.
+ ^newCanvas!

Item was added:
+ ----- Method: WorldState>>remoteCanvasesDo: (in category 'Nebraska support') -----
+ remoteCanvasesDo: aBlock
+ remoteServer ifNil:[^self].
+ ^remoteServer clients do:[:client| aBlock value: client canvas]!

Item was added:
+ ----- Method: WorldState>>addRemoteCanvas: (in category 'Nebraska support') -----
+ addRemoteCanvas: c
+ self canvas: nil. "force recomputation"!

Item was added:
+ ----- Method: WorldState>>removeRemoteCanvas: (in category 'Nebraska support') -----
+ removeRemoteCanvas: c
+ self canvas: nil. "force withdrawal of remote from MultiCanvas"
+ !

Item was added:
+ ----- Method: WorldState>>remoteServer (in category 'Nebraska support') -----
+ remoteServer
+ ^remoteServer!

Item was added:
+ ----- Method: WorldState>>releaseRemoteServer (in category 'Nebraska support') -----
+ releaseRemoteServer
+ "My server has been transferred to some other world. Release pending references"
+ remoteServer := nil.
+ self canvas: nil.!