refactor(new_editor): tighten app dependency boundaries
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
#pragma once
|
||||
|
||||
#include <XCEditor/App/EditorEditCommandRoute.h>
|
||||
#include "Commands/EditorEditCommandRoute.h"
|
||||
|
||||
#include <string>
|
||||
|
||||
|
||||
@@ -3,9 +3,7 @@
|
||||
#include "Rendering/Viewport/ViewportHostService.h"
|
||||
#include "Scene/EditorSceneRuntime.h"
|
||||
|
||||
#include <Rendering/Native/NativeRenderer.h>
|
||||
|
||||
#include <XCEditor/App/EditorPanelIds.h>
|
||||
#include "Composition/EditorPanelIds.h"
|
||||
#include <XCEditor/Viewport/UIEditorViewportInputBridge.h>
|
||||
#include <XCEditor/Viewport/UIEditorViewportSlot.h>
|
||||
|
||||
@@ -120,12 +118,12 @@ void ApplySceneToolMode(
|
||||
|
||||
void SceneViewportController::Initialize(
|
||||
const std::filesystem::path& repoRoot,
|
||||
Host::NativeRenderer& renderer) {
|
||||
Host::TextureHost& renderer) {
|
||||
m_toolOverlay.Initialize(repoRoot, renderer);
|
||||
ResetInteractionState();
|
||||
}
|
||||
|
||||
void SceneViewportController::Shutdown(Host::NativeRenderer& renderer) {
|
||||
void SceneViewportController::Shutdown(Host::TextureHost& renderer) {
|
||||
m_toolOverlay.Shutdown(renderer);
|
||||
ResetInteractionState();
|
||||
}
|
||||
|
||||
@@ -20,7 +20,7 @@ class ViewportHostService;
|
||||
|
||||
namespace XCEngine::UI::Editor::Host {
|
||||
|
||||
class NativeRenderer;
|
||||
class TextureHost;
|
||||
|
||||
} // namespace XCEngine::UI::Editor::Host
|
||||
|
||||
@@ -30,8 +30,8 @@ class SceneViewportController {
|
||||
public:
|
||||
void Initialize(
|
||||
const std::filesystem::path& repoRoot,
|
||||
Host::NativeRenderer& renderer);
|
||||
void Shutdown(Host::NativeRenderer& renderer);
|
||||
Host::TextureHost& renderer);
|
||||
void Shutdown(Host::TextureHost& renderer);
|
||||
void ResetInteractionState();
|
||||
|
||||
void Update(
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#include "Features/Scene/SceneViewportToolOverlay.h"
|
||||
|
||||
#include <Rendering/Native/NativeRenderer.h>
|
||||
#include "Host/TextureHost.h"
|
||||
|
||||
#include <algorithm>
|
||||
#include <array>
|
||||
@@ -57,7 +57,7 @@ UIRect BuildButtonRect(const UIRect& panelRect, std::size_t index) {
|
||||
|
||||
bool SceneViewportToolOverlay::Initialize(
|
||||
const std::filesystem::path& repoRoot,
|
||||
Host::NativeRenderer& renderer) {
|
||||
Host::TextureHost& renderer) {
|
||||
Shutdown(renderer);
|
||||
|
||||
const std::filesystem::path iconRoot =
|
||||
@@ -87,7 +87,7 @@ bool SceneViewportToolOverlay::Initialize(
|
||||
return loadedAnyTexture;
|
||||
}
|
||||
|
||||
void SceneViewportToolOverlay::Shutdown(Host::NativeRenderer& renderer) {
|
||||
void SceneViewportToolOverlay::Shutdown(Host::TextureHost& renderer) {
|
||||
for (ToolTextureSet& textureSet : m_toolTextures) {
|
||||
renderer.ReleaseTexture(textureSet.inactiveTexture);
|
||||
renderer.ReleaseTexture(textureSet.activeTexture);
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
#pragma once
|
||||
|
||||
#include "Scene/SceneToolState.h"
|
||||
#include "Host/HostFwd.h"
|
||||
|
||||
#include <XCEngine/UI/DrawData.h>
|
||||
#include <XCEngine/UI/Types.h>
|
||||
@@ -9,12 +10,6 @@
|
||||
#include <filesystem>
|
||||
#include <cstddef>
|
||||
|
||||
namespace XCEngine::UI::Editor::Host {
|
||||
|
||||
class NativeRenderer;
|
||||
|
||||
} // namespace XCEngine::UI::Editor::Host
|
||||
|
||||
namespace XCEngine::UI::Editor::App {
|
||||
|
||||
inline constexpr std::size_t kSceneViewportToolOverlayInvalidIndex =
|
||||
@@ -41,8 +36,8 @@ class SceneViewportToolOverlay {
|
||||
public:
|
||||
bool Initialize(
|
||||
const std::filesystem::path& repoRoot,
|
||||
Host::NativeRenderer& renderer);
|
||||
void Shutdown(Host::NativeRenderer& renderer);
|
||||
Host::TextureHost& renderer);
|
||||
void Shutdown(Host::TextureHost& renderer);
|
||||
void ResetFrame();
|
||||
|
||||
void BuildFrame(
|
||||
|
||||
Reference in New Issue
Block a user