ContextInspectorView.st
changeset 98 e6fac698d6d9
parent 73 e332d9c71624
child 107 db1b370632d7
--- a/ContextInspectorView.st	Sun May 07 04:01:06 1995 +0200
+++ b/ContextInspectorView.st	Tue May 09 03:59:45 1995 +0200
@@ -23,7 +23,7 @@
 COPYRIGHT (c) 1993 by Claus Gittinger
 	      All Rights Reserved
 
-$Header: /cvs/stx/stx/libtool/ContextInspectorView.st,v 1.9 1995-02-28 21:55:45 claus Exp $
+$Header: /cvs/stx/stx/libtool/ContextInspectorView.st,v 1.10 1995-05-09 01:59:04 claus Exp $
 '!
 
 !ContextInspectorView class methodsFor:'documentation'!
@@ -44,7 +44,7 @@
 
 version
 "
-$Header: /cvs/stx/stx/libtool/ContextInspectorView.st,v 1.9 1995-02-28 21:55:45 claus Exp $
+$Header: /cvs/stx/stx/libtool/ContextInspectorView.st,v 1.10 1995-05-09 01:59:04 claus Exp $
 "
 !
 
@@ -85,11 +85,12 @@
     "set the context to be inspected"
 
     |aList homeContext method homeNames rec sel implementorClass 
-     argNames varNames tmpNames m|
+     argNames varNames tmpNames m argsOnly|
 
     hasMore := false.
     inspectedObject := nil.
     inspectedContext := con.
+    argsOnly := false.
 
     con isNil ifTrue:[
 	names := nil.
@@ -116,6 +117,10 @@
 	    method := implementorClass compiledMethodAt:sel.
 	    method notNil ifTrue:[
 		method isWrapped ifTrue:[
+		    "
+		     in a wrapped context, locals are something different
+		    "
+		    argsOnly := true.
 		    m := method originalMethod.
 		    m notNil ifTrue:[
 			method := m.
@@ -124,7 +129,11 @@
 	    ].
 	    method notNil ifTrue:[
 		method source notNil ifTrue:[
-		    homeNames := method methodArgAndVarNames.
+		    argsOnly ifTrue:[
+			homeNames := method methodArgNames
+		    ] ifFalse:[
+			homeNames := method methodArgAndVarNames.
+		    ]
 		]
 	    ]
 	].
@@ -137,12 +146,14 @@
 	    1 to:homeContext numArgs do:[:index |
 		homeNames add:('mArg' , index printString)
 	    ].
-	    1 to:homeContext nvars do:[:index |
-		homeNames add:('mVar' , index printString)
-	    ].
-	    showingTemporaries ifTrue:[
-		1 to:homeContext ntemp do:[:index |
-		    homeNames add:('mTmp' , index printString)
+	    argsOnly ifFalse:[
+		1 to:homeContext nvars do:[:index |
+		    homeNames add:('mVar' , index printString)
+		].
+		showingTemporaries ifTrue:[
+		    1 to:homeContext ntemp do:[:index |
+			homeNames add:('mTmp' , index printString)
+		    ]
 		]
 	    ]
 	].
@@ -172,15 +183,22 @@
 	    values := values , con temporaries
 	].
 	homeContext notNil ifTrue:[
-	    values := values , homeContext argsAndVars.
-	    (showingTemporaries and:[homeContext ntemp ~~ 0])ifTrue:[
-		values := values , homeContext temporaries
+	    values := values , homeContext args.
+	    argsOnly ifFalse:[
+		values := values , homeContext vars.
+		(showingTemporaries and:[homeContext ntemp ~~ 0])ifTrue:[
+		    values := values , homeContext temporaries
+		]
 	    ].
 	].
 
     ] ifFalse:[
 	names := homeNames.
-	values := homeContext argsAndVars
+	argsOnly ifTrue:[
+	    values := homeContext args
+	] ifFalse:[
+	    values := homeContext argsAndVars
+	]
     ].
 
     listView list:names.