How useful to programers would it be to have a new library dedicated to icon graphics?
We already have an Icon Library, a Graphics Library, and a CyberGraphx Library. But I'm not sure we have a library dedicated to routines for the manipulation of icons/icon images.
The routines in the library would include for example GraphicsPath to return an int array of all the perimeter pixels, or MakeTransparent that uses a graphics path or selection set to make pixels transparent, MoveImage to move the icon image up/down/left/right, etc. Basically, it would include many of the functions I've been developing for manipulating icon images.
What if Icon Library could use IconGraphics Library for single image icons to generate a nice looking glow border for the second image instead of the "washout" effect that is currently being used? It's just an idea at the moment.
What would such a library be called? IconGraphics Library? IconGrafx?
Edited by miker1264 on 06-04-2026 19:38,
9 days ago
AMIGASYSTEMDistro MaintainerPosted
9 days agoIt could simply be called ‘IconLib’; what matters is having access to all the features offered by the OS 3.9 Icon support, and perhaps even the improvements provided by ‘Rawbinfo’ this would make Amiga users happy.
AMIGASYSTEM
RAWbinfo and OS 3.9 Icon Support sound like they belong to another project as they display information about OS 3.5/3.9 Glow Icons.
IconGraphics Library or whatever it would be called only deals with the manipulation of the graphics for the icon images like darkening an image or adding shadow/glow border. It will also only deal with PNG icons at first. Maybe support for IFF glow icons can be added at a later date.
Thanks deadwood!
Since I haven't worked with libraries before other than Datatypes I'll take a look at Graphics Library and maybe CyberGraphX Library to see how the functions are inserted. That's a good place to start to see if it's feasible to make IconGraphics.
Libraries need some glue code. I'm sure Copilot will be able to generate it for m68k case, but if you want your library to be portable, you might consider using AROS build system to have it generate the glue code. Look in the libraries in rom or workbench/libs. The configuration is shared between mmakefile.src and <library>.conf file.