From a33529e86039421b12e5aa37db30a4b6b573bf4f Mon Sep 17 00:00:00 2001 From: lsemp3d <58790905+lsemp3d@users.noreply.github.com> Date: Mon, 7 Feb 2022 16:19:24 -0800 Subject: [PATCH 1/2] Fixed group and bookmark display on graph load Signed-off-by: lsemp3d <58790905+lsemp3d@users.noreply.github.com> A --- Gems/GraphCanvas/Code/Source/Components/SceneComponent.cpp | 4 ++++ Gems/ScriptCanvas/Code/Editor/Components/EditorGraph.cpp | 6 ++---- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/Gems/GraphCanvas/Code/Source/Components/SceneComponent.cpp b/Gems/GraphCanvas/Code/Source/Components/SceneComponent.cpp index e821ea9be2..d121ed49b0 100644 --- a/Gems/GraphCanvas/Code/Source/Components/SceneComponent.cpp +++ b/Gems/GraphCanvas/Code/Source/Components/SceneComponent.cpp @@ -1286,6 +1286,10 @@ namespace GraphCanvas { GRAPH_CANVAS_PROFILE_FUNCTION(); const SceneComponentSaveData* saveData = saveDataContainer.FindSaveDataAs(); + if (!saveData) + { + return; + } for (const GraphCanvasConstructSaveData* currentConstruct : saveData->m_constructs) { diff --git a/Gems/ScriptCanvas/Code/Editor/Components/EditorGraph.cpp b/Gems/ScriptCanvas/Code/Editor/Components/EditorGraph.cpp index 3127a99ef6..7024a01570 100644 --- a/Gems/ScriptCanvas/Code/Editor/Components/EditorGraph.cpp +++ b/Gems/ScriptCanvas/Code/Editor/Components/EditorGraph.cpp @@ -3543,11 +3543,9 @@ namespace ScriptCanvasEditor GraphCanvas::SceneRequestBus::Event(graphCanvasGraphId, &GraphCanvas::SceneRequests::SignalLoadStart); - auto saveDataIter = m_graphCanvasSaveData.find(GetEntityId()); - - if (saveDataIter != m_graphCanvasSaveData.end()) + for (auto& saveDataIter : m_graphCanvasSaveData) { - GraphCanvas::EntitySaveDataRequestBus::Event(graphCanvasGraphId, &GraphCanvas::EntitySaveDataRequests::ReadSaveData, (*saveDataIter->second)); + GraphCanvas::EntitySaveDataRequestBus::Event(graphCanvasGraphId, &GraphCanvas::EntitySaveDataRequests::ReadSaveData, (*saveDataIter.second)); } ScriptCanvas::NodeIdList nodeList = GetNodes(); From 1b52339b6be010c1d5b797525bc30a5a5ec10135 Mon Sep 17 00:00:00 2001 From: lsemp3d <58790905+lsemp3d@users.noreply.github.com> Date: Mon, 7 Feb 2022 16:48:23 -0800 Subject: [PATCH 2/2] PR feedback Signed-off-by: lsemp3d <58790905+lsemp3d@users.noreply.github.com> --- .../Code/Source/Components/SceneComponent.cpp | 61 +++++++++---------- 1 file changed, 29 insertions(+), 32 deletions(-) diff --git a/Gems/GraphCanvas/Code/Source/Components/SceneComponent.cpp b/Gems/GraphCanvas/Code/Source/Components/SceneComponent.cpp index d121ed49b0..425334293a 100644 --- a/Gems/GraphCanvas/Code/Source/Components/SceneComponent.cpp +++ b/Gems/GraphCanvas/Code/Source/Components/SceneComponent.cpp @@ -1285,43 +1285,40 @@ namespace GraphCanvas void SceneComponent::ReadSaveData(const EntitySaveDataContainer& saveDataContainer) { GRAPH_CANVAS_PROFILE_FUNCTION(); - const SceneComponentSaveData* saveData = saveDataContainer.FindSaveDataAs(); - if (!saveData) + if (const SceneComponentSaveData* saveData = saveDataContainer.FindSaveDataAs()) { - return; - } - - for (const GraphCanvasConstructSaveData* currentConstruct : saveData->m_constructs) - { - AZ::Entity* constructEntity = nullptr; - switch (currentConstruct->m_constructType) + for (const GraphCanvasConstructSaveData* currentConstruct : saveData->m_constructs) { - case ConstructType::CommentNode: - GraphCanvasRequestBus::BroadcastResult(constructEntity, &GraphCanvasRequests::CreateCommentNode); - break; - case ConstructType::NodeGroup: - GraphCanvasRequestBus::BroadcastResult(constructEntity, &GraphCanvasRequests::CreateNodeGroup); - break; - case ConstructType::BookmarkAnchor: - GraphCanvasRequestBus::BroadcastResult(constructEntity, &GraphCanvasRequests::CreateBookmarkAnchor); - break; - default: - break; + AZ::Entity* constructEntity = nullptr; + switch (currentConstruct->m_constructType) + { + case ConstructType::CommentNode: + GraphCanvasRequestBus::BroadcastResult(constructEntity, &GraphCanvasRequests::CreateCommentNode); + break; + case ConstructType::NodeGroup: + GraphCanvasRequestBus::BroadcastResult(constructEntity, &GraphCanvasRequests::CreateNodeGroup); + break; + case ConstructType::BookmarkAnchor: + GraphCanvasRequestBus::BroadcastResult(constructEntity, &GraphCanvasRequests::CreateBookmarkAnchor); + break; + default: + break; + } + + if (constructEntity) + { + constructEntity->Init(); + constructEntity->Activate(); + + EntitySaveDataRequestBus::Event(constructEntity->GetId(), &EntitySaveDataRequests::ReadSaveData, currentConstruct->m_saveDataContainer); + + Add(constructEntity->GetId()); + } } - if (constructEntity) - { - constructEntity->Init(); - constructEntity->Activate(); - - EntitySaveDataRequestBus::Event(constructEntity->GetId(), &EntitySaveDataRequests::ReadSaveData, currentConstruct->m_saveDataContainer); - - Add(constructEntity->GetId()); - } + m_viewParams = saveData->m_viewParams; + m_bookmarkCounter = saveData->m_bookmarkCounter; } - - m_viewParams = saveData->m_viewParams; - m_bookmarkCounter = saveData->m_bookmarkCounter; } AZStd::any* SceneComponent::GetUserData()