Changeset 647 for trunk/src


Ignore:
Timestamp:
Aug 23, 1999, 3:58:19 PM (26 years ago)
Author:
sandervl
Message:

Icon load bugfix + dummy functions for comdlg32

Location:
trunk/src/user32/new
Files:
1 added
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/user32/new/USER32EXP.DEF

    r334 r647  
    1 ; $Id: USER32EXP.DEF,v 1.2 1999-07-18 20:41:12 cbratschi Exp $
     1; $Id: USER32EXP.DEF,v 1.3 1999-08-23 13:56:48 sandervl Exp $
    22
    33;Created by BLAST for IBM's compiler
     
    595595
    596596
     597    CreateWindowProc                    @2000
     598    GetOS2Callback__15Win32WindowProcFv @2001
    597599
    598600_GetSysColorPen@4                       @2002
  • trunk/src/user32/new/makefile

    r644 r647  
    1 # $Id: makefile,v 1.30 1999-08-23 10:49:23 phaller Exp $
     1# $Id: makefile,v 1.31 1999-08-23 13:58:19 sandervl Exp $
    22
    33#
     
    3333        oslibutil.obj oslibmsg.obj dib.obj \
    3434        winprop.obj wingdi.obj oslibgdi.obj winaccel.obj winscrollbar.obj \
    35         nativerc.obj oslibres.obj
     35        nativerc.obj oslibres.obj dummy.obj
    3636
    3737
     
    5656user32.obj: user32.cpp $(PDWIN32_INCLUDE)\wndproc.h \
    5757            $(PDWIN32_INCLUDE)\winicon.h syscolor.h
     58dummy.obj: dummy.cpp
    5859char.obj: char.cpp user32.h
    5960loadres.obj: loadres.cpp user32.h dib.h
  • trunk/src/user32/new/oslibres.cpp

    r601 r647  
    1 /* $Id: oslibres.cpp,v 1.5 1999-08-20 20:09:51 sandervl Exp $ */
     1/* $Id: oslibres.cpp,v 1.6 1999-08-23 13:56:35 sandervl Exp $ */
    22/*
    33 * Window API wrappers for OS/2
     
    5858 HBITMAP     hbmColor, hbmMask;
    5959 BITMAPARRAYFILEHEADER2 *bafh = (BITMAPARRAYFILEHEADER2 *)iconbitmap;
    60  BITMAPFILEHEADER2 *bfh;
     60 BITMAPFILEHEADER2 *bfhBW;
     61 BITMAPFILEHEADER2 *bfhColor;
    6162 HPS         hps;
    6263 HANDLE      hIcon;
     
    6667        return 0;
    6768    }
    68     //skip xor/and mask
    69     bfh = (BITMAPFILEHEADER2 *)((char *)&bafh->bfh2 + sizeof(RGB2)*2 + sizeof(BITMAPFILEHEADER2));
     69    if(bafh->usType == BFT_BITMAPARRAY && bafh->cbSize == sizeof(BITMAPARRAYFILEHEADER2)) {
     70        bfhBW    = &bafh->bfh2;
     71        bfhColor = (BITMAPFILEHEADER2 *)((char *)&bafh->bfh2 + sizeof(RGB2)*2 + sizeof(BITMAPFILEHEADER2));
     72    }
     73    else {//single icon
     74        bfhBW    = (BITMAPFILEHEADER2 *)iconbitmap;
     75        bfhColor = (BITMAPFILEHEADER2 *)((char *)bfhBW + sizeof(RGB2)*2 + sizeof(BITMAPFILEHEADER2));
     76        bafh     = (BITMAPARRAYFILEHEADER2 *)bfhBW; //for calculation bitmap offset
     77    }
    7078    hps = WinGetPS(HWND_DESKTOP);
    71     hbmColor = GpiCreateBitmap(hps, &bfh->bmp2, CBM_INIT,
    72                                (char *)bafh + bfh->offBits,
    73                                (BITMAPINFO2 *)&bfh->bmp2);
     79    hbmColor = GpiCreateBitmap(hps, &bfhColor->bmp2, CBM_INIT,
     80                               (char *)bafh + bfhColor->offBits,
     81                               (BITMAPINFO2 *)&bfhColor->bmp2);
    7482    if(hbmColor == GPI_ERROR) {
    7583        dprintf(("OSLibWinCreateIcon: GpiCreateBitmap failed!"));
     
    7785        return 0;
    7886    }
    79     hbmMask = GpiCreateBitmap(hps, &bafh->bfh2.bmp2, CBM_INIT,
    80                               (char *)bafh + bafh->bfh2.offBits,
    81                               (BITMAPINFO2 *)&bafh->bfh2.bmp2);
     87    hbmMask = GpiCreateBitmap(hps, &bfhBW->bmp2, CBM_INIT,
     88                              (char *)bafh + bfhBW->offBits,
     89                              (BITMAPINFO2 *)&bfhBW->bmp2);
    8290    if(hbmMask == GPI_ERROR) {
    8391        dprintf(("OSLibWinCreateIcon: GpiCreateBitmap hbmMask failed!"));
     
    8896
    8997    pointerInfo.fPointer   = FALSE; //icon
    90     pointerInfo.xHotspot   = bfh->xHotspot;
    91     pointerInfo.yHotspot   = bfh->yHotspot;
     98    pointerInfo.xHotspot   = bfhBW->xHotspot;
     99    pointerInfo.yHotspot   = bfhBW->yHotspot;
    92100    pointerInfo.hbmColor   = hbmColor;
    93101    pointerInfo.hbmPointer = hbmMask;
  • trunk/src/user32/new/user32.def

    r432 r647  
    1 ; $Id: user32.def,v 1.4 1999-08-05 23:40:16 phaller Exp $
     1; $Id: user32.def,v 1.5 1999-08-23 13:56:47 sandervl Exp $
    22
    33;Created by BLAST for IBM's compiler
     
    599599    EnumDisplayMonitors        = _EnumDisplayMonitors@16        @1005
    600600
     601    CreateWindowProc                    @2000
     602    GetOS2Callback__15Win32WindowProcFv = GetOS2Callback__Fv @2001
     603
    601604; Wine helper function
    602605    GetSysColorPen              = _GetSysColorPen@4              @2002
Note: See TracChangeset for help on using the changeset viewer.