--- a/Tools__CodeNavigationService.st Wed Feb 22 09:55:48 2012 +0000
+++ b/Tools__CodeNavigationService.st Wed Feb 22 13:18:20 2012 +0000
@@ -151,15 +151,33 @@
!CodeNavigationService methodsFor:'event handling'!
button1Press
-
- codeView syntaxElementSelection isNil ifTrue:[^self].
+ | node |
- codeView syntaxElementSelection isSelector ifTrue:[^self button1PressForSelector: codeView syntaxElementSelection node parent selector].
- codeView syntaxElementSelection isClass ifTrue:[^self browseClass:codeView syntaxElementSelection value].
+ node := codeView currentParseNode.
+ node isNil ifTrue:[
+ ^ self
+ ].
+ node isSelector ifTrue:[
+ self button1PressForMessageNode: node.
+ ^self.
+ ].
+ node isVariable ifTrue:[
+ self button1PressForVariableNode: node.
+ ^self.
+ ].
+
+ ^self.
"Created: / 14-02-2010 / 18:43:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
"Modified: / 18-11-2011 / 14:58:02 / cg"
- "Modified: / 16-02-2012 / 22:56:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 21-02-2012 / 14:30:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+button1PressForMessageNode: node
+
+ ^self button1PressForSelector: node parent selector.
+
+ "Created: / 21-02-2012 / 14:30:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
button1PressForSelector: selector
@@ -177,6 +195,23 @@
"Modified: / 21-08-2011 / 11:06:08 / cg"
!
+button1PressForVariableNode: node
+ | value |
+
+ node isGlobalVariable ifTrue:[
+ value := Smalltalk at: node name.
+ value notNil ifTrue:[
+ value isBehavior ifTrue:[
+ self browseClass: value.
+ ] ifFalse:[
+ value inspect.
+ ]
+ ]
+ ]
+
+ "Created: / 21-02-2012 / 14:30:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
button2Press
| sel |
@@ -599,6 +634,5 @@
!
version_SVN
- ^ '$Id: Tools__CodeNavigationService.st 7911 2012-02-22 09:55:48Z vranyj1 $'
+ ^ '$Id: Tools__CodeNavigationService.st 7912 2012-02-22 13:18:20Z vranyj1 $'
! !
-