* | m |* * m := AlignmentMorph new.* * * "create / put all morphs internal in this morph with their composition as required" * * * m layoutFrame: self panelWindowLayoutFrame. * * m hResizing: #spaceFill; vResizing: #spaceFill. * * primaryWindow addMorph: m . * "Create the layout spec viz LayoutFrame fractions: ( 0@0 corner: 1@1) offsets: ( 4@4 corner: -4 @ -4)." "primaryWindow can be SystemWindow new or any others from StandardWindow, Morph, PluggableDialogWindow et als: On Thu, Jun 13, 2013 at 6:01 AM, Eliot Miranda <eliot.miranda@gmail.com>wrote:
Further, the current SystemWindow>>addMorph:fullFrame: assumes thick borders between components, for pane splitters. There used to be an accessor on SystemWindow, allowPaneSplitters:, that could be used to discard pane splitters and their thick borders, but this was ditched.
So if I want a window containing lots of morphs with no splitters and no thick borders how do I do it?
a) Should I use a container morph and add this to the SystemWindow?
b) should I add an override to SystemWindow that does what addMorph:fullFrame: (or addMorph:frame:) does without adding the thick borders?
c) should I add back the allowPaneSplitters[:] accessor and modify SystemWindow>>addMorph:fullFrame: to take account of allowPaneSplitters == false?
a) seems the right approach, but when I use either a Morph or a BorderedMorph as my container I don't get things laid out correctly in that morph. Is there a standard container morph that does layout correctly? If so, what is it?
c) is easy to do, but folks have to maintain it (it's no more than a guard around all the frae manipulation in addMorph:fullFrame:).