author Sam Lantinga <>
Thu, 11 May 2006 03:45:55 +0000
changeset 1812 9c882e94b545
parent 866 0a45995a7fc3
child 3561 00e7c6b7eb03
permissions -rw-r--r--
Fixed bug #208

So, here's a patch with a reimplementation of QZ_SetIcon() that does what I
described above. I apologize for the delay, I've been quite busy in the last
few days.

It appears to work here on 10.4.5 PPC in the limited testing that I've done;
I'll try to test it on 10.3.9 and 10.2.8 as well, but that might take another
week or so. Please test on i386.

Regarding alpha channels, per-surface alpha, and color keys, the same semantics
as for regular blits to an RGB surface should apply (for the final icon
composited onto the dock), unless I made a mistake - except in one pathological
case: if the icon surface has an alpha channel, its SDL_SRCALPHA flag is not
set (i.e. it has been explicitly cleared, since it's on by default for RGBA
surfaces), and it has a color key, plus an explicit mask was specified (instead
of the one autogenerated from the colorkey), then the color-keyed areas appear
black instead of transparent. I found no elegant way of fixing this, was too
lazy to implement the inelegant one, and decided that it isn't worth the effort
(but if someone disagrees, I can do it).
     2 To compile and install SDL:
     4     1.  Run './configure; make; make install'
     6         If you are compiling for Windows using gcc, read the FAQ at:
     9         If you are compiling using Visual C++ on Win32, you should read
    10         the file VisualC.html
    12     2.  Look at the example programs in ./test, and check out the HTML
    13         documentation in ./docs to see how to use the SDL library.
    15     3.  Join the SDL developer mailing list by sending E-mail to
    17         and put "subscribe" in the subject of the message.
    19         Or alternatively you can use the web interface:
    22 That's it!
    23 Sam Lantinga <>