Hi Eliot,

Does it require another hierarchy next to the owner hierarchy of morphs? Or should some submorphs simply not move when their owner is moved?

Should it be a Morphic feature or a Tools feature?

Can a window/widget/morph be  "dependent" on only one other (so the hierarchy is a tree) or also on multiple other? How does it behave if something depends on multiple things and one of them is closed? Are there other use cases than just closing? For example modal exclusiveness limited to a part of the hierarchy?

Kind regards,
Jakob



Eliot Miranda <eliot.miranda@gmail.com> schrieb am Mi., 25. Dez. 2019, 06:55:
Hi All, Hi Marcel,

    in implementing inspectors for the VMMaker I'm wanting to close all open inspectors associated with a simulation when the simulation window is closed.  I notice in SystemWindow>>delete there is non-generic code (a.k.a. a horrible hack) for the sketch editors associated palettes.  This badly needs rewriting to be generic.  So instead of 

delete
  ...
sketchEditor := self extantSketchEditor.
  ...
sketchEditor ifNotNil:
[sketchEditor deleteSelfAndSubordinates.
(thisWorld notNil 
 and: [(aPaintBox := thisWorld paintBoxOrNil) notNil]) ifTrue:
[aPaintBox delete]].

it reads something like

delete
  ...
dependentMorphs := self dependentMorphsOrNil.
  ...
dependentMorphs ifNotNil:
[dependentMorphs do: [:each| each deleteSelfAndSubordinates]].

then I can easily extend this to deal with additional inspector windows, instead of having code in the model to search for them.
_,,,^..^,,,_
best, Eliot