<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Jun 2, 2017 at 3:34 PM, Chris Muller <span dir="ltr"><<a href="mailto:asqueaker@gmail.com" target="_blank">asqueaker@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Ah, for a moment I thought you added it to "senders".<br></blockquote><div><br></div><div>It's specifically there so that inst var accesses are browsed as well as senders of the accessor, not just the accessor.  What used to happen is that if you selected an inst var and did "browse it" you;d only get senders of the inst var if it was a message selector.  Not that useful given "senders". </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="HOEnZb"><div class="h5"><br>
<br>
On Fri, Jun 2, 2017 at 5:04 PM, Eliot Miranda <<a href="mailto:eliot.miranda@gmail.com">eliot.miranda@gmail.com</a>> wrote:<br>
> Hi Chris,<br>
><br>
> On Fri, Jun 2, 2017 at 2:12 PM, Chris Muller <<a href="mailto:asqueaker@gmail.com">asqueaker@gmail.com</a>> wrote:<br>
>><br>
>> Hey Eliot,<br>
>><br>
>> "Senders" refers to message-sends only, where as variable references are<br>
>> browsed using the "browse references" command, (Command+Shift+N), which<br>
>> does work for browsing references to inst-vars.<br>
><br>
><br>
> Some users prefer the "browse it" (Apple-b,Alt-b) command, which is achieved<br>
> by disabling "alternate browse it", in which case the below is operative.<br>
><br>
>><br>
>><br>
>> Best.<br>
>><br>
>> On Thu, Jun 1, 2017 at 3:22 PM,  <<a href="mailto:commits@source.squeak.org">commits@source.squeak.org</a>> wrote:<br>
>> > Eliot Miranda uploaded a new version of Morphic to project The Trunk:<br>
>> > <a href="http://source.squeak.org/trunk/Morphic-eem.1340.mcz" rel="noreferrer" target="_blank">http://source.squeak.org/<wbr>trunk/Morphic-eem.1340.mcz</a><br>
>> ><br>
>> > ==================== Summary ====================<br>
>> ><br>
>> > Name: Morphic-eem.1340<br>
>> > Author: eem<br>
>> > Time: 1 June 2017, 1:21:49.04056 pm<br>
>> > UUID: 6117ed97-d114-454b-a38c-<wbr>b35edc306c14<br>
>> > Ancestors: Morphic-eem.1339<br>
>> ><br>
>> > Fix browseIt so that accesses to a selected inst var are browsed, not<br>
>> > just senders of the accessor.  Needs alternateBrowseIt preference disabled.<br>
>> ><br>
>> > =============== Diff against Morphic-eem.1339 ===============<br>
>> ><br>
>> > Item was changed:<br>
>> >   ----- Method: TextEditor>>browseIt (in category 'menu messages') -----<br>
>> >   browseIt<br>
>> >         "Launch a browser for the current selection, if appropriate"<br>
>> ><br>
>> > +       | aSymbol anEntry brow maybeBrowseInstVar |<br>
>> > -       | aSymbol anEntry brow |<br>
>> ><br>
>> >         Preferences alternativeBrowseIt ifTrue: [^ self<br>
>> > browseClassFromIt].<br>
>> ><br>
>> >         self lineSelectAndEmptyCheck: [^ self].<br>
>> > -       (aSymbol := self selectedSymbol) isNil ifTrue: [^ morph flash].<br>
>> ><br>
>> > +       maybeBrowseInstVar :=<br>
>> > +               [| selectionString |<br>
>> > +               selectionString := self selection asString.<br>
>> > +                ([model selectedClass] on: Error do: [:ex|]) ifNotNil:<br>
>> > +                       [:class|<br>
>> > +                       (class allInstVarNames includes:<br>
>> > selectionString) ifTrue:<br>
>> > +                               [self systemNavigation<br>
>> > +                                       browseAllAccessesTo:<br>
>> > selectionString<br>
>> > +                                       from: (class<br>
>> > classThatDefinesInstanceVariab<wbr>le: selectionString).<br>
>> > +                                ^nil]]].<br>
>> > +<br>
>> > +       (aSymbol := self selectedSymbol) ifNil:<br>
>> > +               [maybeBrowseInstVar value.<br>
>> > +                ^morph flash].<br>
>> > +<br>
>> >         aSymbol first isUppercase<br>
>> >                 ifTrue:<br>
>> >                         [anEntry := (model environment<br>
>> >                                 valueOf: aSymbol<br>
>> >                                 ifAbsent:<br>
>> >                                         [ self systemNavigation<br>
>> > browseAllImplementorsOf: aSymbol.<br>
>> >                                         ^ nil]).<br>
>> >                         anEntry ifNil: [^ morph flash].<br>
>> > +                       (anEntry isBehavior and: [anEntry name ==<br>
>> > aSymbol]) ifFalse: "When is this ever false?"<br>
>> > +                               [anEntry := anEntry class].<br>
>> > -                       (anEntry isKindOf: Class)<br>
>> > -                               ifFalse:        [anEntry := anEntry<br>
>> > class].<br>
>> >                         brow := SystemBrowser default new.<br>
>> >                         brow setClass: anEntry selector: nil.<br>
>> >                         brow class<br>
>> >                                 openBrowserView: (brow openEditString:<br>
>> > nil)<br>
>> >                                 label: 'System Browser']<br>
>> >                 ifFalse:<br>
>> > +                       [self systemNavigation browseAllImplementorsOf:<br>
>> > aSymbol.<br>
>> > +                        maybeBrowseInstVar value]!<br>
>> > -                       [self systemNavigation browseAllImplementorsOf:<br>
>> > aSymbol]!<br>
>> ><br>
>> ><br>
>><br>
><br>
><br>
><br>
> --<br>
> _,,,^..^,,,_<br>
> best, Eliot<br>
><br>
><br>
><br>
<br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><span style="font-size:small;border-collapse:separate"><div>_,,,^..^,,,_<br></div><div>best, Eliot</div></span></div></div></div>
</div></div>