<div dir="ltr">I got confused, too.<div><br></div><div>But it&#39;s reason is that it&#39;s a cascade sent to a morph, not to TableLayout, like this:</div><div><div><br></div><div>aMorph layoutPolicy: TableLayout new;</div><div><span class="" style="white-space:pre">        </span>  listDirection: #leftToRight;</div><div><span class="" style="white-space:pre">        </span>  wrapCentering: #topLeft;</div><div><span class="" style="white-space:pre">        </span>  hResizing: #shrinkWrap;</div><div><span class="" style="white-space:pre">        </span>  vResizing: #shrinkWrap;</div><div><span class="" style="white-space:pre">        </span>  layoutInset: 2;</div><div><span class="" style="white-space:pre">        </span>  rubberBandCells: true</div></div><div><br></div><div>Karl</div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Apr 26, 2015 at 2:29 PM, Tobias Pape <span dir="ltr">&lt;<a href="mailto:Das.Linux@gmx.de" target="_blank">Das.Linux@gmx.de</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hey Karl<br>
<span class=""><br>
On 26.04.2015, at 05:56, <a href="mailto:commits@source.squeak.org">commits@source.squeak.org</a> wrote:<br>
<br>
&gt; Karl Ramberg uploaded a new version of Morphic to project The Trunk:<br>
&gt; <a href="http://source.squeak.org/trunk/Morphic-kfr.930.mcz" target="_blank">http://source.squeak.org/trunk/Morphic-kfr.930.mcz</a><br>
&gt;<br>
&gt; ==================== Summary ====================<br>
&gt;<br>
&gt; Name: Morphic-kfr.930<br>
&gt; Author: kfr<br>
&gt; Time: 26 April 2015, 7:56:20.732 am<br>
&gt; UUID: 719010c7-4822-d540-842d-0091f1df654d<br>
&gt; Ancestors: Morphic-kfr.929<br>
&gt;<br>
&gt; Added a missing semicolon<br>
&gt;<br>
&gt; =============== Diff against Morphic-kfr.929 ===============<br>
&gt;<br>
&gt; Item was changed:<br>
&gt; ----- Method: LayoutProperties&gt;&gt;stringWithLayout (in category &#39;table defaults&#39;) -----<br>
&gt; stringWithLayout<br>
&gt;       | defaultValues uniqueValues |<br>
&gt;       defaultValues := TableLayoutProperties new.<br>
&gt;       uniqueValues := self class allInstVarNames<br>
&gt;               select: [:title | (self instVarNamed: title)<br>
&gt;                                       ~= (defaultValues instVarNamed: title)].<br>
&gt;       ^ String<br>
&gt;               streamContents: [:aStream |<br>
&gt; +                     aStream nextPutAll: &#39;TableLayout new; &#39;.<br>
&gt; -                     aStream nextPutAll: &#39;TableLayout new &#39;.<br>
<br>
</span>can you explain why this is necessary?<br>
Why should subsequent messages go to the class instead of the instance?<br>
<br>
Best regards<br>
<span class="HOEnZb"><font color="#888888">        -Tobias<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
<br>
&gt;                       uniqueValues<br>
&gt;                               do: [:title | aStream nextPutAll: title;<br>
&gt;                                                nextPut: $:;<br>
&gt;                                                space;<br>
&gt;<br>
&gt;                                               print: (self instVarNamed: title).<br>
&gt;                                               (title = uniqueValues last)<br>
&gt;                                               ifTrue:[ aStream nextPut:$.]<br>
&gt;                                               ifFalse:[ aStream nextPut: $;; cr]<br>
&gt;                                               ]]!<br>
&gt;<br>
&gt;<br>
<br>
<br>
</div></div></blockquote></div><br></div>