Files
player/Project/Src/MyWin/Window/mywin_msgbox.h
andy d45df9714a 整理代码
1.解决一些编译警告
2.整理一些文件格式
2025-10-18 01:02:27 +08:00

73 lines
1.9 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.

#ifndef MYWIN_MSGBOX_H__
#define MYWIN_MSGBOX_H__
#include "mywin_inc.h"
// 消息对话框继承自MYWIN框架
// 定义条目最大数目
#define MSGBOX_ITEM_MAXNUM 10
// 定义条目最大长度
#define MSGBOX_ITEM_MAXLEN 50
typedef struct {
WIN_WindowStruct win;
uint32_t titleTxtColor;
uint32_t titleRectColor;
uint32_t tipRectColor;
uint32_t butRectColor;
int press;
char *title;
char *msg;
char *key;
char *key2;
char items[MSGBOX_ITEM_MAXNUM][MSGBOX_ITEM_MAXLEN];
int itemNum;
int index;
int y_step; // 选择框时的条目宽度
} WIN_MsgboxStruct;
// 在堆中创建一个消息对话框,
WIN_MsgboxStruct *WIN_CreatMsgbox(WIN_WindowStruct *base,
void (*msgLoop)(struct _WIN_WindowStruct *win,
WIN_MsgStruct *msg),
int x, int y, int x_size, int y_size);
// 消息对话框设置标题
void MSGBOX_SetTitle(WIN_MsgboxStruct *msgbox, char *title);
// 消息对话框设置内容
void MSGBOX_SetMsg(WIN_MsgboxStruct *msgbox, char *msg);
// 消息对话框设置按键
void MSGBOX_SetKey(WIN_MsgboxStruct *msgbox, char *key);
void MSGBOX_SetKey2(WIN_MsgboxStruct *msgbox, char *key);
// 添加条目
void MSGBOX_AddItem(WIN_MsgboxStruct *msgbox, char *item);
// 消息框的绘制函数
void MSGBOX_DefaultPaint(WIN_MsgboxStruct *msgbox);
// 消息框的消息处理函数
void MSGBOX_defaultMsgLoop(WIN_MsgboxStruct *msgbox, WIN_MsgStruct *msg);
// 弹出提示框
int MSGBOX_Tips(WIN_WindowStruct *base, char *title, char *msg, char *key);
// 弹出提示框,在一段时间后自动退出
int MSGBOX_TipsTime(WIN_WindowStruct *base, char *title, char *msg, char *key,
uint32_t ms);
// 弹出询问框按键确定返回0取消返回1
int MSGBOX_Inquiry(WIN_WindowStruct *base, char *title, char *msg, char *key,
char *key2);
// 弹出选择框,按键确定返回序号,取消返回-1
int MSGBOX_Select(WIN_WindowStruct *base, char *title, char **item, int itemNum,
char *key, char *key2);
#endif