LabVIEW Idea Exchange

cancel
Showing results for 
Search instead for 
Did you mean: 
avogadro5

Add dynamic dispatch status to context help notes section

Status: New

Add a note here if the VI is dynamic dispatch to aid in code readability:

avogadro5_0-1776205743247.png

 

8 Comments
fefepeto_kb
Member

Might seem nitpick, but I'm generally interested in how to make this idea work for everybody, so I would like to bring up the use-case when there are more than 1 class inputs defined. In this case the expectation is that the dynamically dispatching class is in the top left corner of the connector pane, but there is nothing to enforce it. With that said, I think it would be useful to somehow match this information to an input to show which one is the class that does the dispatching.

avogadro5
Active Participant

I don't understand the concern; the VI is either dynamic dispatch or not. Which connector doesn't affect whether the note would show.

fefepeto_kb
Member

For example there are two classes on the input of this VI, but only one is dynamic dispatch.

fefepeto_kb_0-1776257342168.png

 

Usually, the top one shall be the one that dispatches, but since noting forces it, it is possible to do this:

fefepeto_kb_1-1776257403709.png

In this case having the note dynamic dispatch clearly doesn't tell the whole story, because one cannot identify which object will define the method to be executed. I know that this is a corner case, but IMHO an important corner case.

avogadro5
Active Participant

In that particular case you can by examining the VI name. Regardless since the notes are global to the VI it doesn't matter which connector. Maybe another idea someone could make would be to add this detail to the connector pane section of context help.

avogadro5_0-1776262120696.png

 

avogadro5
Active Participant

Actually in this case I'm a bit confused why it let you mark a connector as dynamic dispatch when the control isn't of the class that owns the VI.

fefepeto_kb
Member

My bad, it was indeed dynamically dispatching the class in it's namespace but I did forgot to update the front panel. Only swapped the connectors on the connector pane.

Still, I feel like in cases where there are more than one class inputs of a VI the note is not a well placed solution. I would prefer to indeed put this information right in the section for the connector pane. Especially given the fact that the namespace information is not present, and in many cases would not be practical to be displayed in the context help window.

 

I would also like to note that the context help window's main purpose is to provide a quick information about what is happening in the subVI without opening the subVI, therefore any information that is there should be able to tell the complete picture to be useful. I understand that your proposed solution solves 90-95% of use-cases, but it seems to me that a solution that can get in the 95-100% range is similar in effort, therefore I'm suggesting an alternate.

OneOfTheDans
Active Participant

I agree adding this note covers 100% of cases. The VI is either Dynamically Dispatched or it isn't. DD is a mode of calling the VI, just like reentrancy.

 

If the specific DD terminal should be flagged with an asterisk or something, in my opinion that's a different idea worth submitting.

fefepeto_kb
Member

Disclaimer: This comment is entirely about how the forum works. Feel free to point me to a forum topic where a discussion like this could belong.

 

I realize that the option which would improve this idea is different enough to start a new idea altogether.

At the same time if the owner of the improvement for the idea (in this case me) doesn't feel the prospect is good enough to start a new thread, then it is likely taking away Kudos from the original post and also create no alternate option to vote for.

I have some options in my head that could solve this problem, but at the same time I'm open to hear other ideas on how to make the forum a bit more open for collaborations without dispersing the kudos on ideas solving the same problem in slightly or entirely different ways.

 

Sorry for the off topic.