📄 uiclass.h
字号:
WID_TextPageNum1,
WID_TextPageNum2,
WID_TextPageNum3,
WID_TextPageNum4,
WID_TextPageNum5,
WID_TextStoreMark,
WID_TextBMarkScroll,
WID_TxtLoadingWin,
WID_BrowserScreenList, // 资源管理器宫格显示窗口
WID_FileNoExist, // 文件打开失败提示窗口
WID_BrowserScroll,
WID_BrowserNineScreenScroll,
WID_BrowserBox = 0x2700,
WID_BrowserDiskBack, // 资源管理器磁盘信息选择背景
WID_BrowserDiskList, // 资源管理器磁盘信息选择列表窗口
WID_BrowserListBack, // 资源管理器列表背景窗口
WID_BrowserList, // 资源管理器列表窗口
WID_BrowserNoFile, // 没有任何文件提示窗口
WID_MediaLibSel, //
WID_MediaSelScroll, //
WID_MediaLibBack,
WID_MediaListBox, //
WID_MediaAllMusic, // 所有音乐列表窗口
WID_MediaAllTitle, // 所有音乐列表窗口
WID_MediaArtist, // 艺术家列表窗口
WID_MediaArtistMusic, // 艺术家内歌取列表窗口
WID_MediaAlbum, // 专辑列表窗口
WID_MediaAlbumMusic, // 专辑内歌取列表窗口
WID_MediaGenre, // 流派列表窗口
WID_MediaGenreMusic, // 流派内歌曲列表窗口
WID_MediaPlayList,// 播放列表窗口
WID_MediaAllMusicSearch, // 所有音乐搜索窗口
WID_MediaFavoAddSubmenu, // 媒体库添加到收藏夹弹出菜单窗口
WID_MediaFavoDelSubmenu, // 媒体库收藏夹文件删除弹出菜单窗口
WID_MediaSortBak, // 媒体库更新背景窗口
WID_MediaSortGuage, // 媒体库更新进度条
WID_RecordList,
WID_MediaListScroll, //
WID_MediaListBack, //
WID_MediaListBack1, //
WID_MediaListBack2, //
WID_ActionSelect,
WID_MinFileName, // 缩略图文件名窗口
WID_DayAdjustWin,
WID_TimerAdjustWin,
WID_SetSysTime,
WID_CalendarWin, /* 日历背景 */
WID_StopWatchWin,
WID_SetSysMainBaseWin = 0x2780,
WID_MainSetSysWin,
WID_SetSysdis,
WID_SetSysBLtime,
WID_SetSysScrSp,
WID_SetSysBright,
WID_SetSysBLmode,
WID_SetSysSys,
WID_SetSysLanguage,
WID_SetSysShutTime,
WID_SetSysDesk,
WID_SetSysRecover,
WID_SetSysUpdate,
WID_SetSysText,
WID_SetSysDisOrHid,
WID_SetSysLock,
#if 1 //def TVOUT_PANEL //080612,huangsl,为了打包稳定,去掉编译开关.
WID_SetSysTvoutSwitch,
#endif
WID_GameSelectMain,
WID_SnakeMain,
WID_SnakeDialog,
WID_SlideMain,
WID_SlideDialog,
WID_BlockMain,
WID_KoulesMain,
WID_SimSelectMain,
WID_SimNesMain,
WID_SimNesDialog,
WID_SimNesMenu,
WID_SimGameboyMain,
WID_SimGameboyDialog,
WID_SimGameboyMenu,
WID_SimSMSMain,
WID_SimSMSDialog,
WID_SimSMSMenu,
WID_FlyMain,
WID_FlyPlayer,
WID_FlySet,
WID_FlyGlory,
WID_FlyHelp,
WID_FlyStart,
WID_RecMain,
WID_RecBoxMain,
WID_RecMainMenu,
WID_RecQualityMenu,
WID_RecVolCtlMenu,
WID_RecDesktopCtlMenu,
WID_TankGameSet,
WID_TankGameScore,
WID_TankGameHelp,
WID_TankGameMain,
WID_TankGameStart,
WID_VideoWin = 0x2800,/*视频*/
WID_UpdateWin = 0x3000,
WID_UpdateErrDialog ,
WID_SetupWinMain = 0x3080,
WID_SetupChildAni,
WID_SetupChildOptionInd,
WID_SetupChildCopyFile,
WID_SetupChildFileName,
WID_HoldOnWin = 0x3100, // 断点窗口
WID_HoldOnFile1,
WID_HoldOnFile2,
WID_HoldOnFile3,
#if ROCK_CAMERA
WID_CameraWin, /* dc dv */
#endif
WID_Max = 0xffff
}WIN_ID;
/*窗口图标种类*/
typedef enum
{
Icon_Titleicon = 0x01, /*标题图片*/
Icon_Background, /*窗口背景图片*/
Icon_Foreground, //
Icon_MenuSel, /*当前选中菜单*/
Icon_ListSel,
Icon_ScrollBack, /*滚动条背景*/
Icon_ScrollFore, /*滚动条滑块*/
Icon_Animation, /*动画的第一张*/
Icon_GuageBack, /*进度条背景图片*/
Icon_GuagePassed, /*进度逝去区填充图标*/
Icon_Guage, /*进度条块*/
Icon_Button, /*按钮图片*/
Icon_ButtonPress, /*按钮按住后的图片*/
Icon_ButtonFocus, /*按钮聚焦时的图片*/
Icon_ToolbarTime, /*设置状态栏时间图标位置*/
Icon_ToolbarBattery, /*设置状态栏电池图标及其位置*/
Icon_ToolbarLock, /*设置状态栏键盘锁图标及其位置*/
Icon_ToobarBG, /*设置状态栏背景图*/
IconMax = 0xfff,
IconWithPosition = 0x7FFF0000 /*用于设置带X,Y坐标的图片*/
} IconType;
/*该图标是否需要设置X,Y坐标*/
#define IconNeedSetPosition(a) ((a&0xFFFF0000)==IconWithPosition)
/*窗口文本种类*/
typedef enum
{
TxtType_Totle = 0x01, /*标题文本*/
TxtType_Content, /*内容文本*/
TxtType_Button, /*按钮文本*/
TxtMax = 0xfff
}TextType;
#define EndWinPicDescp() {IconMax,0,0,0}
#define EndWinTxtDescp() {TxtMax,0,0,0}
/*图片资源描述*/
typedef struct
{
UINT16 BmpID; /*图片在资源中的ID*/
UINT16 X; /*初始化X位置*/
UINT16 Y; /*初始化Y位置*/
}PicDescp;
/*窗口图片描述体*/
typedef struct
{
IconType IconType; /*图片种类*/
PicDescp pic; /*图片ID及定位*/
}WinPicDescp;
/*单行文本框风格*/
typedef enum
{
LeftStyle = 0x1, /*靠左*/
RightStyle, /*靠右*/
CenterStyle, /*居中*/
TopStyle, /*靠上*/
FootStyle, /*靠底*/
LeanUpStyle, /*中偏上,位于上半窗口的中心*/
LeanDownStyle /*中偏下,位于下半窗口的中心*/
}TxtStyle;
/*单行文本框*/
typedef struct
{
UINT16 x;
UINT16 y;
UINT16 w;
UINT16 h;
}TxtRect;
typedef struct //资源管理器,文件列表型菜单
{
UINT32 ICON; // Icon ID
void* pText; // char
}FileListItem;
typedef struct //弹出菜单条目结构
{
UINT32 ICON; // Icon ID
UINT16 Text; // text ID
}ListItem;
typedef struct //菜单条目结构
{
UINT16 ICON; // Icon ID
UINT16 Text; // text ID
}MenuItem;
typedef struct //九宫格型列表条目结构
{
UINT32* ICON; // Icon address
UINT32 ICONID; //资源图标
WCHAR* pText; // unicode
}IconListItem;
/*-----------控件的风格-------*/
/*动画窗的风格*/
#define WES_AniwRepeat (WS_HBIT << 0 ) /*重复*/
#define WES_AniwOnce (WS_HBIT << 1 ) /*单次*/
#define WES_AniTouchPause (WS_HBIT << 2 ) /*触摸时暂停,再触摸时继续*/
#define WES_AniFouceLostPause (WS_HBIT << 3 ) /*失去焦点时暂停,重获焦点后继续*/
#define WES_AnyKeyClose (WS_HBIT << 4 ) /*按任意键关闭窗口*/
/*滚动字符串的风格*/
#define WES_ScrollLeft (WS_HBIT << 0 ) /*向左滚动字符串*/
#define WES_ScrollRight (WS_HBIT << 1 ) /*向右滚动字符串*/
#define WES_ScrollLeftRight (WS_HBIT << 2 ) /*先向左滚动字符串再向右滚动字符串*/
#define WES_ScrollRightLeft (WS_HBIT << 3 ) /*先向右滚动字符串再向左滚动字符串*/
#define WES_NoScrollLeft (WS_HBIT << 4 ) /*未达到滚动长度的字符串靠左显示,默认*/
#define WES_NoScrollRight (WS_HBIT << 5 ) /*未达到滚动长度的字符串靠右显示*/
#define WES_NoScrollMiddle (WS_HBIT << 6 ) /*未达到滚动长度的字符串居中显示*/
/*按钮风格*/
#define ButStyle1 (1<<16)
#define ButStyle2 (1<<17)
#define ButStyle3 (1<<18)
#define BlackWord (1<<19)
/*对话框的风格,用户可以根据需求添加新型对话框,*/
#define WES_DilogOK (WS_HBIT << 0 ) /*确定型对话框,只有一个按钮*/
#define WES_DilogASK (WS_HBIT << 1 ) /*询问型对话框,有两个按钮*/
#define WES_DilogData (WS_HBIT << 2 ) /*数字型对话框,打印一个数字*/
/*进度条,指示条的风格*/
#define WES_GuageVolumeType (WS_HBIT << 1 ) /*音量型进度条*/
#define WES_GuageApeak (WS_HBIT << 2 ) /*垂直*/
#define WES_GuageFill (WS_HBIT << 3 ) /*有填充*/
#define WES_GuageSlider (WS_HBIT << 4 ) /*有滑块*/
#define WES_GuageTime WES_GuageFill //时间,音频播放器,视频播放器进度条
#define WES_GuageVol WES_GuageVolumeType //音量型
#define WES_GuageEQ (WES_GuageApeak|WES_GuageSlider) //EQ型
/*列表框,弹出菜单风格*/
#define WES_ListUsedPic (WS_HBIT << 0 ) /*UI使用图片*/
#define WES_ListUsedcolor (WS_HBIT << 1 ) /*UI使用画笔*/
#define WES_ListRightIcon (WS_HBIT << 2 ) /*菜单具备右箭头风格*/
#define WES_ListWithScroll (WS_HBIT << 3 ) /*菜单带有滚动条*/
#define WES_FileList (WS_HBIT << 4) /*资源管理器,文件列表型菜单*/
#define WES_Unicode (WS_HBIT << 5) /*unicode显示,无此风格时GBK显示*/
#define WES_Scroll (WS_HBIT << 6) /*unicode显示,无此风格时GBK显示*/
#define WES_MaskSel (WS_HBIT << 7) /*选中条目时左侧自动添加标记*/
#define WES_Oppoleft (WS_HBIT << 8) /*for oppo*/
#define WES_OppoRight (WS_HBIT << 9) /*for oppo*/
/*菜单类风格*/
#define WES_MenuUsedPic (WS_HBIT << 0 ) /*UI使用图片*/
#define WES_MenuUsedcolor (WS_HBIT << 1 ) /*UI使用画笔*/
#define WES_MenuWithScroll (WS_HBIT << 2 ) /*菜单带有滚动条*/
#define WES_MenuFileList (WS_HBIT << 3) /*资源管理器,文件列表型菜单*/
#define WES_Unicode (WS_HBIT << 5) /*unicode显示,无此风格时GBK显示*/
/*滚动条风格*/
#define WES_ScrollDefault (WS_HBIT << 0 ) /*默认滚动条*/
#define WES_ScrollSimple (WS_HBIT << 1 ) /*无上下箭头滚动条*/
/*九宫格列表风格(含原列表框,弹出菜单所有风格)*/
#define WES_Icon3x3 ((UINT32)((3<<4)|3)<<24) /*九宫格排列*/
#define WES_Icon4x4 ((UINT32)((4<<4)|4)<<24) /*十六宫格排列*/
#define WES_Icon3x4 ((UINT32)((3<<4)|4)<<24) /*十二宫格排列*/
#define WES_Icon4x3 ((UINT32)((4<<4)|3)<<24) /*十二宫格排列*/
#define WES_Icon2x2 ((UINT32)((2<<4)|2)<<24) /*四宫格排列*/
#define WES_rkIconsty (WS_HBIT << 6) /*缩略图未选中时不画边框*/
#define WES_TotolTxt (WS_HBIT << 7) /*标题文本使用unicode,条目无文本*/
/*缩略图风格*/
#define WES_Iconbox (WS_HBIT << 1 ) /*该缩略图控件是九宫格的子窗口*/
/*启动窗口定时器,a为窗口,定时时长为b*5毫秒*/
#define WinStartTimer(a,b) WindowStartTimer((WINDOW*)a,(UINT32)b)
#define WinStopTimer(a) RockStopTimer((HTIMER)a)
extern WINDOW_PROCREG WinAnimationProcMap[]; /*动画类*/
extern WINDOW_PROCREG WinMenuProcMap[]; /*菜单类*/
extern WINDOW_PROCREG WinBmpProcMap[]; /*图片类*/
extern WINDOW_PROCREG WinListProcMap[]; /*列表类,弹出菜单*/
extern WINDOW_PROCREG WinGuageProcMap[]; /*进度条,指示条*/
extern WINDOW_PROCREG WinButtonboxProcMap[]; /*按钮*/
extern WINDOW_PROCREG WinDilogProcMap[]; /*对话框*/
extern WINDOW_PROCREG WinTextLabelProcMap[]; /*文本框*/
extern WINDOW_PROCREG WinScrollProcMap[]; /*滚动条*/
extern WINDOW_PROCREG WinIconListProcMap[]; /*九宫格*/
extern WINDOW_PROCREG WinIconProcMap[]; /*小图标类*/
extern WINDOW_PROCREG IconTouchListProcMap[]; /*小图标类, 触摸屏缩略图用,add by phc 08-01-21*/
extern WINDOW_PROCREG WinScrollTextMap[]; /*滚动文本类*/
extern WINDOW_PROCREG WinToolbarProcMap[]; /*状态栏类*/
extern WINDOW_PROCREG WinAniKeyProcMap[]; /*动画类,响应按键*/
extern WINDOW_PROCREG WinDListProcMap[]; /*for oppo*/
void DrawPicture(PicDescp Bmp);
void DrawPic(INT16S x, INT16S y, INT16U id);
UINT32 WinSendCommand(WINDOW*win, UINT16 EV);
void TxtBox(WINDOW*win, UINT16 TxtID, FontType Font, TxtStyle style);
void TxtBoxRect(WINDOW*win, UINT16 TxtID, FontType Font, TxtRect*Rect , TxtStyle style);
void TxtBoxEX(WINDOW*win, WCHAR *pTxt, FontType Font, TxtStyle style);
void TxtBoxRectEX(WCHAR *pTxt, FontType Font, TxtRect*Rect , TxtStyle style);
DispMode WinGetTranStyle(UINT32 winstyle);
WCHAR *Unicodestrcat(WCHAR * U1, WCHAR * U2);
UINT16 GetUnicodeLen(WCHAR *p);
extern size_t RKstrlen(const char * s);
LCD_RGBDATA *GetLogicScreen(void);
void DrawLine(INT16 x1, INT16 y1, INT16 x2, INT16 y2, UINT32 color, UHRECT* rect);
void DrawRect(INT16 x1, INT16 y1, INT16 x2, INT16 y2, UINT32 color, UHRECT* rect);
void DrawWindowRect(WINDOW* win, UINT32 color, UHRECT* rect);
void DrawCircle(int xc, int yc, int r, UINT32 color);
void DrawTriangle(INT16 x1, INT16 y1, INT16 x2, INT16 y2, INT16 x3, INT16 y3, UINT32 color);
void ToolbarDisplay(UINT16 Tool);
void Data2String(INT32 n, char* StringBuf);
void DataBoxInt32(INT32 data);
void* GUIMalloc(size_t size);
#define MallocClass(c) GUIMalloc(sizeof(c))
#define FreeClass(c) if(c) FREE(c)
#define MaxAB(A,B) ((A>B)?A:B)
#define MinAB(A,B) ((A<B)?A:B)
/*合并两个16位变量为一个32位变量*/
#define Word2Double(H,L) (UINT32)(((UINT32)H<<16)+(L&0xFFFF) )
WINDOW* WindowCreateDilog(
WINDOW *parent, //父窗口
INT32U style, //风格
WIN_ID id , //窗口 ID
INT16S x, //窗口ID
INT16S y,
INT16S w,
INT16S h,
INT16U captionId,
INT16U bmpId,
PCHILD_WINDOW childList, //子窗口列表.
PWINDOW_PROCREG procRegList , //消息处理列表.
void *privateData //私有数据
);
WINDOW* WindowCreatDoubleList(
WINDOW *parent, //父窗口
INT32U style, //风格
INT16U id , //窗口 ID
INT16U captionId, //文本ID
INT16U bmpId //图片ID
);
__inline unsigned int * memcpy32(unsigned int * dest, const unsigned int *src, unsigned int count)
{
unsigned int *tmp = (unsigned int *) dest, *s = (unsigned int *) src;
while (count--)
*tmp++ = *s++;
return dest;
}
__inline UINT16 * memcpy16(UINT16 * dest, const UINT16 *src, UINT32 count)
{
UINT16 *tmp = (UINT16 *) dest, *s = (UINT16 *) src;
while (count--)
*tmp++ = *s++;
return dest;
}
__inline UINT8 * memcpy8(UINT8 * dest, const UINT8 *src, UINT32 count)
{
UINT8 *tmp = (UINT8 *) dest, *s = (UINT8 *) src;
while (count--)
*tmp++ = *s++;
return dest;
}
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -