// Copyright Epic Games, Inc. All Rights Reserved. #include "EditorViewportLayoutEntity.h" #include "Widgets/DeclarativeSyntaxSupport.h" #include "Editor/UnrealEdEngine.h" #include "LevelEditorViewport.h" #include "UnrealEdGlobals.h" #include "SAssetEditorViewport.h" #include "EditorViewportCommands.h" #include "EditorViewportTabContent.h" FEditorViewportLayoutEntity::FEditorViewportLayoutEntity(TFunction(void)>& Func, const FAssetEditorViewportConstructionArgs& ConstructionArgs) { TSharedPtr NewViewport = Func(); AssetEditorViewport = StaticCastSharedPtr(NewViewport); AssetEditorViewport->ParentLayout = ConstructionArgs.ParentLayout; AssetEditorViewport->GetViewportClient()->SetViewportType(ConstructionArgs.ViewportType); } TSharedRef FEditorViewportLayoutEntity::AsWidget() const { return AssetEditorViewport.ToSharedRef(); } TSharedPtr FEditorViewportLayoutEntity::AsAssetEditorViewport() const { return AssetEditorViewport; } FName FEditorViewportLayoutEntity::GetType() const { static FName DefaultName("Default"); return DefaultName; } TSharedPtr FEditorViewportLayoutEntity::GetViewportClient() const { return AssetEditorViewport->GetViewportClient(); } void FEditorViewportLayoutEntity::SetKeyboardFocus() { } void FEditorViewportLayoutEntity::OnLayoutDestroyed() { } void FEditorViewportLayoutEntity::SaveConfig(const FString& ConfigSection) { } void FEditorViewportLayoutEntity::TakeHighResScreenShot() const { GetViewportClient()->TakeHighResScreenShot(); }