osd_BmpUI.h
上传用户:poi891205
上传日期:2013-07-15
资源大小:9745k
文件大小:8k
源码类别:

DVD

开发平台:

C/C++

  1. /***********************************************************************
  2. ** Osd_BmpUI.h
  3. **
  4. **      structure define for Osd_BmpUI.c
  5. **
  6. **
  7. **  Creator :suqiaoli,feeling
  8. ** Date:    2004-7-8 10:36
  9. ************************************************************************/
  10. #ifndef _OSD_BMP_UI_H
  11. #define  _OSD_BMP_UI_H
  12. //pos variable and pos fixed bmps
  13. //display osd
  14. #define ANGLE_BMP 0
  15. #define CD_BMP 1
  16. #define CDROM_BMP 2
  17. #define CLOCK_ICON_BMP 3
  18. #define DOLBY_BMP 4
  19. #define DTS_BMP 5
  20. #define DVD_BMP 6
  21. #define LANGUAGE_BMP 7
  22. #define MUTE_ICON_BMP 8
  23. #define REPEAT_1_BMP 9
  24. #define REPEAT_ALL_BMP 10
  25. #define REPEAT_CLOSE_BMP 11
  26. #define SUB_TITLE_BMP 12
  27. #define SVCD_BMP 13
  28. #define VCD_BMP 14
  29. #define VOLUME_ICON_BMP 15
  30. //general osd bmp
  31. #define OSD_BG_BMP_A                0
  32. #define OSD_DOWN_BG_BMP_A           1
  33. #define OSD_4_1_BMP_D             2
  34. #define OSD_4_2_BMP_D             3
  35. #define OSD_4_3_BMP_D             4
  36. #define OSD_5_1_BMP_E               5
  37. #define OSD_5_3_BMP_E               6
  38. #define OSD_6_1_BMP_F               7
  39. #define OSD_6_2_BMP_F               8
  40. #define OSD_6_3_BMP_F             9
  41. //sound data position,include bmp,line,rect,str
  42. #ifdef OSD_BMP_SOUND
  43. //sound bmp
  44. #define OSD_CURSOR_1_BMP_B                  10
  45. #define OSD_CURSOR_2_BMP_D                  11
  46. #define SOUND_SLIDE_ARROW_SELECTED_BMP_E3 12
  47. #define SOUND_SLIDE_ARROW_CURSOR_BMP_E3     13
  48. //sound line
  49. #define SOUND_LINE1_A 0
  50. #define SOUND_LINE2_A 1
  51. #define SOUND_LINE1_B 2
  52. #define SOUND_LINE2_B 3
  53. #define SOUND_BG_LINE_B 4
  54. #define SOUND_LINE1_D 5
  55. #define SOUND_LINE2_D 6
  56. #define SOUND_CURSOR_UP_LINE_E4 7
  57. #define SOUND_CURSOR_DOWN_LINE_E4 8
  58. #define SOUND_SEL_UP_LINE_E4 9
  59. #define SOUND_SEL_DOWN_LINE_E4 10
  60. #define SOUND_SCALE_N6_LINE_E3 11
  61. #define SOUND_SCALE_N6_N4_LINE_E3 12
  62. #define SOUND_SCALE_N4_LINE_E3 13
  63. #define SOUND_SCALE_LINE_E3 14
  64. //sound rect
  65. #define SOUND_SHADOW_A 0
  66. #define SOUND_RECT_BG_B 1
  67. #define SOUND_DOWN_B 2
  68. #define SOUND_SHADOW_B 3
  69. #define SOUND_SHADOW_D 4
  70. #define SOUND_DOWN_D 5
  71. #define SOUND_CURSOR_RECT_E4 6
  72. #define SOUND_SEL_RECT_E4 7
  73. #define SOUND_UNSEL_RECT_E4 8
  74. #define SOUND_BG_RECT_E4 9
  75. #define SOUND_EQ_BG_RECT_E1 10
  76. #define SOUND_BAND_BG_RECT_E1 11
  77. #define SOUND_KEY_BG_RECT_E3 12
  78. #define SOUND_EQ_POPUP_BG_RECT_E4 13
  79. #define SOUND_EQ_CURSOR_BG_RECT_E4  14
  80. #define SOUND_EQ_UNSEL_BG_RECT_E4 15
  81. //sound str
  82. #define SOUND_UNSEL_STR_B 0
  83. #define SOUND_SEL_STR_B 1
  84. #define SOUND_UNHL_ITEM_STR_E4 2
  85. #define SOUND_HL_ITEM_STR_E4 3
  86. #define SOUND_EQ_STR_E4 4
  87. #define SOUND_SCALE_KEY_STR_E3 5
  88. #define SOUND_SCALE_N_NUM_STR_E3 6
  89. #define SOUND_SCALE_P_NUM_STR_E3 7
  90. #endif
  91. //Program data position,include bmp,line,rect,str
  92. #ifdef OSD_BMP_PROG
  93. //prog bmp
  94. #define PROG_CDROM_FOLDER_BMP_D     10
  95. #define PROG_CDROM_FILE_BMP_D      11
  96. //prog line
  97. #define PROG_LINE1_A         0
  98. #define PROG_LINE2_A         1
  99. #define PROG_LINE1_B         2
  100. #define PROG_LINE2_B         3
  101. #define PROG_BG_LINE_B         4
  102. #define PROG_LINE1_D         5
  103. #define PROG_LINE2_D         6
  104. //prog rect
  105. #define PROG_SHADOW_A             0
  106. #define PROG_SHADOW_B             1
  107. #define PROG_DOWN_B                 2
  108. #define PROG_SHADOW_D             3
  109. #define PROG_DOWN_D                 4
  110. #define PROG_BG2_E                  5
  111. #define PROG_BG3_E                  6
  112. #define PROG_PLAY_NORMAL_E          7
  113. #define PROG_RESET_NORMAL_E         8
  114. //prog str
  115. #define PROG_STR_B                  0
  116. #define PROG_STR_COLON              1
  117. #define PROG_DVD_TT                 2
  118. #define PROG_DVD_CH                 3
  119. #endif
  120. typedef struct
  121. {
  122.     UINT16  uiXStart; //x start position
  123.     UINT16  uiYStart; //y start position
  124.     UINT16  uiXWidth;//total x Width
  125.     UINT16  uiYHeight;//total y Height
  126.     UINT16  uiXOffset;// xoffset
  127.     UINT8  uiYOffset;
  128.     UINT8   uiIndex; // index in bmp array
  129.     BYTE    bRegion; //region
  130. } OSD_BITMAP_LAYOUT_S;
  131. typedef struct
  132. {
  133. UINT16  uiXStart;//x start position
  134. UINT16  uiYStart; // y start position
  135. UINT16  uiXLen; // x len
  136. UINT16  uiYLen; //y len
  137. UINT16   uiXOffset; //x offset for x variable line, if fixed then 0
  138. UINT16   uiYOffset; //y offset for y variable line, if fixed then 0
  139. UINT8   uiColor; //color index in palette array
  140. BYTE    bRegion; // region 
  141. }OSD_LINE_LAYOUT_S;
  142. typedef struct
  143. {
  144. UINT16  uiXStart; //x Start position
  145. UINT16  uiYStart; //y Start position
  146. UINT16  uiXWidth; // x Length
  147. UINT16  uiYHeight; // y Length
  148.      UINT16   uiXOffset; //x offset for x variable line, if fixed then 0
  149. UINT16   uiYOffset; //y offset for y variable line, if fixed then 0
  150. UINT8   uiBgColor; //bg color in pallette array
  151. BYTE    bRegion; //region
  152. }OSD_RECT_LAYOUT_S;
  153. typedef struct
  154. {
  155. UINT16  uiXStart;//x start position
  156. UINT16  uiYStart;//y start position
  157. UINT16   uiXOffset; //x offset for x variable line, if fixed then 0
  158. UINT16   uiYOffset; //y offset for y variable line, if fixed then 0
  159.     UINT8   uiFontColor;//font color index in pallette array
  160.     UINT8   uiBgColor;//bg color index in pallette array
  161.     BYTE    bRegion;//region
  162. }OSD_STR_LAYOUT_S;
  163.     
  164. typedef struct
  165. {
  166. UINT16   uiBg;//bg bmp index
  167. UINT16   uiLineLeft; //line1 index
  168. UINT16   uiDownBg;//down bg bmp index
  169. UINT16   uiLineRight; //line2 index
  170.      UINT16   uiShadow;//shadow rect index
  171. }OSD_REGIONA_LAYOUT_S;
  172. typedef struct
  173. {
  174. UINT16   uiBg;//bg bmp or rect index
  175. UINT16   uiBgLine;//bg line index
  176. UINT16   uiLineLeft; //line1 index
  177. UINT16   uiDownBg;//down rect
  178. UINT16   uiCursor; // cursor bmp index
  179. UINT16   uiSelStr; // selected string index
  180. UINT16   uiUnselStr; //unslected string index
  181. UINT16   uiLineRight; //line2 index
  182.      UINT16   uiShadow;//shadow rect index
  183. }OSD_REGIONB_LAYOUT_S;
  184. typedef struct
  185. {
  186. UINT16   uiLeftBg;//Left bg bmp index
  187. UINT16   uiMiddleBg;//middle bg bmp index
  188. UINT16   uiLineLeft;//line1  index
  189. UINT16   uiDownBg; //down bg rect or bmp
  190. UINT16   uiCursor; // cursor bmp index
  191. UINT16   uiLineRight; //line2 index
  192.      UINT16   uiShadow;//shadow rect index
  193. UINT16   uiRightBg; //right bg bmp index 
  194. }OSD_REGIOND_LAYOUT_S;
  195. typedef struct
  196. {
  197. UINT16   uiLeftBg;//Left bg bmp index
  198. UINT16   uiMiddleBg;//Middle bg rect
  199. UINT16   uiRightBg; //right bg bmp index 
  200. }OSD_REGIONE_LAYOUT_S;
  201. typedef struct
  202. {
  203. UINT16   uiLeftBg;//Left bg bmp index
  204. UINT16   uiMiddleBg;//middle bg bmp index
  205. UINT16   uiRightBg; //right bg bmp index 
  206. }OSD_REGIONF_LAYOUT_S;
  207. void osd_draw_bmp(int xStart, int yStart,const BYTE* bmp,  BYTE r);
  208. void osd_draw_repeat_bmp(UINT16 uiXStart,UINT16 uiYStart,UINT16 uiXWidth,UINT16 uiHeight,const BYTE* bmp,BYTE r);
  209. void OSD_LayoutBmp(UINT8 uiLayoutBmpIndex,UINT8 uiOffsetIndex);
  210. extern void osd_draw_hline_region(int xStart, int xEnd, int y, unsigned color, int n, int r);
  211. void OSD_LayoutLine(UINT16 uiLayoutLineIndex, UINT8 uiOffsetIndex);
  212. extern void osd_draw_region_rect(UINT32 xStart, UINT32 yStart, UINT32 xLen, UINT32 yLen, BYTE bkColor, BYTE r);
  213. void OSD_LayoutRect(UINT16 uiLayoutRectIndex, UINT8 uiOffsetIndex);
  214. extern void osd_DrawRegionString(UINT32 xStart, UINT32 yStart, const BYTE *str, BYTE fontColor, BYTE bkColor, BYTE r);
  215. void osd_Draw_Bmp_RegionString(UINT32 xStart, UINT32 yStart, const BYTE *str, BYTE fontColor, BYTE bkColor, BYTE r);
  216. void OSD_LayoutStr(const BYTE *str, UINT16 uiLayoutStrIndex, UINT8 uiOffsetIndex);
  217. void osd_Draw_Bmp_Little_RegionString(UINT32 xStart, UINT32 yStart, const BYTE *str, BYTE fontColor, BYTE bkColor, BYTE r);
  218. void OSD_LayoutLittleStr(const BYTE *str, UINT16 uiLayStrIndex, UINT8 uiOffsetIndex);
  219. void OSD_DrawReverseBmp(UINT16 xStart, UINT16 yStart,  UINT8 uiLayoutIndex, BYTE bMode);
  220. void OSD_Draw3DRect(UINT16 xStart, UINT16 yStart, UINT16 xEnd, UINT8 uiLayoutIndexEdge, UINT8 uiLayoutIndexLine);
  221. #ifdef OSD_BMP_DISPLAY//feeling
  222. void osd_draw_bmp_display(int xStart, int yStart,const BYTE* bmp,  BYTE r);
  223. void OSD_LayoutBmpDisplay(UINT8 uiLayoutIndex);
  224. #endif
  225. #endif //ifndef  _OSD_BMP_UI_H