LabVIEW Idea Exchange

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

Change the behaviour of Front Panel Controls/Indicators when their Block Diagram nodes are disabled

Status: New

Inspired by the conversations on this idea.

 

Scenario: I have a section of code that has missing subVIs and controls (they're typedefs), and I want to disable it.  I put a diagram disable structure around the code, and it means that the missing VIs are okay, but LabVIEW still requires the typedef'd controls to be loaded <- this causes a broken arrow, even through the only broken code is within the diagram disable structure.

 

Solution:

  1. If all uses of the control are inside a disabled structure (including the FP terminal, all staticallly bound property/invoke nodes and local variables), then the control effectively vanishes from the panel and all behaviors at run time (not literally vanishes, maybe make it look different).
  2. If any use of the control is not inside a disabled structure, the control remains in play.
  3. This means that if the control is linked to a typedef, the typedef is loaded if any use of the control is not disabled, but if all uses of the control are disabled then the typedef is not loaded (and, therefore, if the typedef is missing, the VI is not broken) -OR- such typedefs are delinked at runtime, and relink when the VI stops.
  4. The use of "typedef" in #3 applies equally to references to LVClasses, XControls, Active X classes and anything else that may in the future be added that a control references.




Copyright © 2004-2023 Christopher G. Relf. Some Rights Reserved. This posting is licensed under a Creative Commons Attribution 2.5 License.
1 Comment
Laura F.
Active Participant