Files
XCEngine/docs/api/XCEngine/Editor/Managers/SelectionManager/SelectionManager.md

1.7 KiB

SelectionManager

命名空间: XCEngine::Editor

类型: class (legacy singleton)

源文件: editor/src/Managers/SelectionManager.h

描述: 旧版基于 GameObject* 的单例选择管理器,当前主编辑器链路已经不再以它为核心。

概述

这个 Managers/SelectionManager.h 与当前正在使用的 Core/SelectionManager 不是同一套实现。

它的特征是:

  • 单例访问 SelectionManager::Get()
  • 直接保存 GameObject*
  • 通过 OnSelectionChanged 事件对象通知变化

而当前 EditorContext 真实接入的是 Core/SelectionManager,后者实现了 ISelectionManager,并以实体 ID 为核心,与 EventBus 结合得更紧。

当前状态判断

按当前仓库搜索结果,Managers/SelectionManager.h 没有出现在现行 Editor 主路径引用中。
因此更合理的理解是:它属于重构前残留实现,文档保留是为了说明历史包袱,而不是推荐新代码继续依赖。

使用建议

当前限制

  • 直接持有 GameObject*,生命周期耦合更重
  • 不符合当前 EditorContext 的服务注入方向
  • 事件机制与新的 EventBus + EditorEvents 体系并不统一

相关文档