[squeak-dev] Event Theatre in Object Catalog sparks DNU in 6.0-trunk

Bob Arning arning315 at comcast.net
Sun Feb 18 02:36:25 UTC 2018


PasteUpMorph used to say:


displayWorld

     self outermostWorldMorph privateOuterDisplayWorld


which would work if you remove the "self deprecated" from 
#privateOuterDisplayWorld


On 2/17/18 5:05 PM, David T. Lewis wrote:
> This is an interesting one.
>
> We have EventRecordingSpace class>>newStandalone that is trying to create a new
> instance "capable of standing by itself as a usable morph."
>
> This makes an instance with a contentArea that is a Worldlet. Presumabaly that
> Wordlet is supposed to be and "independent" thing too. But then we get to
> Worldlet(PasteUpMorph)>>displayWorld, in which the Worldlet tries to use its
> worldState to display submorphs, but it has no worldState, so boom.
>
> It may be necessary to look at an older image to figure out where this is
> going wrong.
>
> Dave
>
> p.s. Tim, thanks for posting this question :-)
>
>
> On Sat, Feb 17, 2018 at 11:27:53AM -0800, Tm Jhnsn wrote:
>> Hi all,
>>
>> I am really enjoying the latest versions of Squeak.
>>
>> In trying out 6.0-alpha with trunk updates, I found a DNU when doing normal Morphic tasks.  Sorry if this has already been reported.
>>
>> Should be repeatable:
>>
>> - open fresh image
>> - make flaps appear (open a new Morphic project, or World menu -> flaps -> show shared tabs)
>> - click Widgets
>> - drag out an Object Catalog
>> - click Multimedia
>>
>> Something is going on within the Event Theatre item's initialization.
>>
>> Seems to be that the "tutorial" Event Theatre Worldlet has a worldState instance variable which is nil, but it is being sent #displayWorld:submorphs: by PasteUpMorph>>#displayWorld.  Interestingly, Worldlet's class comments specifically suggest instances don't have their own worldState.  :D
>>
>> Other buttons in the Object Catalog did not result in a DNU for me.
>>
>> ...stack follows:
>>
>> UndefinedObject(Object)>>doesNotUnderstand: #displayWorld:submorphs:
>> Worldlet(PasteUpMorph)>>displayWorld
>> [] in Worldlet>>installFlaps
>> OrderedCollection>>do:
>> Worldlet>>installFlaps
>> EventRecordingSpace>>addSuppliesFlap
>> EventRecordingSpace>>initialize
>> EventRecordingSpace(Morph)>>initializeToStandAlone
>> EventRecordingSpace class(Morph class)>>newStandAlone
>> PartsBin class>>thumbnailForQuad:color:
>> [] in PartsBin>>listDirection:quadList:buttonClass:
>> OrderedCollection>>do:
>> PartsBin>>listDirection:quadList:buttonClass:
>> PartsBin>>listDirection:quadList:
>> ObjectsTool>>installQuads:fromButton:
>> [] in ObjectsTool>>showCategory:fromButton:
>> BlockClosure>>ensure:
>> CursorWithMask(Cursor)>>showWhile:
>> ObjectsTool>>showCategory:fromButton:
>> SimpleButtonMorph>>doButtonAction
>> SimpleButtonMorph>>mouseDown:
>> SimpleButtonMorph(Morph)>>handleMouseDown:
>> MouseButtonEvent>>sentTo:
>> SimpleButtonMorph(Morph)>>handleEvent:
>> MorphicEventDispatcher>>dispatchEvent:withHandler:withMorph:
>> [] in MorphicEventDispatcher>>dispatchMouseDown:with:
>> BlockClosure>>ensure:
>> MorphicEventDispatcher>>dispatchMouseDown:with:
>> MorphicEventDispatcher>>dispatchEvent:with:
>> SimpleButtonMorph(Morph)>>processEvent:using:
>> [] in MorphicEventDispatcher>>dispatchEvent:toSubmorphsOf:
>> Array(SequenceableCollection)>>do:
>> AlignmentMorph(Morph)>>submorphsDo:
>> MorphicEventDispatcher>>dispatchEvent:toSubmorphsOf:
>> MorphicEventDispatcher>>dispatchEvent:withHandler:withMorph:
>> [] in MorphicEventDispatcher>>dispatchMouseDown:with:
>> BlockClosure>>ensure:
>> MorphicEventDispatcher>>dispatchMouseDown:with:
>> MorphicEventDispatcher>>dispatchEvent:with:
>> AlignmentMorph(Morph)>>processEvent:using:
>> [] in MorphicEventDispatcher>>dispatchEvent:toSubmorphsOf:
>> Array(SequenceableCollection)>>do:
>> ObjectsTool(Morph)>>submorphsDo:
>> MorphicEventDispatcher>>dispatchEvent:toSubmorphsOf:
>> MorphicEventDispatcher>>dispatchEvent:withHandler:withMorph:
>> [] in MorphicEventDispatcher>>dispatchMouseDown:with:
>> BlockClosure>>ensure:
>> MorphicEventDispatcher>>dispatchMouseDown:with:
>> MorphicEventDispatcher>>dispatchEvent:with:
>> ObjectsTool(Morph)>>processEvent:using:
>> [] in MorphicEventDispatcher>>dispatchEvent:toSubmorphsOf:
>> Array(SequenceableCollection)>>do:
>> PasteUpMorph(Morph)>>submorphsDo:
>> MorphicEventDispatcher>>dispatchEvent:toSubmorphsOf:
>> MorphicEventDispatcher>>dispatchEvent:withHandler:withMorph:
>> [] in MorphicEventDispatcher>>dispatchMouseDown:with:
>> BlockClosure>>ensure:
>> MorphicEventDispatcher>>dispatchMouseDown:with:
>> MorphicEventDispatcher>>dispatchEvent:with:
>> PasteUpMorph(Morph)>>processEvent:using:
>> [] in PasteUpMorph>>processEvent:using:
>> BlockClosure>>ensure:
>> PasteUpMorph>>processEvent:using:
>> PasteUpMorph(Morph)>>processEvent:
>> [] in [] in [] in HandMorph>>sendEvent:focus:clear:
>> BlockClosure>>ensure:
>> MouseButtonEvent(MorphicEvent)>>becomeActiveDuring:
>> [] in [] in HandMorph>>sendEvent:focus:clear:
>> BlockClosure>>ensure:
>> HandMorph>>becomeActiveDuring:
>> [] in HandMorph>>sendEvent:focus:clear:
>> BlockClosure>>ensure:
>> PasteUpMorph>>becomeActiveDuring:
>> HandMorph>>sendEvent:focus:clear:
>> HandMorph>>sendMouseEvent:
>> HandMorph>>handleEvent:
>> HandMorph>>processEvents
>> [] in WorldState>>doOneCycleNowFor:
>> Array(SequenceableCollection)>>do:
>> WorldState>>handsDo:
>> WorldState>>doOneCycleNowFor:
>> WorldState>>doOneCycleFor:
>> PasteUpMorph>>doOneCycle
>> [] in MorphicProject>>spawnNewProcess
>> [] in BlockClosure>>newProcess
>>
>>
>> Thanks,
>> Tim
>>
>>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20180217/ab7d1fbc/attachment.html>


More information about the Squeak-dev mailing list