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 {
|
2025-10-18 01:02:27 +08:00
|
|
|
|
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
|