LabVIEW Idea Exchange

cancel
Showing results for 
Search instead for 
Did you mean: 
Ali-Amin

Execution Highlighting with Auto Scrolling

Status: Declined
The functionality of this idea would start to break down for large VIs which it tries to address. If you have a large Block Diagram that has parallelized code then it would be difficult to have the view auto scroll the the code that is executing because it could be executing in multiple areas.

While using Highlight Execution for debugging, we end up scrolling the code to know which part of the code is currently executing, and loose context of the code due to scrolling. We could avoid this by letting 'Execution Highlighting' do the scrolling for us. Execution Highlighting with Auto Scrolling can be invoked on demand. The default behavior of the Highlight Execution will not Scroll. We should provide mechanism for users to disable or enable this while executing the code.

 

Also in case of state machine,

  • Current Behavior - If one highlights in the middle of execution and when a sub VI is executing, then the highlight will reach the case only after the control returns to top level VI.
  • This feature should also address the above mentioned behavior by switching to the case(state) in which the sub VI is executing.
8 Comments
Ali-Amin
NI Employee (retired)

I have created a sample demonstration video for illustrating the idea better.

 

The video is located here Video

fabric
Active Participant

Maybe useful if your block diagram is  R E A L L Y  enormous... Smiley Wink

AristosQueue (NI)
NI Employee (retired)

> Maybe useful if your block diagram is  R E A L L Y  enormous...

 

Or just long, like a long sequence of subVI calls (VI server code often looks like this). Running off in one direction to the right is generally fine.

 

The problem is that I often turn on exec highlight so I can watch a particular section of diagram... I wouldn't want it jumping away from that when I start the VI running. And how do you handle when two sections of diagram are executing simultaneously in parallel that don't both fit on the screen?

 

As for the switching other diagrams when a subVI is executing, I don't see a problem. If you use the selection ring on the diagram of the running VI (the call chain ring), it will take you right to the subVI call in the particular frame of the case structure.

SteenSchmidt
Trusted Enthusiast

Automatically scrolling to follow the execution highlighting often won't work, as multiple highlights might wander in different directions in the BD.

 

I miss a working way to locate where we are waiting in the code alot more. Often I cannot locate within which function or subVI the execution is currently taking place, if I look into a (more) Top-level VI. On subVIs you sometimes have green arrows or dots to indicate wating or running action, but at other times this isn't the case. And if you're inside a loop you cannot use the grayed out/not grayed out wire look either, since data has earlier passed through the monitored section of code.

 

Cheers,

Steen

CLA, CTA, CLED & LabVIEW Champion
JÞB
Knight of NI

AQ If you use the selection ring on the diagram of the running VI (the call chain ring), it will take you right to the subVI call in the particular frame of the case structure. ??????

 

Is this a feature I don't know about?  or are you speaking of the show call chain feature of the hierarchy view?


"Should be" isn't "Is" -Jay
AristosQueue (NI)
NI Employee (retired)

Jeff: If you are stopped at a breakpoint in a subVI, there's a ring on the block diagram that shows the call chain. If you select one of the higher levels in that ring, you will zoom-highlight the calling node on that caller VI.

JÞB
Knight of NI

Thanks! Never saw that there before with over ten years of LabVIEW usage-  I guess I don't write enough bugsSmiley Very HappySmiley Very Happy

untitled.PNG


"Should be" isn't "Is" -Jay
G-Money
NI Employee (retired)
Status changed to: Declined
The functionality of this idea would start to break down for large VIs which it tries to address. If you have a large Block Diagram that has parallelized code then it would be difficult to have the view auto scroll the the code that is executing because it could be executing in multiple areas.