Files
XCEngine/docs/api/XCEngine/Editor/panels/InspectorPanel/OnAttach.md

1.0 KiB

InspectorPanel::OnAttach

命名空间: XCEngine::Editor

类型: method

源文件: editor/src/panels/InspectorPanel.h

签名

void OnAttach() override;

作用

在面板拿到有效 IEditorContext 后,订阅选择变化事件并同步当前主选中实体。

当前实现行为

当前 OnAttach() 会:

  1. m_context == nullptr,直接返回
  2. m_selectedEntityId 初始化为 SelectionManager::GetSelectedEntity()
  3. 仅当 m_selectionHandlerId == 0 时,向 EventBus 订阅 SelectionChangedEvent

收到事件后,真正的选择同步逻辑会落到 OnSelectionChanged(...),而不是在订阅 lambda 里直接重建所有 UI。

设计含义

这让 Inspector 即使不是选择动作的发起方,也能在后续帧里跟随:

  • Hierarchy 选择变化
  • 其他动作路由引发的主选中切换

相关文档