X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c4e7c2aa5822f9a6e97d8d7848b95ea2eadcd98b..3d05544e4e71e7ff10984dae5a9b8a07d92f42a6:/src/msw/dib.cpp?ds=inline diff --git a/src/msw/dib.cpp b/src/msw/dib.cpp index d86337576a..ed29152759 100644 --- a/src/msw/dib.cpp +++ b/src/msw/dib.cpp @@ -26,7 +26,6 @@ *******************************************************************************/ // For compilers that support precompilation, includes "wx.h". -#define IN_WX_MAIN_CPP #include "wx/wxprec.h" #if defined(__BORLANDC__) @@ -36,12 +35,15 @@ #ifndef WX_PRECOMP #include "wx/setup.h" #include "wx/defs.h" +#include "wx/bitmap.h" #endif #include #include #include +#ifndef __MWERKS__ #include +#endif #include "wx/msw/dib.h" @@ -474,7 +476,8 @@ BOOL ReadDIB(LPSTR lpFileName, HBITMAP *bitmap, HPALETTE *palette) goto ErrExit; } - if (!(nNumColors = (WORD)lpbi->biClrUsed)) + nNumColors = (WORD)lpbi->biClrUsed; + if ( nNumColors == 0 ) { /* no color table for 24-bit, default size otherwise */ if (lpbi->biBitCount != 24) @@ -595,7 +598,8 @@ BOOL PASCAL MakeBitmapAndPalette(HDC hDC, HANDLE hDIB, lpInfo = (LPBITMAPINFOHEADER) GlobalLock(hDIB); #endif - if ((hPalette = MakeDIBPalette(lpInfo))) + hPalette = MakeDIBPalette(lpInfo); + if ( hPalette ) { // Need to realize palette for converting DIB to bitmap. hOldPal = SelectPalette(hDC, hPalette, TRUE); @@ -685,7 +689,7 @@ HPALETTE MakeDIBPalette(LPBITMAPINFOHEADER lpInfo) return((HPALETTE) GetStockObject(DEFAULT_PALETTE)); } -bool wxLoadIntoBitmap(char *filename, wxBitmap *bitmap, wxColourMap **pal) +bool wxLoadIntoBitmap(char *filename, wxBitmap *bitmap, wxPalette **pal) { HBITMAP hBitmap; HPALETTE hPalette; @@ -702,7 +706,7 @@ bool wxLoadIntoBitmap(char *filename, wxBitmap *bitmap, wxColourMap **pal) { if (pal) { - *pal = new wxColourMap; + *pal = new wxPalette; (*pal)->SetHPALETTE((WXHPALETTE) hPalette); } else @@ -726,7 +730,7 @@ bool wxLoadIntoBitmap(char *filename, wxBitmap *bitmap, wxColourMap **pal) else return FALSE; } -wxBitmap *wxLoadBitmap(char *filename, wxColourMap **pal) +wxBitmap *wxLoadBitmap(char *filename, wxPalette **pal) { wxBitmap *bitmap = new wxBitmap; if (wxLoadIntoBitmap(filename, bitmap, pal)) @@ -915,7 +919,7 @@ HANDLE BitmapToDIB (HBITMAP hBitmap, HPALETTE hPal) return hDIB; } -bool wxSaveBitmap(char *filename, wxBitmap *bitmap, wxColourMap *colourmap) +bool wxSaveBitmap(char *filename, wxBitmap *bitmap, wxPalette *colourmap) { HPALETTE hPalette = 0; if (colourmap)