*** empty log message ***
authorclaus
Mon, 06 Mar 1995 23:07:15 +0100
changeset 78 037323660c45
parent 77 bfb07ce94a87
child 79 d78f92a07d5d
*** empty log message ***
DebugView.st
--- a/DebugView.st	Mon Mar 06 22:25:58 1995 +0100
+++ b/DebugView.st	Mon Mar 06 23:07:15 1995 +0100
@@ -17,7 +17,7 @@
 		receiverInspector contextInspector contextArray selectedContext
 		catchBlock grabber traceView tracing bigStep skipLineNr
 		steppedContextAddress canAbort abortButton terminateButton
-		continueButton stepButton sendButton returnButton restartButton
+		continueButton stepButton nextButton sendButton returnButton restartButton
 		exclusive inspecting nChainShown inspectedProcess updateProcess
 		monitorToggle stepping steppedContextLineno actualContext inWrap'
 	 classVariableNames:'CachedDebugger CachedExclusive OpenDebuggers MoreDebuggingDetail'
@@ -29,7 +29,7 @@
 COPYRIGHT (c) 1989 by Claus Gittinger
 	      All Rights Reserved
 
-$Header: /cvs/stx/stx/libtool/DebugView.st,v 1.28 1995-03-06 19:31:13 claus Exp $
+$Header: /cvs/stx/stx/libtool/DebugView.st,v 1.29 1995-03-06 22:07:15 claus Exp $
 '!
 
 !DebugView class methodsFor:'documentation'!
@@ -50,7 +50,7 @@
 
 version
 "
-$Header: /cvs/stx/stx/libtool/DebugView.st,v 1.28 1995-03-06 19:31:13 claus Exp $
+$Header: /cvs/stx/stx/libtool/DebugView.st,v 1.29 1995-03-06 22:07:15 claus Exp $
 "
 !
 
@@ -343,6 +343,10 @@
     dummy := View extent:(20 @ 5) in:bpanel.
     dummy borderWidth:0; level:0.
 
+    nextButton := Button
+			label:(resources at:'next')
+			action:[stepButton turnOff. self doNext]
+			in:bpanel.
     stepButton := Button
 			label:(resources at:'step')
 			action:[stepButton turnOff. self doStep]
@@ -807,6 +811,7 @@
 	returnButton turnOffWithoutRedraw.
 	restartButton turnOffWithoutRedraw.
 	abortButton turnOffWithoutRedraw.
+	nextButton turnOffWithoutRedraw.
 	stepButton turnOffWithoutRedraw.
 	sendButton turnOffWithoutRedraw.
     ] ifFalse:[
@@ -1133,6 +1138,7 @@
 
     sendButton disable.
     stepButton disable.
+    nextButton disable.
 "/    continueButton disable.
 "/    returnButton disable.
 "/    restartButton disable.
@@ -1355,9 +1361,11 @@
 "/    ].
 
     ignore := false.
+
     (bigStep 
+    and:[steppedContextLineno notNil 
     and:[where notNil 
-    and:[where lineNumber == steppedContextLineno]]) ifTrue:[
+    and:[where lineNumber == steppedContextLineno]]]) ifTrue:[
 "/ 'same line - ignored' printNL.
 	ignore := true
     ].
@@ -1765,7 +1773,7 @@
 !
 
 doSend
-    "send from menu"
+    "single send; reenter with next message send"
 
     inspecting ifTrue:[^ self].
 
@@ -1783,7 +1791,8 @@
 !
 
 doStep:lineNr
-    "step until we pass lineNr (if nonNil) or to next line (if nil)"
+    "step until we pass lineNr (if nonNil) or to next line (if nil)
+     or to next send (if -1)"
 
     |con method|
 
@@ -1797,6 +1806,11 @@
 	    con := contextArray at:2.
 	    steppedContextLineno := con lineNumber.
 	].
+	skipLineNr := lineNr.
+
+	lineNr == -1 ifTrue:[
+	    steppedContextLineno := skipLineNr := nil.
+	].
 
 	steppedContextAddress := ObjectMemory addressOf:con.
 	"
@@ -1812,7 +1826,6 @@
 
 	con := nil.
 	bigStep := true.
-	skipLineNr := lineNr.
 	haveControl := false.
 	exitAction := #step.
 	ProcessorScheduler isPureEventDriven ifFalse:[
@@ -1820,22 +1833,28 @@
 	    catchBlock notNil ifTrue:[catchBlock value].
 	    'DEBUGGER: oops, step failed' errorPrintNL.
 	    stepButton turnOff.
+	    nextButton turnOff.
+	    sendButton turnOff.
 	].
     ]
 !
 
-doStep
-    "step from menu"
+doNext
+    "skip for next source-code line"
 
     self doStep:nil
 !
 
-skip
-    "step from menu"
+doStep
+    "skip for next send in selected method"
 
-    codeView cursorLine notNil ifTrue:[
-	self doStep:codeView cursorLine.
-    ]
+    self doStep:-1 
+!
+
+skip
+    "skip for cursor line in selected method"
+
+    self doStep:codeView cursorLine.
 !
 
 doReturn