KT24-1110_65E-HA-651B/include_lib/system/ui/ui_simple/ui_res.h
2024-11-10 18:44:17 +08:00

129 lines
3.4 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*******************************************************************************************
File Name: ap_res.h
Version: 1.00
Discription:
Author:yulin deng
Email :flowingfeeze@163.com
Date:星期三, 六月 22 2011
Copyright:(c) 2011 @ , All Rights Reserved.
*******************************************************************************************/
#ifndef __ap_res_h
#define __ap_res_h
#include "typedef.h"
/******************************************************************
************************资源头的数据结构***************************
资源结构:
资源头 res_head
------------------------------------------
资源目录项 res_head_Item1(picture Item head)
res_head_Item2(string Item head)
res_head_Item3(multi-string Item head)
------------------------------------------
资源索引表 res_entry1(picture 1)
................
res_entryN(picture N)
res_entry1(lang 1)
................
res_entryN(lang N)
--------------------------------------------
资源数据 picture data 1
................
picture data N
Lang ID 1 entry
................
Lang ID N entry
Lang 1 string data
................
Lang N string data
******************************************************************/
#define RESHEADITEM 16 //各个entry长度统一为16uint8s
#define GROUPDEFINE 6
#define ROW_COUNT_DEF 6
#define TYPE_DIR 0
#define TYPE_FILE 1
#ifndef uint8
#define uint8 u8
#endif
#ifndef uint16
#define uint16 u16
#endif
#ifndef uint32
#define uint32 u32
#endif
#ifndef int32
#define int32 int
#endif
typedef struct {
uint8 magic[4]; //'R', 'U', '2', 0x19
uint16 counts; //资源的个数
} res_head_t; //6 uint8s
/*资源类型索引表的数据结构*/
typedef struct {
uint32 dwOffset; //资源内容索引表的偏移
uint16 wCount; //资源类型总数
uint8 bItemType; //'P'--PIC Table,'S'--String Table,'X' -- XML File
uint8 type;
} res_entry_t;
/*资源内容信息索引的数据结构*/
typedef struct {
uint16 wWidth; //若是图片则代表图片宽若是字符串则代表ID总数
uint16 wHeight; //若是图片则代表图片长若是字符串则代表该语言的ID.
uint32 bType; //资源类型,0x01--language string ,0x02--PIC
uint32 dwOffset; //图片数据区在文件内偏移,4 uint8s
uint32 dwLength; //资源长度, 最大 4G4 uint8s
} res_infor_t; //13 uint8s
/*多国语言资源ID索引表的数据结构*/
typedef struct {
uint32 dwOffset; // 字符ID号对应字符串编码在文件内的偏移
uint16 dwLength; // 字符串长度.即unicode编码字符串的字节数
} res_langid_entry_t; // 6 uint8s
typedef struct {
uint8 filetype; //文件类型 0-- 目录 1 文件
char name[12];
int32 DirEntry;
} file_record_m;
// extern res_entry_t res_entry;
u8 ResOpen(const char *filename);
void *ResGetFp();
uint16 ResShowPic(uint16 pic_id, uint8 x, uint8 y);
uint16 ResShowMultiString(uint8 x, uint8 y, uint16 StringID);
void ResClose();
u8 InitRes();
#define LCDPAGE 8
#define LCDCOLUMN 128
#define SCR_WIDTH LCDCOLUMN
#define SCR_HEIGHT (LCDPAGE*8)
#define MENUICONWIDTH 12 //菜单项目左边图标的宽度(象素)
#define MENUITEMHEIGHT 16 //菜单项目的高度(象素)
#define SCROLLBARWIDTH 6 //垂直滚动条的宽度(象素)
extern u8 LCDBuff[LCDPAGE][LCDCOLUMN];
#endif