- char filename[1024];
-
- if(!icon_file.empty())
- {
- snprintf(filename, 1024, "%s/%s", datadir.c_str(), icon_file.c_str());
- if(!faccessible(filename))
- snprintf(filename, 1024, "%s/images/icons/default-icon.png", datadir.c_str());
- }
- else
- {
- snprintf(filename, 1024, "%s/images/icons/default-icon.png", datadir.c_str());
- }
-
- if(mw != -1 || mh != -1)
- {
- icon = new Surface(filename,USE_ALPHA);
- if(mw != -1)
- icon->w = mw;
- if(mh != -1)
- icon->h = mh;
-
- SDL_Rect dest;
- dest.x = 0;
- dest.y = 0;
- dest.w = icon->w;
- dest.h = icon->h;
- SDL_SoftStretch(icon->impl->sdl_surface, NULL, icon->impl->sdl_surface, &dest);
- }
- else
- icon = new Surface(filename,USE_ALPHA);