LabVIEW Idea Exchange

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

lvlib/lvclass Access scope hierarchy filtering

Status: Declined

Any idea that has received less than 3 kudos within 3 years after posting will be automatically declined.

I would like to see a setting on an lvlib or lvclass that would prevent private and/or protected items from showing up in the VI hierarchy.

 

In a .lvlib or .lvclass we can set different scopes on items, but why not add a property to define (on lvlib/lvclass level) which scopes that should be visible in the hierarchy view? The items listed as private in a lvlib (or lvclass), are mostly not necessary to see in the hierarchy window as these are internal anyway (and are not intended to be used or seen by the end user).


This change would mean that large scale projects could look much cleaner in the hierarchy window, and that the relationship between reuse components gets much clearer.

 

To make this work for older projects, I would also like the end user to be able to filter out private/protected items directly from the hierarchy window, as we today can filter out vi.lib, globals or controls. Turning on private view would still not reveal the items set as not-visible in the lvlib/lvclass, as this was defined by the developer.


 

6 Comments
jgcode
Active Participant

Correct me if I wrong but isn't this already implemented?

When you create a source distribution for your code library and lock the library, all developers who will be reusing the distributed library will not see Private Access Scope Members in their project.

For .lvclass - Protected Access Scope Members need to be seen so that you can override those methods. 

Certified LabVIEW Architect * LabVIEW Champion
AristosQueue (NI)
NI Employee (retired)

Also, correct me if I'm wrong, the new LV 2009 has a way to collapse all the members of a library (any of the library types) into a single icon in the VI Hierarchy window.

 

[Later] I'm wrong. Well, sort of. The new VI Hierarchy window has a "Group Libraries" button in the button bar, but it appears to not do anything when clicked. I've filed the CAR about it. Anyway, assuming it worked, it would also help with your request.

Mellroth
Member

Thanks for the comments, I wasn't aware of that protected items were treated differently than private items. That explains why I felt that this setting really didn't work when I tried it.

 

Mellroth
Member

I've played with the settings a bit more, and I cannot get it to work as I want it to work;

When a library gets locked (or password protected), all private items are hidden in the project viewer, but is still visible in the hierarchy window.

In the end I would like private library members to be completely hidden (with their callees): in project view, hierarchy view, and from VI property calls like "All VIs in mem", "Callees name". If this is a separate property, or if the lock/password property handles it, really doesn't matter.

 

Aristos comment partly addresses this issue (in LV2009), but I would like to set a property at edit time that defines that no private items should be shown in the hierarchy window.

 

AristosQueue (NI)
NI Employee (retired)

> but is still visible in the hierarchy window.

 

Please file a bug report with NI.

 

Having said that..

I should note that *not* displaying it in the VI Hierarchy window would go against my [personal-not-speaking-for-NI] belief (stated elsewhere in the forums for other ideas) that the VI Hierarchy Window should always display all of the VIs that are currently in memory, without hiding anything, as it is the one place you can look to see all of your dependencies.

 

Do you think that the Profile tools should also hide the private subVIs when doing timing and memory usage analysis? How about the event logs for the Desktop Trace Toolkit? 

Darren
Proven Zealot
Status changed to: Declined

Any idea that has received less than 3 kudos within 3 years after posting will be automatically declined.