- Confirmed icon support for SDL drivers. (icculus patchset #9)

This commit is contained in:
Jamie Wilkinson 2002-12-01 04:07:04 +00:00
parent 3cea7ff14a
commit f1913fdc22

View file

@ -652,39 +652,38 @@ int GLimp_Init( void *hInstance, void *wndProc )
}
#endif
static void SetSDLIcon(void)
{
static void SetSDLIcon(void) {
#include "../data/pixmaps/q2icon.xbm"
SDL_Surface *icon;
SDL_Color color;
Uint8 *ptr;
int i, mask;
SDL_Surface * icon;
SDL_Color color;
Uint8 * ptr;
int i, mask;
icon = SDL_CreateRGBSurface(SDL_SWSURFACE, q2icon_width, q2icon_height, 8,
0, 0, 0, 0);
if (icon == NULL)
return; /* oh well... */
SDL_SetColorKey(icon, SDL_SRCCOLORKEY, 0);
icon = SDL_CreateRGBSurface(SDL_SWSURFACE, q2icon_width, q2icon_height, 8,
0, 0, 0, 0);
if (icon == NULL)
return; /* oh well... */
SDL_SetColorKey(icon, SDL_SRCCOLORKEY, 0);
color.r = 255;
color.g = 255;
color.b = 255;
SDL_SetColors(icon, &color, 0, 1); /* just in case */
color.r = 0;
color.g = 16;
color.b = 0;
SDL_SetColors(icon, &color, 1, 1);
color.r = 255;
color.g = 255;
color.b = 255;
SDL_SetColors(icon, &color, 0, 1); /* just in case */
color.r = 0;
color.g = 16;
color.b = 0;
SDL_SetColors(icon, &color, 1, 1);
ptr = (Uint8 *)icon->pixels;
for (i = 0; i < sizeof(q2icon_bits); i++) {
for (mask = 1; mask != 0x100; mask <<= 1) {
*ptr = (q2icon_bits[i] & mask) ? 1 : 0;
ptr++;
}
}
ptr = (Uint8 *)icon->pixels;
for (i = 0; i < sizeof(q2icon_bits); i++) {
for (mask = 1; mask != 0x100; mask <<= 1) {
*ptr = (q2icon_bits[i] & mask) ? 1 : 0;
ptr++;
}
}
SDL_WM_SetIcon(icon, NULL);
SDL_FreeSurface(icon);
SDL_WM_SetIcon(icon, NULL);
SDL_FreeSurface(icon);
}
/*