Here is some of my feedback and ideas for a public Icon Editor API.
- Decoupling of the 2009 Enhanced Icon Editor UI Data Types from the API **THIS MUST BE DONE!**
- You cannot pass around the e.g. Layer Data clusters then move your code on disk (i.e. distribute it) as the Icon Editor code is not under a symbolic path
- Plus it looks messy passing around UI typedefs that are formatted for UI
- I don't think a LVOOP interface is required
- Wrapper methods of the Library refnums for Class Library refnums is needed so you don't have to upcast refnums
- Helper VIs for basic tasks e.g.
- Search for user layer by name (string)
- Match user layer
- Return all User Layer names
- Wrappers for access to Class's Control Icon with standard get and set functionality etc...
- A higher level abstraction so you don't have to have to be getting a refnum etc...
- String constants for default icons names VI Icon, NI_Library etc..
- VIs for color constants used by LabVIEW
- Native Class Color constants
- Create default icons
- Basic background: 32x32 black border, white fill
- Library banner: 12x32 <user> border + <user> fill etc...
I have also started this thread in the Idea Exchange forum for community support:
http://forums.ni.com/t5/LabVIEW-Idea-Exchange/Icon-Editor-API/idi-p/1141247#A5811
Cheers
-JG
Certified LabVIEW Architect * LabVIEW Champion