#include "Platform/Win32/EditorAddComponentUtilityWindowContentController.h" #include namespace XCEngine::UI::Editor::App { EditorAddComponentUtilityWindowContentController:: EditorAddComponentUtilityWindowContentController( const ::XCEngine::UI::UISize& minimumOuterSize) : EditorStandaloneUtilityWindowContentController(minimumOuterSize) {} EditorAddComponentUtilityWindowContentController:: ~EditorAddComponentUtilityWindowContentController() = default; void EditorAddComponentUtilityWindowContentController::OnShutdown() { m_addComponentPanel.ResetInteractionState(); } void EditorAddComponentUtilityWindowContentController::OnResetInteractionState() { m_addComponentPanel.ResetInteractionState(); } EditorWindowFrameTransferRequests EditorAddComponentUtilityWindowContentController::UpdateStandaloneContent( const EditorStandaloneUtilityWindowFrameContext& context, ::XCEngine::UI::UIDrawData& drawData) { m_addComponentPanel.Update( context.editorContext, AddComponentPanelHostContext{ .mounted = true, .bounds = context.bounds, .focused = context.focused, .focusGained = context.focusGained, .focusLost = context.focusLost, }, context.inputEvents); ::XCEngine::UI::UIDrawList& drawList = drawData.EmplaceDrawList("XCEditorUtility.AddComponent"); m_addComponentPanel.Append(drawList); return {}; } std::unique_ptr CreateEditorAddComponentUtilityWindowContentController( const ::XCEngine::UI::UISize& minimumOuterSize) { return std::make_unique( minimumOuterSize); } } // namespace XCEngine::UI::Editor::App