consolidate SDL icon changing code

This commit is contained in:
Chris Danford
2003-05-25 21:58:34 +00:00
parent 6b63ef50f9
commit bb089f467e
4 changed files with 26 additions and 35 deletions
+19
View File
@@ -510,3 +510,22 @@ bool SDL_GetEvent(SDL_Event &event, int mask)
}
#include "SDL_image.h" // for setting icon
#include "SDL_rotozoom.h" // for setting icon
void mySDL_WM_SetIcon( CString sIconFile )
{
SDL_Surface *srf = IMG_Load(sIconFile);
SDL_SetColorKey( srf, SDL_SRCCOLORKEY, SDL_MapRGB(srf->format, 0xFF, 0, 0xFF));
/* Windows icons are 32x32 and SDL can't resize them for us, which
* causes mask corruption. (Actually, the above icon *is* 32x32;
* this is here just in case it changes.) */
ConvertSDLSurface(srf, srf->w, srf->h,
32, 0xFF000000, 0x00FF0000, 0x0000FF00, 0x000000FF);
zoomSurface(srf, 32, 32);
SDL_SetAlpha( srf, SDL_SRCALPHA, SDL_ALPHA_OPAQUE );
SDL_WM_SetIcon(srf, NULL /* derive from alpha */);
SDL_FreeSurface(srf);
}