<div dir="ltr">Hi Chris,<div class="gmail_extra"><br><br><div class="gmail_quote">On Sat, Jul 26, 2014 at 9:53 AM, Chris Muller <span dir="ltr">&lt;<a href="mailto:asqueaker@gmail.com" target="_blank">asqueaker@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">
<div class=""><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

<div>&gt; &gt; Hi All,<br></div><div>
&gt; &gt;<br>
&gt; &gt;     I depend heavily on fileOutAll in method list browsers.  For example, I&#39;m trying to create versions of the VM&#39;s boolean cheat code for the Sista bytecode set and do this by filing out the code for the Newspeak set and editing it.  I tried to do this using &quot;self systemNavigation browseAllSelect: [:m| (&#39;*ooleanCheat*V*&#39; match: m selector) or: [m sendsSelector: #booleanCheatV4:]]&quot; to get a method list browser.  Then I was expecting to be able to use file out with nothing in the list selected.  This files out all methods in the list but...<br>




&gt; &gt;<br>
&gt; &gt; Deselection is broken!  I can&#39;t deselect the first item and hence can only file out a single definition .  Will whoever changed this please restore it asap? (in trunk)<br>
&gt; &gt;<br>
&gt; &gt;<br>
</div><div>&gt; &gt; Hi again, hey, I just realized!  There is a way to deselect in the MessageTrace.  It&#39;s called &quot;Invert Level Selection&quot; and its on the &quot;more&quot; menu (Shift+yellow click).<br>

&gt; &gt;<br>
&gt; &gt; Hot key for it is Command+Shift+I (capital &quot;eye&quot;).<br>
&gt; &gt;<br>
&gt;<br>
</div>&gt; Wasn&#39;t that ?DoIt and invoke the inspector? ?<br></blockquote><div><br></div></div><div>No, that&#39;s only from a code pane.  We&#39;re talking about from the upper pane of a MessageTrace or MessageSet.</div>


<div>
<br></div><div>But now I see I misspoke -- because I had been experimenting with Eliots question from a MessageTrace with only one message it it.</div><div><br></div><div>This is something I&#39;ve wnated fixed for a long time, I&#39;ll see if I can spend a little time wiht it today and solve it.</div>



<div><br></div><div>BTW, why is it intuitive at all that NO SELECTION means ALL SELECTION for filing out?  Talk about unintuitive -- THAT sounds like it would be a bug in itself but, whatever..</div></div></div></div></blockquote>


<div><br></div></div><div>Nonsense ;-)  A selection in a list means one thing in the list.  What else can nothing in the list be interpreted as? </div></div></div></div></blockquote><div><br></div></div><div>That&#39;s a logical choice for the browser that only supports 0-or-1 selection.  But the MessageTrace browser only currently supports 1-to-many selection, so to file them all out you would simply select them all.</div>
</div></div></div></blockquote><div><br></div><div>When I use multiple select followed by fileOut in the message trace only the first selection is printed out.  So multiple select is broken at least for file out.</div><div>
<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">

<div>In the latter case, What-Is-Selected = What-Is-Filed-Out, which is intuitive and consistent.  In the former case, the user has to make the translation that &quot;Zero-Selection = All-Filed-Out&quot; which puts the UI&#39;s behavior briefly into their cognitive view (a higher level than the intuitive level).  That&#39;s all I meant.<br>
</div></div></div></div></blockquote><div><br></div><div>Except that, at least in the case of fileOut, multiple select isn&#39;t observed.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div class=""><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">
<div> It is either nothing selected or &quot;the list&quot;.  Of course it&#39;s intuitive. If one says &quot;file out&quot; to a list of items it is natural for that command to apply to the whole list.  You&#39;re not seeing the trees for the forest.</div>

<div>
<div> <br></div></div></div></div></div></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr">

<div class="gmail_extra"><div class="gmail_quote"><div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">




To focus on Eliot&#39;s original question: The deselection mechanism works<br>
in Squeak4.5-13352.image. It does not work in trunk now.<br></blockquote><div><br></div></div><div>No, nothing has changed other than the traceMessages preference being set, which is way more important than occasionally filing out methods of a list.</div>


</div></div></div></blockquote><div><br></div></div><div>It&#39;s not about what is more important.  It is about /not breaking things/.  </div></div></div></div></blockquote><div><br></div></div><div>Eliot, I&#39;m sorry to repeat myself but, _nothing has changed_.  Nothing is broken that wasn&#39;t &quot;broken&quot; before.<br>

