Why Can't a Type Definition Maintain Cosmetic Changes When It Is Updated?

Updated Apr 26, 2018

Reported In

Software

  • LabVIEW

Issue Details

I am using a Type Definition in several projects, but I modified several instances to have different sizes, colors, styles or other cosmetic changes. If I modify the .ctl file to include additional components in the Type Definition and apply the changes, all the instances lose the cosmetic changes when they are updated.

Is this an expected behavior?

Is there a way to keep the cosmetic modifications when updating the Type Definition instances?

Solution

This behavior is expected. When you apply the changes in the .ctl file, all the instances of the Type Definition are overwritten with the current properties, so any cosmetic changes will be returned to the Type Definition's default appearance.

If you need to maintain the cosmetic changes, there are two options:
  • Disconnect the Type Definition. However,¬†this would mean any changes in the .ctl file would not be reflected in the disconnected instance.
  • Modify the front panel objects programmatically using VI Server so that the appearance is set when the VI runs. This will be effective, but the programming effort may be greater than performing the changes manually. Refer to the Related Links section for articles and an example about modifying front panel objects programmatically.

Additional Information

If you right-click any instance of a Type Definition, disable Auto Update from Type Def. and perform any modifications in the .ctl file afterwards, the instance will not be automatically updated. At this point, you can right-click the instance and select Review and Update from Type Def..., which will bring a window where you can modify the default values of the instance before approving the changes, so that they are not reset with the .ctl file's. Cosmetic changes will still be reset.

WAS THIS ARTICLE HELPFUL?

Not Helpful