I know, I'm flooding the forum today...
I would like to share with you method for creating icons I invented recently.
Up to now I used great Mark Balla's icon editor (and I still use it sometimes). But whole the time it was hard to remember which bakcgroud color and which abberation mean what, simply to fit on the icon all the information I need using only limited amount of text and few colors. Besides this I simply like graphics on icons. But preparing graphical icons using LV editor is time consuming as well as using external editor and copy-pasting (which often leeds to some confusion as LV uses its own 200+ color palette). What's more LV don't update smaller bit depth versions of icons - even if one don't care about them (who cares nowdays?) they should look at least different then default ones.
To prepare graphical icons efficiently you have to have prepared common backrounds for projects or separate parts of code, glyphs for classes, glyphs for common actions as get, set, read, write, etc., glyphs for most important datatypes, some arrows or other symbols. If you have such a library (of course it is being created as project grows, parts may be imported from icon themes as Tango or Nuvola).
I started this approach for the project I call temporaily LVODE. It is set of wrappers with some my code for Open Dynamics Engine (ODE) (BTW, I plan to relase it to public and although it is already pretty usable for me and even documented, I need some motivation to make it usable for others).
I decided to use Inkscape - vector graphics editor. My icon development environment looked like this:
I was arranging icon by few moves of mouse (when not creating additional glyph), selecting it and exporing as 32x32 png file with always the same name. For importing to LV I wrote a VI I put to Tools menu which retrieved current VI reference and used "VI icon.Set from file" method. Pretty efficient but there were 2 major problems: color conversion from 24-bit image to indexed color icon sometimes led to ugly colors and interpolation of vector-raster conversion often caused limited readability of an icon.
Then I moved to GIMP. It is raster image editor, uses layers and has native indexed color support. I exported LV icon palette to ACT file, imported it in GIMP, so I was able to draw using target colors. The icon development environment looks now like this:
Glyphs and backrounds are located in separate channels - I simply turn on/off their visibility, there is also a possibility for editable text layers. It was little bit tricky to find font and options to be able to write readable text with small font size.
Now the best part: GIMP has so called Script-Fu - macro language to perform automated tasks. It also has Script-Fu server making it able to receive commands via TCP. So when the icon is made I do not have to export anything - just switch back to LabVIEW select a command from Tools menu and voila! Here is VI which do the trick:
Maybe GIMP is not so efficient and elastic for creating icons as Inkscape was (belive me - I was able to prepare an icon with some glyphs and text in 15 s), but this is the price for guarantee of readability. Now one icon takes me 0.5-1 min and it is always worth that time.
And I hope that some day my experiences and ideas will grow into new GRAPHICAL icon editor as fast and convenient as Inkscape and generating as nice effects as GIMP.
------
I was writing this post quite a long time uploading images successively as I was writing and after some time I wasn't able to upload anything more (Upload failed)... I had to start topic again. Is time to write the post limited?