MCPcopy Create free account
hub / github.com/benfry/processing4 / vmStepEvent

Method vmStepEvent

java/src/processing/mode/java/debug/Debugger.java:789–821  ·  view source on GitHub ↗
(StepEvent se)

Source from the content-addressed store, hash-verified

787
788
789 private void vmStepEvent(StepEvent se) {
790 currentThread = se.thread();
791
792 //printSourceLocation(currentThread);
793 updateVariableInspector(currentThread); // this is already on the EDT
794 final LineID newCurrentLine = locationToLineID(se.location());
795 javax.swing.SwingUtilities.invokeLater(new Runnable() {
796 @Override
797 public void run() {
798 editor.setCurrentLine(newCurrentLine);
799 editor.deactivateStep();
800 editor.deactivateContinue();
801 }
802 });
803
804 // delete the steprequest that triggered this step so new ones can be placed (only one per thread)
805 EventRequestManager mgr = runtime.vm().eventRequestManager();
806 mgr.deleteEventRequest(se.request());
807 requestedStep = null; // mark that there is no step request pending
808 paused = true;
809 editor.statusHalted();
810
811 // disallow stepping into invisible lines
812 if (!locationIsVisible(se.location())) {
813 // TODO: this leads to stepping, should it run on the EDT?
814 javax.swing.SwingUtilities.invokeLater(new Runnable() {
815 @Override
816 public void run() {
817 stepOutIntoViewOrContinue();
818 }
819 });
820 }
821 }
822
823
824 /**

Callers 1

vmEventMethod · 0.95

Calls 6

locationToLineIDMethod · 0.95
locationIsVisibleMethod · 0.95
threadMethod · 0.80
statusHaltedMethod · 0.80
vmMethod · 0.45

Tested by

no test coverage detected