I'm currently working on a provider to allow me to script the creation of "Settings Node" classes for my larger application - these are relatively simple and I'm optimistically hoping most of the work can be done with a copied template and the VI in Actor Framework Message Maker that stores a set of controls in class private data.
I'd assumed from my reading of the documentation that because I was adding new items to my project, I needed a primary provider. However, I just noticed that the AF MM is not a primary provider (despite adding classes to the project) and neither are AddActor or MessageMaker, which both also add files.
This functionality (adding to project) is done during the Item_OnCommand VI, and it's easy enough for me to move my code from CreateNewWizard_Invoke to Item_OnCommand and change the provider type. However, having a new GUID would be nice to allow a secondary provider to bind to the alias.
My concern is this - the item that is added (by a primary provider with unique GUID) is not a class, it is a "Settings Node", or whatever I call it. Although I could add the class, then move the new item into the class (to keep them together - at least, I think I can do this...) it isn't exactly what I want.
Can I make a transparent 'class'-like object which behaves like a class in all the normal ways, but additionally has an alias for a secondary provider (and a new icon - ooh)
Failing that, should I hide the class and interact with it only through the new item? If I do this, I imagine it will be harder to prevent errors with moving files, or making changes to filesystem etc - perhaps the Ref type can help me here, but it sounds like that only helps with references internal to the project - maybe I misunderstood this.