//+---------------------------------------------------------------------------- // // File: bmpimage.h // // Module: CMAK.EXE and CMDIAL32.DLL // // Synopsis: Definition of the CM Bitmap display routines. // // Copyright (c) 1996-1998 Microsoft Corporation // // Author: quintinb/nickball Created 08/06/98 // //+---------------------------------------------------------------------------- #ifndef _BMP_IMAGE_H #define _BMP_IMAGE_H #include #include "cmutil.h" #include "cmdebug.h" typedef struct tagBmpData { HBITMAP hDIBitmap; // bitmap, in device-independent format HBITMAP hDDBitmap; // bitmap, in device-dependent format LPBITMAPINFO pBmi; // bitmap info for the bitmap, the raw bits HPALETTE *phMasterPalette; // Master Palette, used when displaying any bitmap BOOL bForceBackground; // determines background/foreground mode } BMPDATA, *LPBMPDATA; LPBITMAPINFO CmGetBitmapInfo(HBITMAP hbm); static HPALETTE CmCreateDIBPalette(LPBITMAPINFO pbmi); void ReleaseBitmapData(LPBMPDATA pBmpData); BOOL CreateBitmapData(HBITMAP hDIBmp, LPBMPDATA lpBmpData, HWND hwnd, BOOL fCustomPalette); LRESULT CALLBACK BmpWndProc(HWND hwndBmp, UINT uMsg, WPARAM wParam, LPARAM lParam); void QueryNewPalette(LPBMPDATA lpBmpData, HWND hwndDlg, int iBmpCtrl); void PaletteChanged(LPBMPDATA lpBmpData, HWND hwndDlg, int iBmpCtrl); HBITMAP CmLoadBitmap(HINSTANCE hInst, LPCTSTR pszSpec); #endif // _BMP_IMAGE_H