--- a/DebugView.st Wed Nov 22 17:45:38 1995 +0100
+++ b/DebugView.st Wed Nov 22 21:58:43 1995 +0100
@@ -42,7 +42,7 @@
!
version
- ^ '$Header: /cvs/stx/stx/libtool/DebugView.st,v 1.50 1995-11-22 12:43:52 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libtool/DebugView.st,v 1.51 1995-11-22 20:58:43 cg Exp $'
!
documentation
@@ -425,6 +425,7 @@
'remove breakpoint'
'remove all trace & breakpoints'
'-'
+ 'browse'
'browse class'
'browse class hierarchy'
'browse full class protocol'
@@ -461,6 +462,7 @@
removeBreakpoint
removeAllBreakpoints
nil
+ browse
browseClass
browseClassHierarchy
browseFullClassProtocol
@@ -468,9 +470,9 @@
senders
nil
inspectContext
+ copyWalkbackText
nil
quickTerminate
- copyWalkbackText
nil
exit
)
@@ -481,9 +483,13 @@
inspecting ifTrue:[
m notNil ifTrue:[
- m disableAll:#(doTraceStep removeBreakpoint).
+ m disableAll:#(doTraceStep removeBreakpoint browse browseClass
+ browseClassHierarchy browseFullClassProtocol
+ implementors senders inspectContext skip).
].
]
+
+ "Modified: 22.11.1995 / 21:40:33 / cg"
!
setLabelFor:aMessage in:aProcess
@@ -1517,7 +1523,8 @@
|con homeContext sel method code canAccept
implementorClass lineNrInMethod rec m line
- sender selSender tryVars possibleBlocks errMsg|
+ sender selSender tryVars possibleBlocks errMsg
+ mthd cls w|
contextArray notNil ifTrue:[
lineNr <= contextArray size ifTrue:[
@@ -1717,18 +1724,36 @@
enable/disable some menu items
"
m := contextView middleButtonMenu.
- m notNil ifTrue:[
- m enable:#implementors.
- m enable:#senders.
- m enable:#inspectContext.
- m enable:#browseClass.
+ (m notNil and:[selectedContext notNil]) ifTrue:[
+ m enableAll:#(implementors senders inspectContext skip).
(method notNil and:[method isWrapped]) ifTrue:[
m enable:#removeBreakpoint.
] ifFalse:[
m disable:#removeBreakpoint.
+ ].
+
+ mthd := selectedContext method.
+ mthd notNil ifTrue:[
+ w := mthd who.
+ ].
+ m enable:#browseClass.
+ w notNil ifTrue:[
+ cls := w at:1
+ ].
+ cls notNil ifTrue:[
+ m enableAll:#(browseClass browseClassHierarchy browseFullClassProtocol).
+ ] ifFalse:[
+ m disableAll:#(browseClass browseClassHierarchy browseFullClassProtocol).
+ ].
+ (w notNil and:[(w at:2) notNil]) ifTrue:[
+ m enable:#browse
+ ] ifFalse:[
+ m disable:#browse
]
]
+
+ "Modified: 22.11.1995 / 21:43:40 / cg"
!
destroy
@@ -1911,24 +1936,24 @@
MessageTracer unwrapAllMethods
!
+browse
+ |w|
+
+ w := selectedContext method who.
+ SystemBrowser openInClass:(w at:1) selector:(w at:2).
+
+ "Created: 22.11.1995 / 21:27:01 / cg"
+!
+
browseClass
- selectedContext isNil ifTrue:[
- ^ self showError:'** select a context first **'
- ].
SystemBrowser browseClass:(selectedContext method who at:1).
!
browseClassHierarchy
- selectedContext isNil ifTrue:[
- ^ self showError:'** select a context first **'
- ].
SystemBrowser browseClassHierarchy:(selectedContext method who at:1).
!
browseFullClassProtocol
- selectedContext isNil ifTrue:[
- ^ self showError:'** select a context first **'
- ].
SystemBrowser browseFullClassProtocol:(selectedContext method who at:1).
!