@@ -58,25 +58,54 @@ GtPharoSourceCoder >> addBaselinePackageMenuItemsFor: anAst to: coderAddOns from
58
58
{ #category : #' *GToolkit-Pharo-Coder-AddOns' }
59
59
GtPharoSourceCoder >> addClassMenuAddOnsAst: anAst to: coderAddOns from: aCoderViewModel [
60
60
< gtCoderContextMenuAddOns: 13 >
61
+
62
+ (self extractableNodesFrom: aCoderViewModel)
63
+ ifNotEmpty: [ :nodes |
64
+ self
65
+ addClassNodeLinkMenuAddOnsTo: coderAddOns
66
+ node: nodes first
67
+ selector: #browseBehaviorAt:requesterObject:
68
+ shortcut: GtSourceCoderBrowseBehaviorShortcut new
69
+ requesterObject: aCoderViewModel ]
70
+ ]
71
+
72
+ { #category : #' *GToolkit-Pharo-Coder-AddOns' }
73
+ GtPharoSourceCoder >> addClassNodeLinkMenuAddOnsTo: coderAddOns node: node selector: sel shortcut: aShortcut requesterObject: aRequester [
61
74
| foundClass |
75
+
76
+
77
+ node isVariable ifFalse: [ ^ self ].
78
+ self
79
+ variableNodeToBehavior: node
80
+ ifFound: [ :aClass | foundClass := aClass ]
81
+ ifNone: [ ^ self ].
82
+
83
+ coderAddOns
84
+ addContextMenuItem: (self
85
+ createLabel: aShortcut name
86
+ description: foundClass name)
87
+ hover: (self highlightNodeBlock: node)
88
+ leave: self removeHighlightBlock
89
+ action: [ :aTextualViewModel |
90
+ self
91
+ perform: sel
92
+ with: node startPosition
93
+ with: aRequester ]
94
+ shortcutKey: aShortcut combinationForPlatform gtDisplayString
95
+ ]
96
+
97
+ { #category : #' *GToolkit-Pharo-Coder-AddOns' }
98
+ GtPharoSourceCoder >> addClassReferencesMenuAddOnsAst: anAst to: coderAddOns from: aCoderViewModel [
99
+ < gtCoderContextMenuAddOns: 13 >
100
+
62
101
(self extractableNodesFrom: aCoderViewModel)
63
102
ifNotEmpty: [ :nodes |
64
- | node |
65
- node := nodes first.
66
- node isVariable ifFalse: [ ^ self ].
67
- self
68
- variableNodeToBehavior: node
69
- ifFound: [ :aClass | foundClass := aClass ]
70
- ifNone: [ ^ self ].
71
- coderAddOns
72
- addContextMenuItem: (self
73
- createLabel: ' Browse class'
74
- description: foundClass name)
75
- hover: (self highlightNodeBlock: node)
76
- leave: self removeHighlightBlock
77
- action: [ :aTextualViewModel |
78
- self browseBehaviorAt: node startPosition requesterObject: nil ]
79
- shortcutKey: GtSourceCoderBrowseBehaviorShortcut new combinationForPlatform gtDisplayString ]
103
+ self
104
+ addClassNodeLinkMenuAddOnsTo: coderAddOns
105
+ node: nodes first
106
+ selector: #browseReferencesAt:requesterObject:
107
+ shortcut: GtSourceCoderBrowseReferencesShortcut new
108
+ requesterObject: aCoderViewModel ]
80
109
]
81
110
82
111
{ #category : #' *GToolkit-Pharo-Coder-AddOns' }
@@ -157,22 +186,6 @@ GtPharoSourceCoder >> addInstanceVariableReferencesMenuAddOnsAst: anAst to: code
157
186
combinationForPlatform gtDisplayString ]
158
187
]
159
188
160
- { #category : #' *GToolkit-Pharo-Coder-AddOns' }
161
- GtPharoSourceCoder >> addLinkMenuAddOnsTo: coderAddOns node: node selector: sel shortcut: aShortcut requesterObject: aRequester [
162
- | highlightNode |
163
- (node isMessage or : [ node isMessageSend or : [ node isMethodPattern ] ])
164
- ifFalse: [ ^ self ].
165
- highlightNode := node isMessageSend ifTrue: [ node message ] ifFalse: [ node ].
166
- coderAddOns
167
- addContextMenuItem: (self
168
- createLabel: aShortcut name
169
- description: node selector)
170
- hover: (self highlightNodeBlock: highlightNode)
171
- leave: self removeHighlightBlock
172
- action: [ :aTextualViewModel | self perform: sel with: highlightNode startPosition with: aRequester ]
173
- shortcutKey: aShortcut combinationForPlatform gtDisplayString
174
- ]
175
-
176
189
{ #category : #' *GToolkit-Pharo-Coder-AddOns' }
177
190
GtPharoSourceCoder >> addMessageReferencesMenuAddOnsAst: anAst to: coderAddOns from: aCoderViewModel [
178
191
< gtCoderContextMenuAddOns: 15 >
0 commit comments