Integrating latest 47acbe8
This commit is contained in:
@@ -194,7 +194,7 @@ namespace ScriptCanvas
|
||||
->Attribute(AZ::Edit::Attributes::Visibility, AZ::Edit::PropertyVisibility::ShowChildrenOnly)
|
||||
->Attribute(AZ::Edit::Attributes::ChangeNotify, &GraphVariable::OnValueChanged)
|
||||
->DataElement(AZ::Edit::UIHandlers::Default, &GraphVariable::m_networkProperties, "Network Properties", "Enables whether or not this value should be network synchronized")
|
||||
->Attribute(AZ::Edit::Attributes::Visibility, &GraphVariable::GetScriptInputControlVisibility)
|
||||
->Attribute(AZ::Edit::Attributes::Visibility, &GraphVariable::GetNetworkSettingsVisibility)
|
||||
->DataElement(AZ::Edit::UIHandlers::Default, &GraphVariable::m_sortPriority, "Display Order", "Allows for customizable display order. -1 implies it will be at the end of the list.")
|
||||
->Attribute(AZ::Edit::Attributes::Visibility, &GraphVariable::GetInputControlVisibility)
|
||||
->Attribute(AZ::Edit::Attributes::ChangeNotify, &GraphVariable::OnSortPriorityChanged)
|
||||
@@ -324,6 +324,11 @@ namespace ScriptCanvas
|
||||
datumView.ConfigureView((*this));
|
||||
}
|
||||
|
||||
bool GraphVariable::IsExposedAsComponentInput() const
|
||||
{
|
||||
return IsInScope(VariableFlags::Scope::Input);
|
||||
}
|
||||
|
||||
void GraphVariable::SetVariableName(AZStd::string_view variableName)
|
||||
{
|
||||
m_variableName = variableName;
|
||||
@@ -355,6 +360,18 @@ namespace ScriptCanvas
|
||||
return m_inputControlVisibility;
|
||||
}
|
||||
|
||||
AZ::Crc32 GraphVariable::GetNetworkSettingsVisibility() const
|
||||
{
|
||||
bool showNetworkSettings = false;
|
||||
ScriptCanvasSettingsRequestBus::BroadcastResult(showNetworkSettings, &ScriptCanvasSettingsRequests::CanShowNetworkSettings);
|
||||
if (!showNetworkSettings)
|
||||
{
|
||||
return AZ::Edit::PropertyVisibility::Hide;
|
||||
}
|
||||
|
||||
return AZ::Edit::PropertyVisibility::Show;
|
||||
}
|
||||
|
||||
AZ::Crc32 GraphVariable::GetScriptInputControlVisibility() const
|
||||
{
|
||||
AZ::Data::AssetType assetType = AZ::Data::AssetType::CreateNull();
|
||||
@@ -376,7 +393,7 @@ namespace ScriptCanvas
|
||||
AZ::Data::AssetType assetType = AZ::Data::AssetType::CreateNull();
|
||||
ScriptCanvas::RuntimeRequestBus::EventResult(assetType, m_scriptCanvasId, &ScriptCanvas::RuntimeRequests::GetAssetType);
|
||||
|
||||
if (assetType == azrtti_typeid<ScriptCanvas::RuntimeFunctionAsset>())
|
||||
if (assetType == azrtti_typeid<ScriptCanvas::SubgraphInterfaceAsset>())
|
||||
{
|
||||
return AZ::Edit::PropertyVisibility::Show;
|
||||
}
|
||||
@@ -494,9 +511,9 @@ namespace ScriptCanvas
|
||||
VariableNotificationBus::Event(GetGraphScopedId(), &VariableNotifications::OnVariableValueChanged);
|
||||
}
|
||||
|
||||
AZStd::vector<AZStd::pair<AZ::u8, AZStd::string>> GraphVariable::GetScopes() const
|
||||
AZStd::vector<AZStd::pair<VariableFlags::Scope, AZStd::string>> GraphVariable::GetScopes() const
|
||||
{
|
||||
AZStd::vector< AZStd::pair<AZ::u8, AZStd::string>> scopes;
|
||||
AZStd::vector< AZStd::pair<VariableFlags::Scope, AZStd::string>> scopes;
|
||||
|
||||
scopes.emplace_back(AZStd::make_pair(VariableFlags::Scope::Local, VariableFlags::GetScopeDisplayLabel(VariableFlags::Scope::Local)));
|
||||
scopes.emplace_back(AZStd::make_pair(VariableFlags::Scope::Input, VariableFlags::GetScopeDisplayLabel(VariableFlags::Scope::Input)));
|
||||
@@ -520,7 +537,7 @@ namespace ScriptCanvas
|
||||
AZ::Data::AssetType assetType = AZ::Data::AssetType::CreateNull();
|
||||
ScriptCanvas::RuntimeRequestBus::EventResult(assetType, m_scriptCanvasId, &ScriptCanvas::RuntimeRequests::GetAssetType);
|
||||
|
||||
return assetType == azrtti_typeid<ScriptCanvas::RuntimeFunctionAsset>();
|
||||
return assetType == azrtti_typeid<ScriptCanvas::SubgraphInterfaceAsset>();
|
||||
}
|
||||
|
||||
void GraphVariable::OnScopeTypedChanged()
|
||||
|
||||
@@ -50,7 +50,7 @@ namespace ScriptCanvas
|
||||
};
|
||||
}
|
||||
|
||||
enum Scope : AZ::u8
|
||||
enum class Scope : AZ::u8
|
||||
{
|
||||
Local = 0,
|
||||
Input = 1,
|
||||
@@ -76,7 +76,7 @@ namespace ScriptCanvas
|
||||
AZ_CLASS_ALLOCATOR(GraphVariable, AZ::SystemAllocator, 0);
|
||||
static void Reflect(AZ::ReflectContext* context);
|
||||
|
||||
static const char* GetVariableNotificationBusName() { return "VariableNotification"; }
|
||||
static const char* GetVariableNotificationBusName() { return k_OnVariableWriteEbusName; }
|
||||
|
||||
class Comparator
|
||||
{
|
||||
@@ -125,6 +125,9 @@ namespace ScriptCanvas
|
||||
const VariableId& GetVariableId() const;
|
||||
|
||||
const Datum* GetDatum() const;
|
||||
|
||||
bool IsExposedAsComponentInput() const;
|
||||
|
||||
void ConfigureDatumView(ModifiableDatumView& accessController);
|
||||
|
||||
void SetVariableName(AZStd::string_view displayName);
|
||||
@@ -137,6 +140,7 @@ namespace ScriptCanvas
|
||||
|
||||
AZ::Crc32 GetInputControlVisibility() const;
|
||||
AZ::Crc32 GetScriptInputControlVisibility() const;
|
||||
AZ::Crc32 GetNetworkSettingsVisibility() const;
|
||||
AZ::Crc32 GetFunctionInputControlVisibility() const;
|
||||
|
||||
AZ::Crc32 GetVisibility() const;
|
||||
@@ -163,7 +167,7 @@ namespace ScriptCanvas
|
||||
|
||||
// Editor Callbacks
|
||||
void OnDatumEdited(const Datum* datum) override;
|
||||
AZStd::vector<AZStd::pair<AZ::u8, AZStd::string>> GetScopes() const;
|
||||
AZStd::vector<AZStd::pair<VariableFlags::Scope, AZStd::string>> GetScopes() const;
|
||||
////
|
||||
|
||||
int GetSortPriority() const;
|
||||
|
||||
+8
-3
@@ -58,7 +58,7 @@ namespace ScriptCanvas
|
||||
if (auto serializeContext = azrtti_cast<AZ::SerializeContext*>(context))
|
||||
{
|
||||
serializeContext->Class<CopiedVariableData>()
|
||||
->Version(1)
|
||||
->Version(2)
|
||||
->Field("Mapping", &CopiedVariableData::m_variableMapping)
|
||||
;
|
||||
|
||||
@@ -77,10 +77,15 @@ namespace ScriptCanvas
|
||||
|
||||
void GraphVariableManagerComponent::Activate()
|
||||
{
|
||||
if (!GraphConfigurationNotificationBus::Handler::BusIsConnectedId(GetEntityId()))
|
||||
{
|
||||
GraphConfigurationNotificationBus::Handler::BusConnect(GetEntityId());
|
||||
}
|
||||
}
|
||||
|
||||
void GraphVariableManagerComponent::Deactivate()
|
||||
{
|
||||
GraphVariableManagerRequestBus::Handler::BusDisconnect();
|
||||
}
|
||||
|
||||
void GraphVariableManagerComponent::ConfigureScriptCanvasId(const ScriptCanvasId& scriptCanvasId)
|
||||
@@ -318,13 +323,13 @@ namespace ScriptCanvas
|
||||
return m_variableData.FindVariable(varName);
|
||||
}
|
||||
|
||||
GraphVariable* GraphVariableManagerComponent::FindFirstVariableWithType(const Data::Type& dataType, const AZStd::unordered_set< ScriptCanvas::VariableId >& blacklistId)
|
||||
GraphVariable* GraphVariableManagerComponent::FindFirstVariableWithType(const Data::Type& dataType, const AZStd::unordered_set< ScriptCanvas::VariableId >& excludedVariableIds)
|
||||
{
|
||||
for (auto& variablePair : m_variableData.GetVariables())
|
||||
{
|
||||
if (variablePair.second.GetDataType() == dataType)
|
||||
{
|
||||
if (blacklistId.count(variablePair.first) == 0)
|
||||
if (excludedVariableIds.count(variablePair.first) == 0)
|
||||
{
|
||||
return &variablePair.second;
|
||||
}
|
||||
|
||||
+1
-1
@@ -73,7 +73,7 @@ namespace ScriptCanvas
|
||||
|
||||
GraphVariable* FindVariable(AZStd::string_view propName) override;
|
||||
GraphVariable* FindVariableById(const VariableId& variableId) override;
|
||||
GraphVariable* FindFirstVariableWithType(const Data::Type& dataType, const AZStd::unordered_set< ScriptCanvas::VariableId >& blacklistId) override;
|
||||
GraphVariable* FindFirstVariableWithType(const Data::Type& dataType, const AZStd::unordered_set< ScriptCanvas::VariableId >& excludedVariableIds) override;
|
||||
|
||||
Data::Type GetVariableType(const VariableId& variableId) override;
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@ namespace ScriptCanvas
|
||||
{
|
||||
class VariableData;
|
||||
|
||||
// Bus Interface for adding, removing and finding exposed Variable datums associated with a ScriptCanvas Graph
|
||||
//! Bus Interface for adding, removing and finding exposed Variable datums associated with a ScriptCanvas Graph
|
||||
class VariableRequests
|
||||
: public AZ::EBusTraits
|
||||
{
|
||||
@@ -142,7 +142,7 @@ namespace ScriptCanvas
|
||||
//! The variable datum pointer is non-null if the variable has been found
|
||||
virtual GraphVariable* FindVariableById(const VariableId& varId) = 0;
|
||||
|
||||
virtual GraphVariable* FindFirstVariableWithType(const Data::Type& dataType, const AZStd::unordered_set< ScriptCanvas::VariableId >& blacklistId) = 0;
|
||||
virtual GraphVariable* FindFirstVariableWithType(const Data::Type& dataType, const AZStd::unordered_set< ScriptCanvas::VariableId >& excludedVariableIds) = 0;
|
||||
|
||||
//! Returns the type associated with the specified variable.
|
||||
virtual Data::Type GetVariableType(const VariableId& variableId) = 0;
|
||||
|
||||
@@ -33,7 +33,7 @@ namespace ScriptCanvas
|
||||
|
||||
VariableId(const VariableId&) = default;
|
||||
|
||||
explicit VariableId(const AZ::Uuid& uniqueId)
|
||||
AZ_INLINE explicit VariableId(const AZ::Uuid& uniqueId)
|
||||
: m_id(uniqueId)
|
||||
{}
|
||||
|
||||
@@ -45,28 +45,38 @@ namespace ScriptCanvas
|
||||
static void Reflect(AZ::ReflectContext* context);
|
||||
static VariableId MakeVariableId();
|
||||
|
||||
const AZ::Uuid& GetDatumId() const { return m_id; }
|
||||
AZ_INLINE const AZ::Uuid& GetDatumId() const { return m_id; }
|
||||
|
||||
bool IsValid() const
|
||||
AZ_INLINE bool IsValid() const
|
||||
{
|
||||
return !m_id.IsNull();
|
||||
}
|
||||
|
||||
AZStd::string ToString() const
|
||||
AZ_INLINE AZStd::string ToString() const
|
||||
{
|
||||
return m_id.ToString<AZStd::string>();
|
||||
}
|
||||
|
||||
bool operator==(const VariableId& rhs) const
|
||||
AZ_INLINE bool operator==(const VariableId& rhs) const
|
||||
{
|
||||
return m_id == rhs.m_id;
|
||||
}
|
||||
|
||||
bool operator!=(const VariableId& rhs) const
|
||||
AZ_INLINE bool operator!=(const VariableId& rhs) const
|
||||
{
|
||||
return !operator==(rhs);
|
||||
}
|
||||
|
||||
AZ_INLINE bool operator<(const VariableId& rhs) const
|
||||
{
|
||||
return m_id < rhs.m_id;
|
||||
}
|
||||
|
||||
AZ_INLINE bool operator>(const VariableId& rhs) const
|
||||
{
|
||||
return m_id > rhs.m_id;
|
||||
}
|
||||
|
||||
AZ::Uuid m_id{ AZ::Uuid::CreateNull() };
|
||||
};
|
||||
|
||||
|
||||
@@ -129,4 +129,4 @@ namespace ScriptCanvas
|
||||
AZStd::string m_name;
|
||||
AZStd::list<EditableVariableConfiguration> m_variables;
|
||||
};
|
||||
} // namespace ScriptCanvas
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user