Files
player/Project/Src/MyWin/Window/mywin_page.h

64 lines
1.5 KiB
C
Raw Normal View History

2025-06-27 00:32:57 +08:00
#ifndef MYWIN_PAGE_H__
#define MYWIN_PAGE_H__
2025-07-06 18:46:13 +08:00
// ҳ<><EFBFBD>̳<EFBFBD><CCB3><EFBFBD>MYWIN<49><4E><EFBFBD><EFBFBD>
2025-06-27 00:32:57 +08:00
2025-07-06 18:46:13 +08:00
// <20><>Ŀ<EFBFBD><C4BF><EFBFBD>Խṹ<D4BD><E1B9B9>
typedef struct {
uint8_t *image;
2025-07-06 18:46:13 +08:00
char *str;
void (*fun)(void *);
} PAGE_ItemStruct;
2025-06-27 00:32:57 +08:00
2025-07-06 18:46:13 +08:00
typedef struct {
WIN_WindowStruct win;
int index;
int touchIn; // <20><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>
char *title;
int titleHeight;
PAGE_ItemStruct **item;
int itemHeight;
int itemIndent; // <20><>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>
int itemNum;
char *key;
WIN_PicStruct pic;
} WIN_PageStruct;
2025-06-27 00:32:57 +08:00
2025-07-06 18:46:13 +08:00
WIN_PageStruct *WIN_CreatPage(WIN_WindowStruct *base,
void (*msgLoop)(struct _WIN_WindowStruct *win,
WIN_MsgStruct *msg),
int x, int y, int x_size, int y_size);
2025-06-27 00:32:57 +08:00
2025-07-06 18:46:13 +08:00
// <20><><EFBFBD><EFBFBD>ҳ<EFBFBD><D2B3>
void WIN_DeletePage(WIN_PageStruct *page);
2025-06-27 00:32:57 +08:00
2025-07-06 18:46:13 +08:00
// <20><><EFBFBD><EFBFBD>ҳ<EFBFBD><D2B3><EFBFBD>ı<EFBFBD><C4B1><EFBFBD>ͼƬ,<2C><><EFBFBD><EFBFBD>Ϊ0<CEAA><30><EFBFBD><EFBFBD>ʹ<EFBFBD>ñ<EFBFBD><C3B1><EFBFBD>ͼƬ
void PAGE_SetBackPic(WIN_PageStruct *page, WIN_PicStruct *pic);
2025-06-27 00:32:57 +08:00
2025-07-06 18:46:13 +08:00
// <20><><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>Ŀ
void PAGE_SetItem(WIN_PageStruct *page, const PAGE_ItemStruct *item,
int itemNum);
2025-06-27 00:32:57 +08:00
2025-07-06 18:46:13 +08:00
// <20><><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD><EFBFBD>߶<EFBFBD>
void PAGE_SetTitleHeight(WIN_PageStruct *page, int height);
2025-06-27 00:32:57 +08:00
2025-07-06 18:46:13 +08:00
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD>߶<EFBFBD>
void PAGE_SetItemHeight(WIN_PageStruct *page, int height);
2025-06-27 00:32:57 +08:00
2025-07-06 18:46:13 +08:00
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>
void PAGE_SetItemIndent(WIN_PageStruct *page, int indent);
2025-06-27 00:32:57 +08:00
2025-07-06 18:46:13 +08:00
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
void PAGE_IndexAdd(WIN_PageStruct *page);
2025-06-27 00:32:57 +08:00
2025-07-06 18:46:13 +08:00
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
void PAGE_IndexSub(WIN_PageStruct *page);
2025-06-27 00:32:57 +08:00
2025-07-06 18:46:13 +08:00
// Ĭ<>ϻ<EFBFBD><CFBB>ƺ<EFBFBD><C6BA><EFBFBD>
void PAGE_DefaultPaint(WIN_PageStruct *page);
2025-06-27 00:32:57 +08:00
2025-07-06 18:46:13 +08:00
// Ĭ<><C4AC><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
void PAGE_DefaultMsgLoop(WIN_PageStruct *page, WIN_MsgStruct *msg);
2025-06-27 00:32:57 +08:00
#endif