fix graph tab selection:

Signed-off-by: chcurran <82187351+carlitosan@users.noreply.github.com>
This commit is contained in:
chcurran
2021-11-19 12:22:12 -08:00
parent f1632b099c
commit 7aec710cff
4 changed files with 47 additions and 21 deletions
@@ -39,10 +39,19 @@ namespace ScriptCanvasBuilder
void BuildVariableOverrides::CopyPreviousOverriddenValues(const BuildVariableOverrides& source)
{
auto copyPreviousIfFound = [](ScriptCanvas::GraphVariable& overriddenValue, const AZStd::vector<ScriptCanvas::GraphVariable>& source)
auto isEqual = [](const ScriptCanvas::GraphVariable& overrideValue, const ScriptCanvas::GraphVariable& candidate)
{
if (auto iter = AZStd::find_if(source.begin(), source.end(), [&overriddenValue](const auto& candidate) { return candidate.GetVariableId() == overriddenValue.GetVariableId(); });
iter != source.end())
return candidate.GetVariableId() == overrideValue.GetVariableId()
|| (candidate.GetVariableName() == overrideValue.GetVariableName()
&& candidate.GetDataType() == overrideValue.GetDataType());
};
auto copyPreviousIfFound = [isEqual](ScriptCanvas::GraphVariable& overriddenValue, const AZStd::vector<ScriptCanvas::GraphVariable>& source)
{
auto iter = AZStd::find_if(source.begin(), source.end()
, [&overriddenValue, isEqual](const auto& candidate) { return isEqual(candidate, overriddenValue); });
if (iter != source.end())
{
overriddenValue.DeepCopy(*iter);
overriddenValue.SetScriptInputControlVisibility(AZ::Edit::PropertyVisibility::Hide);