feat(gui): 迁移图形界面库从SDL3到IUP

- 移除SDL3依赖,引入IUP图形界面库
- 更新Makefile以支持IUP编译配置
- 重构GUI模块,移除SDL相关代码
- 更新全局变量和类型定义,移除SDL依赖
- 添加IUP头文件到项目库目录
- 删除手动帧率控制(SDL_Delay),依赖IUP事件循环
- 更新编译脚本和文档说明
This commit is contained in:
2026-03-16 13:14:01 +08:00
parent a0944f8e16
commit 8bddf6bb37
44 changed files with 5001 additions and 630 deletions
@@ -0,0 +1,45 @@
/** \file
* \brief Ole control.
*
* See Copyright Notice in "iup.h"
*/
#ifndef __IUPOLE_H
#define __IUPOLE_H
#ifdef __cplusplus
extern "C" {
#endif
#ifndef DOXYGEN_SHOULD_IGNORE_THIS
/** @cond DOXYGEN_SHOULD_IGNORE_THIS */
#ifndef IUPOLE_API
#ifdef IUPOLE_BUILD_LIBRARY
#ifdef __EMSCRIPTEN__
#include <emscripten.h>
#define IUPOLE_API EMSCRIPTEN_KEEPALIVE
#elif WIN32
#define IUPOLE_API __declspec(dllexport)
#elif defined(__GNUC__) && __GNUC__ >= 4
#define IUPOLE_API __attribute__ ((visibility("default")))
#else
#define IUPOLE_API
#endif
#else
#define IUPOLE_API
#endif /* IUP_BUILD_LIBRARY */
#endif /* IUPOLE_API */
/** @endcond DOXYGEN_SHOULD_IGNORE_THIS */
#endif /* DOXYGEN_SHOULD_IGNORE_THIS */
IUPOLE_API Ihandle *IupOleControl(const char* progid);
IUPOLE_API int IupOleControlOpen(void);
#ifdef __cplusplus
}
#endif
#endif