CPI_Image.h
上传用户:hxb_1234
上传日期:2010-03-30
资源大小:8328k
文件大小:1k
源码类别:

VC书籍

开发平台:

Visual C++

  1. // Image Support
  2. //
  3. typedef struct _CPs_Image
  4. {
  5.     HBITMAP m_hbmImage;
  6.     SIZE m_szSize;
  7. } CPs_Image;
  8. //
  9. typedef enum _CPe_ImageState
  10. {
  11.     igsQuiescent = 0,
  12.     igsActive = 1,
  13.     igsFloatActive = 2,
  14.     igsLast = 2
  15. } CPe_ImageState;
  16. //
  17. typedef struct _CPs_Image_WithState
  18. {
  19.     CPs_Image* m_pImage;
  20.     int m_iStateHeight;
  21.     POINT m_ptSource[igsLast+1];
  22. } CPs_Image_WithState;
  23. ////////////////////////////////////////////////////////////////////////////////
  24. //
  25. #define CIC_TILEDFILOPTIONS_NONE 0
  26. #define CIC_TILEDFILOPTIONS_NOCENTRE 1
  27. //
  28. CPs_Image* CPIG_CreateImage_FromFile(const char* pcFilename);
  29. CPs_Image* CPIG_CreateImage_FromSubFile(CP_COMPOSITEFILE hmComposite, const char* pcSubFilename);
  30. CPs_Image* CPIG_CreateImage_FromResource(const UINT uiResourceID);
  31. CPs_Image_WithState* CPIG_CreateStateImage(CPs_Image* pSource, const int iNumStates);
  32. void CPIG_DestroyImage(CPs_Image* pImage);
  33. void CPIG_DestroyImage_WithState(CPs_Image_WithState* pImage);
  34. void CPIG_TiledFill(CPs_DrawContext* pDC, const RECT* prTarget, const RECT* prSourceRect, CPs_Image* pSourceImage, const DWORD dwOptions);
  35. void CPIG_DrawStateImage(CPs_DrawContext* pDC, const int iX, const int iY, CPs_Image_WithState* pSource, const CPe_ImageState enState);
  36. void CPIG_DrawImage(CPs_DrawContext* pDC, const int iX, const int iY, CPs_Image* pSource);
  37. //
  38. ////////////////////////////////////////////////////////////////////////////////