Refactor XCEditor into library-style layout

This commit is contained in:
2026-04-06 20:02:34 +08:00
parent f16620afc6
commit 2a61f0b20a
60 changed files with 524 additions and 502 deletions

View File

@@ -5,6 +5,8 @@ add_executable(editor_ui_shortcut_dispatch_validation WIN32
target_include_directories(editor_ui_shortcut_dispatch_validation PRIVATE
${CMAKE_SOURCE_DIR}/engine/include
${CMAKE_SOURCE_DIR}/new_editor/include
${CMAKE_SOURCE_DIR}/new_editor/app
${CMAKE_SOURCE_DIR}/new_editor/src
)
target_compile_definitions(editor_ui_shortcut_dispatch_validation PRIVATE
@@ -20,8 +22,8 @@ if(MSVC)
endif()
target_link_libraries(editor_ui_shortcut_dispatch_validation PRIVATE
XCNewEditorLib
XCNewEditorHost
XCUIEditorLib
XCUIEditorHost
)
set_target_properties(editor_ui_shortcut_dispatch_validation PROPERTIES

View File

@@ -2,10 +2,10 @@
#define NOMINMAX
#endif
#include <XCNewEditor/Editor/UIEditorShortcutManager.h>
#include <XCNewEditor/Host/AutoScreenshot.h>
#include <XCNewEditor/Host/InputModifierTracker.h>
#include <XCNewEditor/Host/NativeRenderer.h>
#include <XCEditor/Core/UIEditorShortcutManager.h>
#include "Host/AutoScreenshot.h"
#include "Host/InputModifierTracker.h"
#include "Host/NativeRenderer.h"
#include <XCEngine/Input/InputTypes.h>
#include <XCEngine/UI/DrawData.h>
@@ -28,24 +28,24 @@
namespace {
using XCEngine::Input::KeyCode;
using XCEngine::NewEditor::BuildDefaultUIEditorWorkspaceController;
using XCEngine::NewEditor::BuildUIEditorWorkspacePanel;
using XCEngine::NewEditor::BuildUIEditorWorkspaceSplit;
using XCEngine::NewEditor::BuildUIEditorWorkspaceTabStack;
using XCEngine::NewEditor::CollectUIEditorWorkspaceVisiblePanels;
using XCEngine::NewEditor::FindUIEditorPanelSessionState;
using XCEngine::NewEditor::GetUIEditorShortcutDispatchStatusName;
using XCEngine::NewEditor::GetUIEditorWorkspaceCommandStatusName;
using XCEngine::NewEditor::UIEditorCommandPanelSource;
using XCEngine::NewEditor::UIEditorCommandRegistry;
using XCEngine::NewEditor::UIEditorPanelRegistry;
using XCEngine::NewEditor::UIEditorShortcutDispatchResult;
using XCEngine::NewEditor::UIEditorShortcutDispatchStatus;
using XCEngine::NewEditor::UIEditorShortcutManager;
using XCEngine::NewEditor::UIEditorWorkspaceCommandKind;
using XCEngine::NewEditor::UIEditorWorkspaceController;
using XCEngine::NewEditor::UIEditorWorkspaceModel;
using XCEngine::NewEditor::UIEditorWorkspaceSplitAxis;
using XCEngine::UI::Editor::BuildDefaultUIEditorWorkspaceController;
using XCEngine::UI::Editor::BuildUIEditorWorkspacePanel;
using XCEngine::UI::Editor::BuildUIEditorWorkspaceSplit;
using XCEngine::UI::Editor::BuildUIEditorWorkspaceTabStack;
using XCEngine::UI::Editor::CollectUIEditorWorkspaceVisiblePanels;
using XCEngine::UI::Editor::FindUIEditorPanelSessionState;
using XCEngine::UI::Editor::GetUIEditorShortcutDispatchStatusName;
using XCEngine::UI::Editor::GetUIEditorWorkspaceCommandStatusName;
using XCEngine::UI::Editor::UIEditorCommandPanelSource;
using XCEngine::UI::Editor::UIEditorCommandRegistry;
using XCEngine::UI::Editor::UIEditorPanelRegistry;
using XCEngine::UI::Editor::UIEditorShortcutDispatchResult;
using XCEngine::UI::Editor::UIEditorShortcutDispatchStatus;
using XCEngine::UI::Editor::UIEditorShortcutManager;
using XCEngine::UI::Editor::UIEditorWorkspaceCommandKind;
using XCEngine::UI::Editor::UIEditorWorkspaceController;
using XCEngine::UI::Editor::UIEditorWorkspaceModel;
using XCEngine::UI::Editor::UIEditorWorkspaceSplitAxis;
using XCEngine::UI::UIColor;
using XCEngine::UI::UIDrawData;
using XCEngine::UI::UIDrawList;
@@ -56,9 +56,9 @@ using XCEngine::UI::UIRect;
using XCEngine::UI::UIShortcutBinding;
using XCEngine::UI::UIShortcutContext;
using XCEngine::UI::UIShortcutScope;
using XCEngine::XCUI::Host::AutoScreenshotController;
using XCEngine::XCUI::Host::InputModifierTracker;
using XCEngine::XCUI::Host::NativeRenderer;
using XCEngine::UI::Editor::Host::AutoScreenshotController;
using XCEngine::UI::Editor::Host::InputModifierTracker;
using XCEngine::UI::Editor::Host::NativeRenderer;
constexpr const wchar_t* kWindowClassName = L"XCUIEditorShortcutDispatchValidation";
constexpr const wchar_t* kWindowTitle = L"XCUI Editor | Shortcut Dispatch";
@@ -246,9 +246,9 @@ UIColor ResolveCommandStatusColor(UIEditorWorkspaceController& controller, const
}
switch (result.commandResult.status) {
case XCEngine::NewEditor::UIEditorWorkspaceCommandStatus::Changed: return kSuccess;
case XCEngine::NewEditor::UIEditorWorkspaceCommandStatus::NoOp: return kWarning;
case XCEngine::NewEditor::UIEditorWorkspaceCommandStatus::Rejected: return kDanger;
case XCEngine::UI::Editor::UIEditorWorkspaceCommandStatus::Changed: return kSuccess;
case XCEngine::UI::Editor::UIEditorWorkspaceCommandStatus::NoOp: return kWarning;
case XCEngine::UI::Editor::UIEditorWorkspaceCommandStatus::Rejected: return kDanger;
}
return kTextMuted;