[squeak-dev] The Trunk: Morphic-eem.1340.mcz
Chris Muller
asqueaker at gmail.com
Fri Jun 2 21:12:09 UTC 2017
Hey Eliot,
"Senders" refers to message-sends only, where as variable references are
browsed using the "browse references" command, (Command+Shift+N), which
does work for browsing references to inst-vars.
Best.
On Thu, Jun 1, 2017 at 3:22 PM, <commits at source.squeak.org> wrote:
> Eliot Miranda uploaded a new version of Morphic to project The Trunk:
> http://source.squeak.org/trunk/Morphic-eem.1340.mcz
>
> ==================== Summary ====================
>
> Name: Morphic-eem.1340
> Author: eem
> Time: 1 June 2017, 1:21:49.04056 pm
> UUID: 6117ed97-d114-454b-a38c-b35edc306c14
> Ancestors: Morphic-eem.1339
>
> Fix browseIt so that accesses to a selected inst var are browsed, not just senders of the accessor. Needs alternateBrowseIt preference disabled.
>
> =============== Diff against Morphic-eem.1339 ===============
>
> Item was changed:
> ----- Method: TextEditor>>browseIt (in category 'menu messages') -----
> browseIt
> "Launch a browser for the current selection, if appropriate"
>
> + | aSymbol anEntry brow maybeBrowseInstVar |
> - | aSymbol anEntry brow |
>
> Preferences alternativeBrowseIt ifTrue: [^ self browseClassFromIt].
>
> self lineSelectAndEmptyCheck: [^ self].
> - (aSymbol := self selectedSymbol) isNil ifTrue: [^ morph flash].
>
> + maybeBrowseInstVar :=
> + [| selectionString |
> + selectionString := self selection asString.
> + ([model selectedClass] on: Error do: [:ex|]) ifNotNil:
> + [:class|
> + (class allInstVarNames includes: selectionString) ifTrue:
> + [self systemNavigation
> + browseAllAccessesTo: selectionString
> + from: (class classThatDefinesInstanceVariable: selectionString).
> + ^nil]]].
> +
> + (aSymbol := self selectedSymbol) ifNil:
> + [maybeBrowseInstVar value.
> + ^morph flash].
> +
> aSymbol first isUppercase
> ifTrue:
> [anEntry := (model environment
> valueOf: aSymbol
> ifAbsent:
> [ self systemNavigation browseAllImplementorsOf: aSymbol.
> ^ nil]).
> anEntry ifNil: [^ morph flash].
> + (anEntry isBehavior and: [anEntry name == aSymbol]) ifFalse: "When is this ever false?"
> + [anEntry := anEntry class].
> - (anEntry isKindOf: Class)
> - ifFalse: [anEntry := anEntry class].
> brow := SystemBrowser default new.
> brow setClass: anEntry selector: nil.
> brow class
> openBrowserView: (brow openEditString: nil)
> label: 'System Browser']
> ifFalse:
> + [self systemNavigation browseAllImplementorsOf: aSymbol.
> + maybeBrowseInstVar value]!
> - [self systemNavigation browseAllImplementorsOf: aSymbol]!
>
>
More information about the Squeak-dev
mailing list
|