GeWuYou
|
9c27aa5927
|
feat(ui): 添加对已存在UI页面的路由推送支持
- 在UiRouterBase中新增Push方法重载,支持直接推送已创建的IUiPageBehavior实例
- 统一页面推送逻辑到DoPushPageInternal方法,同时处理工厂创建和现有页面
- 更新Replace方法使用新的页面推送逻辑
- 优化日志输出,统一使用View.GetType().Name获取页面类型名称
- 为新功能添加完整的XML文档注释
- 在IUiRouter接口中定义新的Push方法重载签名
|
2026-01-19 22:00:00 +08:00 |
|
GeWuYou
|
859bd1de41
|
feat(ui): 添加UI路由栈状态查询功能
- 在Push方法中添加栈顶检查,避免重复推送相同UI并记录警告日志
- 移除GetCurrentUiKey私有方法,使用Peek方法替代
- 添加Peek方法获取栈顶UI的类型名称
- 添加IsTop方法判断指定UI是否为栈顶元素
- 添加Contains方法检查UI是否存在于栈中
- 添加Count属性获取栈中元素数量
- 更新IUiRouter接口定义相关方法
- 简化DoClearInternal方法实现逻辑
|
2026-01-19 21:05:13 +08:00 |
|
GeWuYou
|
078f5c2102
|
refactor(asset): 移除抽象资源目录工具并重构注册表接口
- 删除 AbstractAssetCatalogUtility 类及其所有实现逻辑
- 移除 AssetCatalog 相关结构体和接口定义
- 删除 IAssetCatalogUtility 和 IResourceFactoryUtility 接口
- 移除 AbstractResourceFactoryUtility 和 ResourceLoadUtility 实现
- 重命名 IUiRegistry 接口为 IAssetRegistry 并更新泛型参数说明
- 重命名 GodotUiRegistry 为 GodotAssetRegistry 并更新接口引用
- 创建新的 IGodotAssetRegistry 接口用于PackedScene资源管理
- 创建新的 IGodotSceneRegistry 接口并更新 GodotSceneRegistry 实现
- 更新 GodotUiFactory 中的依赖注入从 IUiRegistry 改为 IAssetRegistry
|
2026-01-18 20:14:33 +08:00 |
|
GeWuYou
|
3589a0cf2f
|
feat(registry): 添加通用注册表基础设施并重构UI注册功能
- 新增 IKeyValue 接口定义通用键值对数据结构契约
- 创建 IRegistry 接口提供通用注册表功能定义
- 实现 KeyValueRegistryBase 基类提供基于字典的键值对管理
- 添加 GodotSceneRegistry 类管理Godot场景资源
- 重构 GodotUiRegistry 和 GodotUiFactory 使用新的注册表基类
- 移除废弃的 IWritableUiRegistry 接口
- 更新项目文件添加注册表相关目录结构
|
2026-01-18 16:01:10 +08:00 |
|
GeWuYou
|
ee3a087e35
|
refactor(ui): 重命名页面行为接口并更新依赖包版本
- 将 IPageBehavior 接口重命名为 IUiPageBehavior 并更新相关引用
- 将 CanvasItemPageBehavior 类重命名为 CanvasItemUiPageBehavior
- 更新 Newtonsoft.Json 从 13.0.3 到 13.0.4
- 更新 NUnit3TestAdapter 从 6.0.1 到 6.1.0
- 更新 Microsoft.CodeAnalysis.CSharp.SourceGenerators.Testing 从 1.1.2 到 1.3
- 为多个项目添加 Meziantou.Analyzer 和 Meziantou.Polyfill 包引用
|
2026-01-15 21:33:51 +08:00 |
|
GeWuYou
|
c931cb7d66
|
feat(ui): 添加CanvasItem页面行为和Godot UI工厂
- 实现CanvasItemPageBehavior类支持所有继承自CanvasItem的节点
- 添加OnEnter、OnExit、OnPause、OnResume、OnHide、OnShow页面生命周期方法
- 创建GodotUiFactory工厂类用于创建UI页面实例
- 实现Create方法根据UI键创建页面行为实例
- 重命名IUiPageProvider为IUiPageBehaviorProvider接口
- 更新接口方法GetPage返回页面行为实例的描述
|
2026-01-15 12:33:19 +08:00 |
|
GeWuYou
|
8fd7e2e952
|
feat(ui): 添加UI页面生命周期和路由管理相关接口及实现
- 定义了IPageBehavior接口,提供UI页面的生命周期方法如OnEnter、OnExit、OnPause、OnResume等
- 创建了IUiFactory接口用于创建UI页面实例,以及IUiPage接口定义页面基本操作
- 添加了IUiPageEnterParam接口用于定义页面跳转参数数据结构
- 实现了IUiRouter接口提供页面栈管理功能,支持Push、Pop、Replace、Clear等操作
- 创建了UI切换处理器相关接口和实现,包括IUiTransitionHandler和UiTransitionPipeline
- 添加了UI切换事件系统,支持BeforeChange和AfterChange两个执行阶段
- 实现了日志记录处理器LoggingTransitionHandler用于记录UI切换信息
- 定义了多种UI切换策略枚举如UiTransitionPolicy、UiTransitionType等
- 提供了UI注册表接口用于管理UI实例的注册和获取功能
|
2026-01-15 08:44:56 +08:00 |
|