Zebediah Figura z.figura12@gmail.com writes:
- switch (type)
- {
case ICON_BIG:
ret = win->hIcon;
if (!ret) ret = (HICON)GetClassLongPtrW( hwnd, GCLP_HICON );
break;
case ICON_SMALL:
ret = win->hIconSmall;
if (!ret) ret = (HICON)GetClassLongPtrW( hwnd, GCLP_HICONSM );
break;
case ICON_SMALL2:
ret = win->hIconSmall ? win->hIconSmall : win->hIconSmall2;
if (!ret) ret = (HICON)GetClassLongPtrW( hwnd, GCLP_HICONSM );
break;
default:
SetLastError( ERROR_INVALID_PARAMETER );
WIN_ReleasePtr( win );
return 0;
- }
- if (!ret) ret = LoadIconW( 0, (const WCHAR *)IDI_WINLOGO );
For the small icon case, you may want to fall back to the big icon instead, and/or return a smaller IDI_WINLOGO, cf. NC_IconForWindow(). Testing the resulting icon sizes would also be interesting.