Refactor editor workspace panel bindings

This commit is contained in:
2026-04-29 13:29:17 +08:00
parent a8e1a2b097
commit da6f37dafe
14 changed files with 213 additions and 106 deletions

View File

@@ -219,9 +219,21 @@ bool Application::Initialize(HINSTANCE hInstance, int nCmdShow) {
m_runtimePaths);
m_renderRuntimeFactory =
std::make_unique<Host::D3D12EditorWindowRenderRuntimeFactory>();
App::EditorWorkspaceShellRuntimeFactory workspaceShellRuntimeFactory = []() {
App::EditorWorkspaceShellRuntimeFactory workspaceShellRuntimeFactory = [this]() {
return App::CreateEditorWorkspaceShellRuntime(
App::CreateEditorWorkspacePanelRuntimeSet(),
App::CreateEditorWorkspacePanelRuntimeSet(
m_editorContext->GetSession(),
m_editorContext->GetCommandFocusService(),
m_editorContext->GetProjectRuntime(),
m_editorContext->GetSceneRuntime(),
m_editorContext->GetColorPickerToolState(),
m_systemInteractionHost.get(),
[this](App::EditorUtilityWindowKind kind) {
m_editorContext->RequestOpenUtilityWindow(kind);
},
[this](const std::filesystem::path& scenePath) {
return m_editorContext->RequestOpenSceneAsset(scenePath);
}),
App::CreateEditorIconService(),
App::CreateEditorViewportRuntimeServices());
};