Ignore:
Timestamp:
Dec 20, 1999, 5:45:18 PM (26 years ago)
Author:
cbratschi
Message:

some icon bug fixes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/user32/static.cpp

    r1810 r2160  
    1 /* $Id: static.cpp,v 1.12 1999-11-22 20:33:24 sandervl Exp $ */
     1/* $Id: static.cpp,v 1.13 1999-12-20 16:45:16 cbratschi Exp $ */
    22/*
    33 * Static control
     
    9191
    9292    if (!GetIconInfo(hicon,&ii)) return prevIcon;
    93     GetObjectA(ii.hbmColor,sizeof(BITMAP),(LPVOID)&bmp);
     93    if (ii.hbmColor)
     94      GetObjectA(ii.hbmColor,sizeof(BITMAP),(LPVOID)&bmp);
     95    else
     96    {
     97      GetObjectA(ii.hbmMask,sizeof(BITMAP),(LPVOID)&bmp);
     98      bmp.bmHeight /= 2;
     99    }
    94100
    95101    if (!(dwStyle & (SS_CENTERIMAGE | SS_REALSIZEIMAGE))) STATIC_ResizeWindow(hwnd,dwStyle,bmp.bmWidth,bmp.bmHeight);
     102
     103    if (ii.hbmColor) DeleteObject(ii.hbmColor);
     104    if (ii.hbmMask) DeleteObject(ii.hbmMask);
    96105
    97106    return prevIcon;
     
    679688
    680689      if (!GetIconInfo(infoPtr->hIcon,&ii)) return;
    681       GetObjectA(ii.hbmColor,sizeof(BITMAP),(LPVOID)&bmp);
     690      if (ii.hbmColor)
     691        GetObjectA(ii.hbmColor,sizeof(BITMAP),(LPVOID)&bmp);
     692      else
     693      {
     694        GetObjectA(ii.hbmMask,sizeof(BITMAP),(LPVOID)&bmp);
     695        bmp.bmHeight /= 2;
     696      }
    682697      DrawIcon(hdc,(rc.right-bmp.bmWidth)/2,(rc.bottom-bmp.bmHeight)/2,infoPtr->hIcon);
     698      if (ii.hbmColor) DeleteObject(ii.hbmColor);
     699      if (ii.hbmMask) DeleteObject(ii.hbmMask);
    683700    } else if (infoPtr->hIcon) DrawIcon(hdc,rc.left,rc.top,infoPtr->hIcon);
    684701}
Note: See TracChangeset for help on using the changeset viewer.