/** @file * Definition of region related information. * * @author mandy.wu * @version 0.1 */ #ifndef _REGION_H #define _REGION_H #include "datatypes.h" #include "gui_eng/font_common.h" //#include "gui_eng/device_gdi.h" #define ALPHA (0xFF) /* Regions */ typedef enum { REGION_MENU_MIN = (1 << 0), REGION_LAST = 0x8000 } Region_t; /* Osd window */ typedef enum _OSD_Layer_t { OSD_LAYER1 = 0, OSD_LAYER2, OSD_LAYER3, OSD_SUBTITLE, OSD_LAYER_GAME, OSD_LAYER_ESTICKER, OSD_LAYER_LAST } OSD_Layer_t; /* Used to store the osd backup buffer info*/ typedef struct _osd_backup_buffer_info { const BOOLEAN used_flag; /* indificate this buffer whether be used*/ UINT8 *addresss; /* buffer addresss */ const UINT16 backup_region_width; const UINT16 backup_region_height; const UINT32 buffer_size; } osd_backup_buffer_info; typedef struct _OSD_Layer_Memory_Size_info { const BOOLEAN used_flag; /* indificate this buffer whether be used*/ const UINT32 mem_size; /* memory size on each OSD layer */ } OSD_Layer_Memory_Size_info; typedef struct { UINT8 A; UINT8 R; UINT8 G; UINT8 B; } PALENTRY; typedef struct { UINT16 width; /* image width in pixels */ UINT16 height; /* image height in pixels */ UINT16 bpp; /* bits per pixel */ UINT32 format; /* pixel format of the icon, see pixel_format_t */ void *imagebits; /* must be 4 bytes aligned */ UINT16 first; /* the started index number of the bitmap */ UINT16 count; /* the color number of the bitmap */ const PALENTRY *palette; /* palette for the icon */ #ifdef CONFIG_FONT_ENGINE_HARFBUZZ UINT8 bFgColor; /* The index value of text filling color. */ UINT8 bBgColor; /* The index value of text bg color. */ #endif } IMAGEHDR, *PIMAGEHDR; typedef UINT8 ** OSDStringInfo_t; typedef struct { Region_t region; /* region index */ RegionHandle_t handle; /* region handle index */ INT16 x; /* x position of the region*/ INT16 y; /* y position of the region */ UINT16 width; /* width of the region */ UINT16 height; /* height of the region */ PixelFormat_e format; /* format of pixel value*/ UINT8 bpp; /* bits per pixel */ UINT8 transparency; /* 0~MAX_REGION_TRANSPARENCY 0: OPaque */ UINT8 active; UINT8 preserve; /* Backup buffer indicator */ const PALENTRY *palette; /* The palette for the region */ const IMAGEHDR *bitmap; /* The bitmaps for the region */ OSD_Layer_t osd_layer; /* OSD window layer */ } RegionInfo_t; /* temporarily used by resource generated by uiDesign Tool */ typedef RegionInfo_t region_info_t; #endif