2026-04-22 14:53:24 +08:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
#include <XCEngine/UI/DrawData.h>
|
|
|
|
|
|
|
|
|
|
namespace XCEngine::UI::Editor {
|
|
|
|
|
|
|
|
|
|
struct UIEditorShellInteractionFrame;
|
|
|
|
|
struct UIEditorShellInteractionState;
|
|
|
|
|
|
|
|
|
|
} // namespace XCEngine::UI::Editor
|
|
|
|
|
|
|
|
|
|
namespace XCEngine::UI::Editor::App {
|
|
|
|
|
|
|
|
|
|
class BuiltInIcons;
|
2026-04-27 01:58:23 +08:00
|
|
|
class EditorWorkspacePanelRuntimeSet;
|
2026-04-22 14:53:24 +08:00
|
|
|
|
|
|
|
|
struct EditorShellDrawComposerContext {
|
|
|
|
|
const UIEditorShellInteractionFrame& shellFrame;
|
|
|
|
|
const UIEditorShellInteractionState& shellInteractionState;
|
|
|
|
|
const BuiltInIcons& builtInIcons;
|
2026-04-27 01:58:23 +08:00
|
|
|
const EditorWorkspacePanelRuntimeSet& workspacePanels;
|
2026-04-22 14:53:24 +08:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
class EditorShellDrawComposer final {
|
|
|
|
|
public:
|
|
|
|
|
void Append(
|
|
|
|
|
const EditorShellDrawComposerContext& context,
|
|
|
|
|
::XCEngine::UI::UIDrawData& drawData) const;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
} // namespace XCEngine::UI::Editor::App
|