Frank Shearar uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-fbs.697.mcz==================== Summary ====================
Name: Morphic-fbs.697
Author: fbs
Time: 31 October 2013, 10:22:06.367 pm
UUID: 45275a98-c848-ce41-95b6-94a3b626a4c8
Ancestors: Morphic-cmm.696
Step 1 of moving control over display depth to the UIManagers.
=============== Diff against Morphic-cmm.696 ===============
Item was added:
+ ----- Method: MorphicUIManager>>newDisplayDepthNoRestore: (in category 'display') -----
+ newDisplayDepthNoRestore: pixelSize
+ "Change depths. Check if there is enough space!! , di"
+ | area need |
+ pixelSize = Display depth ifTrue: [^ self "no change"].
+ pixelSize abs < Display depth ifFalse:
+ ["Make sure there is enough space"
+ area := Display boundingBox area. "pixels"
+
+ need := (area * (pixelSize abs - Display depth) // 8) "new bytes needed"
+ + Smalltalk lowSpaceThreshold.
+ (Smalltalk garbageCollectMost <= need
+ and: [Smalltalk garbageCollect <= need])
+ ifTrue: [self error: 'Insufficient free space']].
+ Display setExtent: Display extent depth: pixelSize.
+
+ DisplayScreen startUp!
Item was added:
+ ----- Method: MorphicUIManager>>restoreDisplay (in category 'display') -----
+ restoreDisplay
+ "Restore the bits on Display"
+ Project current ifNotNil:[:p| p invalidate; restore].!
Item was added:
+ ----- Method: MorphicUIManager>>restoreDisplayAfter: (in category 'display') -----
+ restoreDisplayAfter: aBlock
+ "Evaluate the block, wait for a mouse click, and then restore the screen."
+
+ aBlock value.
+ Sensor waitButton.
+ self restore.!