</div><div><br></div><div>MessageSet is a 0-or-1 selection, period.  MessageTrace selection is 1-to-many and has been for many years.  You could very easily select them all and then file them out (and, I&#39;m sorry I didn&#39;t mention that before!).  In spite of that easy work-around, I offered in my last note to spend time looking into it MessageTrace supporting 0-to-many selection.</div>
<div class="">
<div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">

<div>And your value judgement that trace messages is way more important is just that, a value judgement.</div></div></div></div></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div> Trace messages drives me mad.  There is no back button.  If there was a back button then it could be helpful, but without a back button it is hugely irritating much of the time.  i.e. &quot;I want a list of senders of foo; ok, got the list, now do a whole lot of reading based around that. Oh s**t, I juts drilled down and now my original list is nested and I&#39;ve lost my context, and... there&#39;s no back button&quot;.</div>

</div></div></div></blockquote><div><br></div></div><div>No browser in Squeak has a &quot;back button.&quot;  Squeak&#39;s UI has always been that you can navigate FROM anywhere, TO anywhere, instantly, which is multifold more productive than breadcrumbs and modal browsing.  For the case above, your &quot;back button&quot; would be simply Command+d, or the up-arrow.  Did you even try that?</div>

<div><br></div><div>Makes me wonder if you&#39;ve given MessageTrace a fair-shake..  :(</div><div class=""><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div>Chris, you can&#39;t just change the tools to suit your whim because you&#39;re release manager.  </div></div></div></div></blockquote><div><br></div>
</div><div>
4.5 had a very deliberately selected collection of productivity-improvements to the IDE by addressing long-standing issues that have plagued Smalltalk IDE&#39;s since the 1980&#39;s, like window-proliferation.  It&#39;s clear you prefer modal browsing, and possibly why you think they were &quot;whimsical&quot; changes.  They were not.<br>

</div><div class=""><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra">

<div class="gmail_quote"><div>The tools need to improve without breaking old workflows.<br></div></div></div></div></blockquote><div><br></div></div><div>I hope you now agree, no workflow was &quot;broken&quot;.  You were just so accustomed to &quot;Zero Selection = All Selection&quot; that it didn&#39;t occur to us that &quot;All selection = All selection&quot;.  :)</div>

<div><br></div><div>Dude, I&#39;d like to work on the upgrades you suggested for the mc history.  Since it&#39;s clear you don&#39;t like MessageTrace anyway, you now have TWO workarounds, and since I assume you&#39;ll just change your preference setting, I&#39;m gonna go back to working on those mc history improvements rather than fiddle with MessageTrace to make it 0-to-many...  Okay?</div>
</div></div></div></blockquote><div><br></div><div>It&#39;s OK.  But the issue with MessageSet was that the BrowserRequestor did break no-select fileOut by, when augmenting a menu in a message set with nothing selected, prompting for a selector and selecting what ever the cursor was pointing at in the list.  I fixed this in Monticello-eem.595.</div>
<div><br></div><div>So I&#39;m sort-of happy in that I have no-select fileOutAll working again in the message set.  But I don&#39;t have it working in message trace, and the message trace has no back button.</div><div><br>
</div><div>If message set had a back button and observed multiple-select for the operations it provides I /would/ prefer it over message set.  It ain&#39;t there yet.</div><div><br></div><div>Forgive the criticism.  It is not meant to be harsh.</div>
<div><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra">
<div class="gmail_quote"><div class=""><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra">
<div class="gmail_quote"><div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">
<div>Deselecting with the Control key is broken in 4.5 and for a long time before that.  As I said, we should focus on letting that &quot;isControlled&quot; input var to <span style="font-size:12.727272033691406px;font-family:arial,sans-serif">MessageTrace&gt;&gt;#</span><span style="font-size:12.727272033691406px;font-family:arial,sans-serif">toggleSelectionAt:shifted:</span><span style="font-size:12.727272033691406px;font-family:arial,sans-serif">controlled: </span>be able to come in as a &quot;true&quot; and then everything should just work...<br>


</div>
<div><br></div><div>I&#39;ll see if there&#39;s an easy fix.</div></div></div></div></blockquote></div></div><span><font color="#888888">-- <br>best,<div>Eliot</div></font></span></div></div></blockquote></div></div></div>
</div></blockquote></div>-- <br>Aloha,<div>Eliot</div>
</div></div>