winemenubuilder: Write truecolor icons as PNGs

Francois Gouget fgouget at
Wed Dec 6 13:01:24 CST 2006

On Wed, 6 Dec 2006, Frank Richter wrote:

> When libpng is available, support for writing out 24 and 32bpp icons is
> added, which are written out as PNGs. Also changed wineshelllink to
> support both xpm and png extensions for icons.
> Some parts based on an older patch by Vitaliy Margolen.

The thing that blocked this patch from being applied last time is that, 
if I remember correctly, Alexandre would like the PNG functionality to 
be added to the IPicture implementation in dlls/oleaut32/olepicture.c. 
Then winemenubuilder would use this interface to save the icon into the 
proper format.

It's easy to see where the code should go to extend this interface to 
support loading PNG files as it already supports loading Gif and Jpeg 
files. However I'm fuzzy on how one would use this interface to specify 
the format to use for saving. Maybe by defining Wine-specific 
PICTYPE_XXX values? But that would not work on Windows...

The other semi-related part would be to use ExtractAssociatedIcon() 
instead of extract_icon32(), though I'm not sure that's compatible 
with trying to select the 'best' icon size/color depth.

I'm pretty sure my memory mangled some of this. Hopefully Alexandre will 
clarify things.

Francois Gouget <fgouget at>    
  Any sufficiently advanced Operating System is indistinguishable from Linux

More information about the wine-devel mailing list