Integrating latest 47acbe8

This commit is contained in:
alexpete
2021-03-25 13:57:57 -07:00
parent 448c549698
commit 75dc720198
10312 changed files with 2711566 additions and 671451 deletions
@@ -17,6 +17,7 @@
#include <AzCore/Serialization/EditContext.h>
#include <AzCore/Serialization/EditContextConstants.inl>
#include <AzToolsFramework/API/EditorCameraBus.h>
#include <AzToolsFramework/API/ToolsApplicationAPI.h>
#include <IEditor.h>
@@ -24,6 +25,13 @@ namespace AZ
{
namespace Render
{
static IEditor* GetLegacyEditor()
{
IEditor* editor = nullptr;
AzToolsFramework::EditorRequestBus::BroadcastResult(editor, &AzToolsFramework::EditorRequestBus::Events::GetEditor);
return editor;
}
EditorCommonFeaturesSystemComponent::EditorCommonFeaturesSystemComponent() = default;
EditorCommonFeaturesSystemComponent::~EditorCommonFeaturesSystemComponent() = default;
@@ -93,10 +101,12 @@ namespace AZ
if (m_levelDefaultSliceAssetId.IsValid())
{
AZ::Data::Asset<AZ::Data::AssetData> asset = AZ::Data::AssetManager::Instance().FindAsset<AZ::SliceAsset>(
AZ::Data::Asset<AZ::Data::AssetData> asset = AZ::Data::AssetManager::Instance().GetAsset<AZ::SliceAsset>(
m_levelDefaultSliceAssetId,
AZ::Data::AssetLoadBehavior::Default);
asset.BlockUntilLoadComplete();
if (asset)
{
AZ::Vector3 cameraPosition = AZ::Vector3::CreateZero();
@@ -109,9 +119,10 @@ namespace AZ
AzToolsFramework::SliceEditorEntityOwnershipServiceNotificationBus::Handler::BusConnect();
if (!GetIEditor()->IsUndoSuspended())
if (IEditor* editor = GetLegacyEditor();
!editor->IsUndoSuspended())
{
GetIEditor()->SuspendUndo();
editor->SuspendUndo();
}
AzToolsFramework::SliceEditorEntityOwnershipServiceRequestBus::Broadcast(
@@ -142,12 +153,14 @@ namespace AZ
AzToolsFramework::SliceEditorEntityOwnershipServiceNotificationBus::Handler::BusDisconnect();
//save after level default slice fully instantiated
GetIEditor()->SaveDocument();
IEditor* editor = GetLegacyEditor();
if (GetIEditor()->IsUndoSuspended())
//save after level default slice fully instantiated
editor->SaveDocument();
if (editor->IsUndoSuspended())
{
GetIEditor()->ResumeUndo();
editor->ResumeUndo();
}
}
}
@@ -157,7 +170,7 @@ namespace AZ
{
if (m_levelDefaultSliceAssetId == sliceAssetId)
{
GetIEditor()->ResumeUndo();
GetLegacyEditor()->ResumeUndo();
AzToolsFramework::SliceEditorEntityOwnershipServiceNotificationBus::Handler::BusDisconnect();
AZ_Warning("EditorCommonFeaturesSystemComponent", false, "Failed to instantiate default Atom environment slice.");
}