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

39 lines
959 B
C
Raw Normal View History

2025-06-27 00:32:57 +08:00
#ifndef MYWIN_POPUP_H__
#define MYWIN_POPUP_H__
2025-07-06 18:46:13 +08:00
// <20><><EFBFBD><EFBFBD>ʽ<EFBFBD>˵<EFBFBD>
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><EFBFBD><EFBFBD>Ŀ
#define POPUP_ITEM_MAXNUM 10
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>
#define POPUP_ITEM_MAXLEN 50
2025-06-27 00:32:57 +08:00
2025-07-06 18:46:13 +08:00
typedef struct {
WIN_WindowStruct win;
int index;
char items[POPUP_ITEM_MAXNUM][POPUP_ITEM_MAXLEN];
int itemNum;
int y_step;
} WIN_PopupStruct;
2025-06-27 00:32:57 +08:00
2025-07-06 18:46:13 +08:00
WIN_PopupStruct *WIN_CreatPopup(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><EFBFBD>Ŀ
void POPUP_AddItem(WIN_PopupStruct *popup, char *item);
2025-06-27 00:32:57 +08:00
2025-07-06 18:46:13 +08:00
// Ĭ<>ϻ<EFBFBD><CFBB>ƺ<EFBFBD><C6BA><EFBFBD>
void POPUP_DefaultPaint(WIN_PopupStruct *popup);
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 POPUP_DefaultMsgLoop(WIN_PopupStruct *popup, WIN_MsgStruct *msg);
2025-06-27 00:32:57 +08:00
2025-07-06 18:46:13 +08:00
// <20><>ָ<EFBFBD><D6B8>λ<EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD>˵<EFBFBD>
int POPUP_SelectItem(WIN_WindowStruct *base, char **item, int itemNum, int x,
int y);
2025-06-27 00:32:57 +08:00
#endif