First Re-Made Icon using Icon Utility and Overlay Masking to preserve the Glow Border of Second Image.
Any Icon opened becomes the Icon Template. If a PNG Icon is opened, only PNG Images can be Loaded.
To change the Icon Template, simply Load Icon. Icon can be either a PNG Icon or a IFF Icon (GlowIcon).
I'm also working on a new technique for Overlay Masking called Copy Mask. Anything under the Overlay
in the original image will be copied to the new image in the same location. This will be useful in making
composite images or composite icon images where we can copy parts of other icon images in new ones.
Satisfied that the PNG Icons are working correctly, moving on to Load, Display & Save Images for IFF's.
I will be trying to use this approach for GlowIcons.
//Get icon struct
icon = GetDiskObject(filepath);
//Get icon image pointers
image[0] = (struct Image *)icon->do_Gadget.GadgetRender;
image[1] = (struct Image *)icon->do_Gadget.SelectRender;
//image->Width;
//image->Height;
//image->Depth;
//image->ImageData;
Assuming that the ImageData is actually a continuous buffer of planar image data,
it would seem easier to export the ilbm images than it was to export png images.