David T. Lewis uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-dtl.1368.mcz ==================== Summary ==================== Name: Morphic-dtl.1368 Author: dtl Time: 17 November 2017, 10:55:24.391819 pm UUID: b943fc05-ae9e-4f37-bb38-8c2cd541d239 Ancestors: Morphic-dtl.1367 Remove unnecessary references to global World. =============== Diff against Morphic-dtl.1367 =============== Item was changed: ----- Method: MorphHierarchy class>>openOrDelete (in category 'opening') ----- openOrDelete | oldMorph | + oldMorph := Project current world submorphs - oldMorph := World submorphs detect: [:each | each hasProperty: #morphHierarchy] ifNone: [| newMorph | newMorph := self new asMorph. newMorph bottomLeft: ActiveHand position. newMorph openInWorld. newMorph isFullOnScreen ifFalse: [newMorph goHome]. ^ self]. "" oldMorph delete! Item was changed: ----- Method: MorphHierarchy>>roots (in category 'accessing') ----- roots + "Answer the roots for the Object Hierarchy, that means answer the world" + ^ {MorphListItemWrapper with: Project current world}! - "Answer the roots for the Object Hierarchy, that means answer the World" - ^ {MorphListItemWrapper with: World}! Item was changed: ----- Method: MorphHierarchy>>selected: (in category 'accessing') ----- selected: aMorphListItemWrapper "Change the selected object" | newSelection | aMorphListItemWrapper isNil ifTrue: [^ self]. newSelection := aMorphListItemWrapper withoutListWrapper. + newSelection == Project current world selectedObject - newSelection == World selectedObject ifTrue: [newSelection removeHalo] ifFalse: [newSelection addHalo]. self changed: #selected! Item was changed: ----- Method: PasteUpMorph>>useRoundedCorners (in category 'accessing') ----- useRoundedCorners "Somewhat special cased because we do have to fill Display for this" super useRoundedCorners. + self == self world ifTrue:[Display bits primFill: 0]. "done so that we *don't* get a flash"! - self == World ifTrue:[Display bits primFill: 0]. "done so that we *don't* get a flash"! Item was changed: ----- Method: WorldState>>doDeferredUpdatingFor: (in category 'update cycle') ----- doDeferredUpdatingFor: aWorld "If this platform supports deferred updates, then make my canvas be the Display (or a rectangular portion of it), set the Display to deferred update mode, and answer true. Otherwise, do nothing and answer false. One can set the class variable DisableDeferredUpdates to true to completely disable the deferred updating feature." | properDisplay | PasteUpMorph disableDeferredUpdates ifTrue: [^ false]. (Display deferUpdates: true) ifNil: [^ false]. "deferred updates not supported" remoteServer ifNotNil:[ self assuredCanvas. ^true]. properDisplay := canvas notNil and: [canvas form == Display]. + aWorld == Project current world ifTrue: [ "this world fills the entire Display" - aWorld == World ifTrue: [ "this world fills the entire Display" properDisplay ifFalse: [ aWorld viewBox: Display boundingBox. "do first since it may clear canvas" self canvas: (Display getCanvas copyClipRect: Display boundingBox). ] ]. ^ true ! |
Free forum by Nabble | Edit this page |