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

VC书籍

开发平台:

Visual C++

  1. ////////////////////////////////////////////////////////////////////////////////
  2. ////////////////////////////////////////////////////////////////////////////////
  3. //
  4. // Skin Support
  5. //
  6. ////////////////////////////////////////////////////////////////////////////////
  7. #define CPC_COMMANDTARGET_ALIGN_LEFT 0x1
  8. #define CPC_COMMANDTARGET_ALIGN_RIGHT 0x2
  9. #define CPC_COMMANDTARGET_ALIGN_TOP 0x4
  10. #define CPC_COMMANDTARGET_ALIGN_BOTTOM 0x8
  11. ////////////////////////////////////////////////////////////////////////////////
  12. //
  13. typedef struct _CPs_CommandTarget
  14. {
  15.     CPs_Image_WithState* m_pStateImage;
  16.     DWORD m_dwAlign;
  17.     POINT m_ptOffset;
  18.     wp_Verb m_pfnVerb;
  19.     void* m_pNext;
  20. } CPs_CommandTarget;
  21. //
  22. //
  23. typedef struct _CPs_Indicator
  24. {
  25.     DWORD m_dwAlign;
  26.     RECT m_rAlign;
  27.     char* m_pcName;
  28.     void* m_pNext;
  29. } CPs_Indicator;
  30. //
  31. ////////////////////////////////////////////////////////////////////////////////
  32. #define CPC_SKINVERSION_200 200L
  33. ////////////////////////////////////////////////////////////////////////////////
  34. //
  35. typedef struct _CPs_Skin
  36. {
  37.     DWORD m_dwSkinVersion;
  38.     COLORREF m_clrTransparent;
  39.     // Playlist
  40.     HFONT mpl_hfFont;
  41.     CPs_Image* mpl_pBackground;
  42.     RECT mpl_rBackground_SourceTile;
  43.     RECT mpl_rList_Border;
  44.     // List control colours
  45.     COLORREF mpl_ListTextColour;
  46.     COLORREF mpl_ListTextColour_Selected;
  47.     COLORREF mpl_ListTextColour_HotItem;
  48.     COLORREF mpl_ListHeaderColour;
  49.     // List control
  50.     CPs_Image* mpl_pListBackground;
  51.     RECT mpl_rListBackground_SourceTile;
  52.     CPs_Image* mpl_pListHeader_Up;
  53.     CPs_Image* mpl_pListHeader_Down;
  54.     RECT mpl_rListHeader_SourceTile;
  55.     // Scrollbar - Horiz
  56.     CPs_Image* mpl_pHScrollBar_Bk;
  57.     RECT mpl_rHScrollBar_Bk_Tile;
  58.     CPs_Image* mpl_pHScrollBar_TrackUp;
  59.     CPs_Image* mpl_pHScrollBar_TrackDn;
  60.     RECT mpl_rHScrollBar_Track_Tile;
  61.     CPs_Image_WithState* mpl_pHScrollBar_Left;
  62.     CPs_Image_WithState* mpl_pHScrollBar_Right;
  63.     // Scrollbar - Vert
  64.     CPs_Image* mpl_pVScrollBar_Bk;
  65.     RECT mpl_rVScrollBar_Bk_Tile;
  66.     CPs_Image* mpl_pVScrollBar_TrackUp;
  67.     CPs_Image* mpl_pVScrollBar_TrackDn;
  68.     RECT mpl_rVScrollBar_Track_Tile;
  69.     CPs_Image_WithState* mpl_pVScrollBar_Up;
  70.     CPs_Image_WithState* mpl_pVScrollBar_Down;
  71.     // Selection
  72.     CPs_Image* mpl_pSelection;
  73.     RECT mpl_rSelection_Tile;
  74.     CPs_Image* mpl_pFocus;
  75.     RECT mpl_rFocus_Tile;
  76.     CPs_CommandTarget* mpl_pCommandTargets;
  77.     SIZE mpl_szMinWindow;
  78.     CPs_Indicator* mpl_pIndicators;
  79. } CPs_Skin;
  80. //
  81. ////////////////////////////////////////////////////////////////////////////////
  82. extern CPs_Skin* glb_pSkin;
  83. ////////////////////////////////////////////////////////////////////////////////
  84. //
  85. void CPSK_Initialise();
  86. void CPSK_Uninitialise();
  87. //
  88. ////////////////////////////////////////////////////////////////////////////////