X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/0b6cf8797e1a7432c7b4871376a0e42696712cf0..794bcc2dea743ac907b839f54e451847c9ea4b72:/include/wx/msw/dib.h diff --git a/include/wx/msw/dib.h b/include/wx/msw/dib.h index 79cd3d8cbe..dce72a1404 100644 --- a/include/wx/msw/dib.h +++ b/include/wx/msw/dib.h @@ -1,26 +1,53 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: dib.h +// Name: wx/msw/dib.h // Purpose: Routines for loading and saving DIBs // Author: Various // Modified by: // Created: 01/02/97 // RCS-ID: $Id$ // Copyright: (c) Julian Smart -// Licence: wxWindows licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// +#ifndef _WX_DIB_H_ +#define _WX_DIB_H_ + +class WXDLLEXPORT wxBitmap; +class WXDLLEXPORT wxPalette; + +// ---------------------------------------------------------------------------- +// Functions for working with DIBs +// ---------------------------------------------------------------------------- + +// VZ: we have 3 different sets of functions: from bitmap.cpp (wxCreateDIB and +// wxFreeDIB), from dib.cpp and from dataobj.cpp - surely there is some +// redundancy between them? (FIXME) + +// defined in bitmap.cpp +extern bool wxCreateDIB(long xSize, long ySize, long bitsPerPixel, + HPALETTE hPal, LPBITMAPINFO* lpDIBHeader); +extern void wxFreeDIB(LPBITMAPINFO lpDIBHeader); + +// defined in ole/dataobj.cpp +extern size_t wxConvertBitmapToDIB(LPBITMAPINFO pbi, const wxBitmap& bitmap); +extern wxBitmap wxConvertDIBToBitmap(const LPBITMAPINFO pbi); + +// the rest is defined in dib.cpp + // Save (device dependent) wxBitmap as a DIB -bool wxSaveBitmap(wxChar *filename, wxBitmap *bitmap, wxColourMap *colourmap = NULL); +bool wxSaveBitmap(wxChar *filename, wxBitmap *bitmap, wxPalette *colourmap = NULL); // Load device independent bitmap into device dependent bitmap -wxBitmap *wxLoadBitmap(wxChar *filename, wxColourMap **colourmap = NULL); +wxBitmap *wxLoadBitmap(wxChar *filename, wxPalette **colourmap = NULL); // Load into existing bitmap; -bool wxLoadIntoBitmap(wxChar *filename, wxBitmap *bitmap, wxColourMap **pal = NULL); +bool wxLoadIntoBitmap(wxChar *filename, wxBitmap *bitmap, wxPalette **pal = NULL); + +HANDLE wxBitmapToDIB (HBITMAP hBitmap, HPALETTE hPal); +BOOL wxReadDIB(LPTSTR lpFileName, HBITMAP *bitmap, HPALETTE *palette); +HANDLE wxReadDIB2(LPTSTR lpFileName); +LPSTR wxFindDIBBits (LPSTR lpbi); +HPALETTE wxMakeDIBPalette(LPBITMAPINFOHEADER lpInfo); -HANDLE BitmapToDIB (HBITMAP hBitmap, HPALETTE hPal); -BOOL ReadDIB(LPTSTR lpFileName, HBITMAP *bitmap, HPALETTE *palette); -HANDLE ReadDIB2(LPTSTR lpFileName); -LPSTR FindDIBBits (LPSTR lpbi); -HPALETTE MakeDIBPalette(LPBITMAPINFOHEADER lpInfo); +#endif // _WX_DIB_H_