关键节点
This commit is contained in:
44
editor/app/Composition/EditorShellInteractionEngine.h
Normal file
44
editor/app/Composition/EditorShellInteractionEngine.h
Normal file
@@ -0,0 +1,44 @@
|
||||
#pragma once
|
||||
|
||||
#include "Rendering/Viewport/ViewportHostService.h"
|
||||
|
||||
#include <XCEditor/Shell/UIEditorShellInteraction.h>
|
||||
#include <XCEditor/Workspace/UIEditorWorkspaceController.h>
|
||||
#include <XCEditor/Workspace/UIEditorWorkspaceLayoutPersistence.h>
|
||||
#include <XCEditor/Workspace/UIEditorWorkspaceSplitterDragCorrection.h>
|
||||
|
||||
#include <XCEngine/UI/Types.h>
|
||||
|
||||
#include <functional>
|
||||
#include <vector>
|
||||
|
||||
namespace XCEngine::UI {
|
||||
|
||||
struct UIInputEvent;
|
||||
|
||||
} // namespace XCEngine::UI
|
||||
|
||||
namespace XCEngine::UI::Editor::App {
|
||||
|
||||
struct EditorShellInteractionEngineContext {
|
||||
UIEditorShellInteractionState& shellInteractionState;
|
||||
UIEditorShellInteractionFrame& shellFrame;
|
||||
UIEditorWorkspaceSplitterDragCorrectionState& splitterDragCorrectionState;
|
||||
UIEditorWorkspaceController& workspaceController;
|
||||
const ::XCEngine::UI::UIRect& bounds;
|
||||
const std::vector<::XCEngine::UI::UIInputEvent>& inputEvents;
|
||||
const UIEditorShellInteractionServices& shellServices;
|
||||
std::function<UIEditorShellInteractionDefinition()> buildDefinition;
|
||||
bool hostedContentCaptureActive = false;
|
||||
bool useDetachedTitleBarTabStrip = false;
|
||||
float detachedTitleBarTabHeight = 0.0f;
|
||||
float detachedWindowChromeHeight = 0.0f;
|
||||
ViewportHostService& viewportHostService;
|
||||
};
|
||||
|
||||
class EditorShellInteractionEngine final {
|
||||
public:
|
||||
void Update(const EditorShellInteractionEngineContext& context) const;
|
||||
};
|
||||
|
||||
} // namespace XCEngine::UI::Editor::App
|
||||
Reference in New Issue
Block a user