/* See Creating a new Image Type - An Example for details */
#if !defined(DIMG_IMAGE_H) #define DIMG_IMAGE_H #include <tcl.h> #include <tk.h> //#include "tkInt.h" //#include "tkPort.h" //#include "tkCanvas.h" #include "tkWinInt.h" typedef struct DimgInstance DimgInstance; typedef struct DimgMaster { Tk_ImageMaster tkMaster; // Tk's token for image master. // NULL means the image is being deleted. char szName[256]; // Name of image Tcl_Interp *pInterp; // Interpreter associated with the application using this image. int nInstance; // Number of instances of image DimgInstance *pInstance; // First in the list of instances associated with this master. int nWidth; // Image width int nHeight; // Image height int nMaskPitch; // Pitch for mask bitmap int nImagePitch; // Pitch for mask bitmap HBITMAP bmImage; // Bitmap for rgb image HBITMAP bmMask; // Bitmap for mask image DWORD dwImageMode; // Mode for rgb image DWORD dwMaskMode; // Mode for mask image char *pImageData; // Pointer to raw image data char *pMaskData; // Pointer to raw mask data RGBQUAD aColorTable[8]; // Color table for mask image } DimgMaster; struct DimgInstance { Tk_Window tkwin; // Pointer to window DimgMaster *pMaster; // Pointer to master for image DimgInstance *pNext; // Pointer to the next instance in the list }; void vRegisterDimg(); #endif //DIMG_IMAGE_