Improved BehaviorProperty method text generation and updated some translations in the process

Signed-off-by: lsemp3d <58790905+lsemp3d@users.noreply.github.com>
This commit is contained in:
lsemp3d
2021-11-12 13:07:11 -08:00
parent bc73eaac69
commit a0667f7ae8
10 changed files with 522 additions and 152 deletions
@@ -5,7 +5,8 @@
"context": "BehaviorClass",
"variant": "",
"details": {
"name": "AssetId"
"name": "Asset Id",
"category": "Asset"
},
"methods": [
{
@@ -20,14 +21,13 @@
"tooltip": "Signaled after CreateString is invoked"
},
"details": {
"name": "AssetId::CreateString",
"category": "Other"
"name": "Create String"
},
"params": [
{
"typeid": "{7114E998-A8B4-519B-9342-A86D1587B4F7}",
"details": {
"name": "AZStd::basic_string_view<char, AZStd::char_traits<char>>"
"name": "String"
}
}
],
@@ -35,7 +35,7 @@
{
"typeid": "{652ED536-3402-439B-AEBE-4A5DBC554085}",
"details": {
"name": "AssetId"
"name": "Asset Id"
}
}
]
@@ -52,14 +52,13 @@
"tooltip": "Signaled after IsValid is invoked"
},
"details": {
"name": "AssetId::IsValid",
"category": "Other"
"name": "Is Valid"
},
"params": [
{
"typeid": "{652ED536-3402-439B-AEBE-4A5DBC554085}",
"details": {
"name": "AssetId*"
"name": "Asset Id"
}
}
],
@@ -67,7 +66,7 @@
{
"typeid": "{A0CA880C-AFE4-43CB-926C-59AC48496112}",
"details": {
"name": "bool"
"name": "Is Valid"
}
}
]
@@ -84,14 +83,13 @@
"tooltip": "Signaled after ToString is invoked"
},
"details": {
"name": "AssetId::ToString",
"category": "Other"
"name": "To String"
},
"params": [
{
"typeid": "{652ED536-3402-439B-AEBE-4A5DBC554085}",
"details": {
"name": "const AssetId*"
"name": "Asset Id"
}
}
],
@@ -99,7 +97,7 @@
{
"typeid": "{03AAAB3F-5C47-5A66-9EBC-D5FA4DB353C9}",
"details": {
"name": "AZStd::basic_string<char, AZStd::char_traits<char>, allocator>"
"name": "String"
}
}
]
@@ -116,20 +114,19 @@
"tooltip": "Signaled after IsEqual is invoked"
},
"details": {
"name": "AssetId::IsEqual",
"category": "Other"
"name": "Is Equal"
},
"params": [
{
"typeid": "{652ED536-3402-439B-AEBE-4A5DBC554085}",
"details": {
"name": "const AssetId&"
"name": "Asset Id"
}
},
{
"typeid": "{652ED536-3402-439B-AEBE-4A5DBC554085}",
"details": {
"name": "const AssetId&"
"name": "Asset Id"
}
}
],
@@ -137,7 +134,7 @@
{
"typeid": "{A0CA880C-AFE4-43CB-926C-59AC48496112}",
"details": {
"name": "bool"
"name": "Equal"
}
}
]
@@ -1,11 +1,45 @@
{
"entries": [
{
"key": "assetId",
"context": "BehaviorClass",
"variant": "",
"details": {
"name": "Get Asset Id",
"category": "Constants"
}
},
{
"key": "assetType",
"context": "BehaviorClass",
"variant": "",
"details": {
"name": "Get Asset Type"
}
},
{
"key": "sizeBytes",
"context": "BehaviorClass",
"variant": "",
"details": {
"name": "Get Size Bytes"
}
},
{
"key": "relativePath",
"context": "BehaviorClass",
"variant": "",
"details": {
"name": "Get Relative Path",
"category": "Constants"
}
},
{
"key": "AssetInfo",
"context": "BehaviorClass",
"variant": "",
"details": {
"name": "AssetInfo"
"name": "Asset Info"
}
}
]
@@ -5,8 +5,58 @@
"context": "BehaviorClass",
"variant": "",
"details": {
"name": "PolygonPrism"
}
"name": "Polygon Prism",
"category": "Shape"
},
"methods": [
{
"key": "height",
"details": {
"name": "Get Height"
},
"params": [
{
"typeid": "{F01C8BDD-6F24-4344-8945-521A8750B30B}",
"details": {
"name": "Polygon Prism",
"tooltip": "Polygon prism shape"
}
}
],
"results": [
{
"typeid": "{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}",
"details": {
"name": "Height"
}
}
]
},
{
"key": "vertexContainer",
"details": {
"name": "Get Vertex Container"
},
"params": [
{
"typeid": "{F01C8BDD-6F24-4344-8945-521A8750B30B}",
"details": {
"name": "Polygon Prism",
"tooltip": "Polygon prism shape"
}
}
],
"results": [
{
"typeid": "{EBE98B36-0783-5226-9739-064BD41EBB52}",
"details": {
"name": "Vertex Container",
"tooltip": "Vertex data"
}
}
]
}
]
}
]
}
@@ -0,0 +1,212 @@
{
"entries": [
{
"key": "PhysXCharacterControllerRequestBus",
"context": "EBusSender",
"variant": "",
"details": {
"name": "Character Controller"
},
"methods": [
{
"key": "GetHalfForwardExtent",
"entry": {
"name": "In",
"tooltip": "When signaled, this will invoke Get Half Forward Extent"
},
"exit": {
"name": "Out",
"tooltip": "Signaled after Get Half Forward Extent is invoked"
},
"details": {
"name": "Get Half Forward Extent"
},
"results": [
{
"typeid": "{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}",
"details": {
"name": "Half Forward Extent"
}
}
]
},
{
"key": "GetRadius",
"entry": {
"name": "In",
"tooltip": "When signaled, this will invoke Get Radius"
},
"exit": {
"name": "Out",
"tooltip": "Signaled after Get Radius is invoked"
},
"details": {
"name": "Get adius"
},
"results": [
{
"typeid": "{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}",
"details": {
"name": "Radius"
}
}
]
},
{
"key": "SetRadius",
"entry": {
"name": "In",
"tooltip": "When signaled, this will invoke Set Radius"
},
"exit": {
"name": "Out",
"tooltip": "Signaled after Set Radius is invoked"
},
"details": {
"name": "Set Radius"
},
"params": [
{
"typeid": "{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}",
"details": {
"name": "Radius"
}
}
]
},
{
"key": "SetHalfForwardExtent",
"entry": {
"name": "In",
"tooltip": "When signaled, this will invoke Set Half Forward Extent"
},
"exit": {
"name": "Out",
"tooltip": "Signaled after Set Half Forward Extent is invoked"
},
"details": {
"name": "Set Half Forward Extent"
},
"params": [
{
"typeid": "{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}",
"details": {
"name": "Half Forward Extent"
}
}
]
},
{
"key": "SetHeight",
"entry": {
"name": "In",
"tooltip": "When signaled, this will invoke Set Height"
},
"exit": {
"name": "Out",
"tooltip": "Signaled after Set Height is invoked"
},
"details": {
"name": "Set Height"
},
"params": [
{
"typeid": "{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}",
"details": {
"name": "Height"
}
}
]
},
{
"key": "GetHalfSideExtent",
"entry": {
"name": "In",
"tooltip": "When signaled, this will invoke Get Half Side Extent"
},
"exit": {
"name": "Out",
"tooltip": "Signaled after Get Half Side Extent is invoked"
},
"details": {
"name": "Get Half Side Extent"
},
"results": [
{
"typeid": "{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}",
"details": {
"name": "Half Side Extent"
}
}
]
},
{
"key": "GetHeight",
"entry": {
"name": "In",
"tooltip": "When signaled, this will invoke Get Height"
},
"exit": {
"name": "Out",
"tooltip": "Signaled after Get Height is invoked"
},
"details": {
"name": "Get Height"
},
"results": [
{
"typeid": "{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}",
"details": {
"name": "Height"
}
}
]
},
{
"key": "Resize",
"entry": {
"name": "In",
"tooltip": "When signaled, this will invoke Resize"
},
"exit": {
"name": "Out",
"tooltip": "Signaled after Resize is invoked"
},
"details": {
"name": "Resize"
},
"params": [
{
"typeid": "{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}",
"details": {
"name": "Size"
}
}
]
},
{
"key": "SetHalfSideExtent",
"entry": {
"name": "In",
"tooltip": "When signaled, this will invoke Set Half Side Extent"
},
"exit": {
"name": "Out",
"tooltip": "Signaled after Set Half Side Extent is invoked"
},
"details": {
"name": "Set Half Side Extent"
},
"params": [
{
"typeid": "{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}",
"details": {
"name": "Half Side Extent"
}
}
]
}
]
}
]
}
@@ -5,7 +5,7 @@
"context": "EBusSender",
"variant": "",
"details": {
"name": "PolygonPrismShapeComponentRequestBus"
"name": "Polygon Prism"
},
"methods": [
{
@@ -19,7 +19,7 @@
"tooltip": "Signaled after ClearVertices is invoked"
},
"details": {
"name": "ClearVertices"
"name": "Clear Vertices"
}
},
{
@@ -33,19 +33,19 @@
"tooltip": "Signaled after InsertVertex is invoked"
},
"details": {
"name": "InsertVertex"
"name": "Insert Vertex"
},
"params": [
{
"typeid": "{D6597933-47CD-4FC8-B911-63F3E2B0993A}",
"details": {
"name": "AZ::u64"
"name": "Index"
}
},
{
"typeid": "{3D80F623-C85C-4741-90D0-E4E66164E6BF}",
"details": {
"name": "Vector2"
"name": "Vertex"
}
}
],
@@ -53,7 +53,7 @@
{
"typeid": "{A0CA880C-AFE4-43CB-926C-59AC48496112}",
"details": {
"name": "bool"
"name": "Inserted"
}
}
]
@@ -69,19 +69,19 @@
"tooltip": "Signaled after UpdateVertex is invoked"
},
"details": {
"name": "UpdateVertex"
"name": "Update Vertex"
},
"params": [
{
"typeid": "{D6597933-47CD-4FC8-B911-63F3E2B0993A}",
"details": {
"name": "AZ::u64"
"name": "Index"
}
},
{
"typeid": "{3D80F623-C85C-4741-90D0-E4E66164E6BF}",
"details": {
"name": "Vector2"
"name": "Vertex"
}
}
],
@@ -89,7 +89,7 @@
{
"typeid": "{A0CA880C-AFE4-43CB-926C-59AC48496112}",
"details": {
"name": "bool"
"name": "Updated"
}
}
]
@@ -105,13 +105,13 @@
"tooltip": "Signaled after AddVertex is invoked"
},
"details": {
"name": "AddVertex"
"name": "Add Vertex"
},
"params": [
{
"typeid": "{3D80F623-C85C-4741-90D0-E4E66164E6BF}",
"details": {
"name": "Vector2"
"name": "Vertex"
}
}
]
@@ -127,13 +127,13 @@
"tooltip": "Signaled after GetPolygonPrism is invoked"
},
"details": {
"name": "GetPolygonPrism"
"name": "Get Polygon Prism"
},
"results": [
{
"typeid": "{2E879A16-9143-5862-A5B3-EDED931C60BC}",
"details": {
"name": "AZStd::shared_ptr"
"name": "Polygon Prism"
}
}
]
@@ -149,13 +149,13 @@
"tooltip": "Signaled after SetHeight is invoked"
},
"details": {
"name": "SetHeight"
"name": "Set Height"
},
"params": [
{
"typeid": "{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}",
"details": {
"name": "float"
"name": "Height"
}
}
]
@@ -171,13 +171,13 @@
"tooltip": "Signaled after RemoveVertex is invoked"
},
"details": {
"name": "RemoveVertex"
"name": "Remove Vertex"
},
"params": [
{
"typeid": "{D6597933-47CD-4FC8-B911-63F3E2B0993A}",
"details": {
"name": "AZ::u64"
"name": "Index"
}
}
],
@@ -185,7 +185,7 @@
{
"typeid": "{A0CA880C-AFE4-43CB-926C-59AC48496112}",
"details": {
"name": "bool"
"name": "Removed"
}
}
]
@@ -12,38 +12,39 @@
"key": "GetNormalFromFloats",
"entry": {
"name": "In",
"tooltip": "When signaled, this will invoke GetNormalFromFloats"
"tooltip": "When signaled, this will invoke Get Normal From Floats"
},
"exit": {
"name": "Out",
"tooltip": "Signaled after GetNormalFromFloats is invoked"
"tooltip": "Signaled after Get Normal From Floats is invoked"
},
"details": {
"name": "GetNormalFromFloats"
"name": "Get Normal From Floats"
},
"params": [
{
"typeid": "{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}",
"details": {
"name": "float"
"name": "X"
}
},
{
"typeid": "{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}",
"details": {
"name": "float"
"name": "Y"
}
},
{
"typeid": "{72039442-EB38-4D42-A1AD-CB68F7E0EEF6}",
"details": {
"name": "int"
"name": "Sample Filter",
"tooltip": "0: Bilinear, 1: Clamp, 2: Exact"
}
},
{
"typeid": "{A0CA880C-AFE4-43CB-926C-59AC48496112}",
"details": {
"name": "bool"
"name": "Terrain Exists"
}
}
],
@@ -51,7 +52,7 @@
{
"typeid": "{8379EB7D-01FA-4538-B64B-A6543B4BE73D}",
"details": {
"name": "Vector3"
"name": "Normal"
}
}
]
@@ -60,32 +61,34 @@
"key": "GetNormal",
"entry": {
"name": "In",
"tooltip": "When signaled, this will invoke GetNormal"
"tooltip": "When signaled, this will invoke Get Normal"
},
"exit": {
"name": "Out",
"tooltip": "Signaled after GetNormal is invoked"
"tooltip": "Signaled after Get Normal is invoked"
},
"details": {
"name": "GetNormal"
"name": "Get Normal"
},
"params": [
{
"typeid": "{8379EB7D-01FA-4538-B64B-A6543B4BE73D}",
"details": {
"name": "Vector3"
"name": "Position"
}
},
{
"typeid": "{72039442-EB38-4D42-A1AD-CB68F7E0EEF6}",
"details": {
"name": "int"
"name": "Sample Filter",
"tooltip": "0: Bilinear, 1: Clamp, 2: Exact"
}
},
{
"typeid": "{A0CA880C-AFE4-43CB-926C-59AC48496112}",
"details": {
"name": "bool"
"name": "Terrain Exists"
}
}
],
@@ -93,7 +96,7 @@
{
"typeid": "{8379EB7D-01FA-4538-B64B-A6543B4BE73D}",
"details": {
"name": "Vector3"
"name": "Normal"
}
}
]
@@ -102,20 +105,20 @@
"key": "GetTerrainAabb",
"entry": {
"name": "In",
"tooltip": "When signaled, this will invoke GetTerrainAabb"
"tooltip": "When signaled, this will invoke Get Terrain AABB"
},
"exit": {
"name": "Out",
"tooltip": "Signaled after GetTerrainAabb is invoked"
"tooltip": "Signaled after Get Terrain AABB is invoked"
},
"details": {
"name": "GetTerrainAabb"
"name": "Get Terrain AABB"
},
"results": [
{
"typeid": "{A54C2B36-D5B8-46A1-A529-4EBDBD2450E7}",
"details": {
"name": "Aabb"
"name": "AABB"
}
}
]
@@ -124,32 +127,33 @@
"key": "GetIsHoleFromFloats",
"entry": {
"name": "In",
"tooltip": "When signaled, this will invoke GetIsHoleFromFloats"
"tooltip": "When signaled, this will invoke Get Is Hole From Floats"
},
"exit": {
"name": "Out",
"tooltip": "Signaled after GetIsHoleFromFloats is invoked"
"tooltip": "Signaled after Get Is Hole From Floats is invoked"
},
"details": {
"name": "GetIsHoleFromFloats"
"name": "Get Is Hole From Floats"
},
"params": [
{
"typeid": "{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}",
"details": {
"name": "float"
"name": "X"
}
},
{
"typeid": "{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}",
"details": {
"name": "float"
"name": "Y"
}
},
{
"typeid": "{72039442-EB38-4D42-A1AD-CB68F7E0EEF6}",
"details": {
"name": "int"
"name": "Sample Filter",
"tooltip": "0: Bilinear, 1: Clamp, 2: Exact"
}
}
],
@@ -157,7 +161,7 @@
{
"typeid": "{A0CA880C-AFE4-43CB-926C-59AC48496112}",
"details": {
"name": "bool"
"name": "Is Hole"
}
}
]
@@ -166,38 +170,39 @@
"key": "GetHeightFromFloats",
"entry": {
"name": "In",
"tooltip": "When signaled, this will invoke GetHeightFromFloats"
"tooltip": "When signaled, this will invoke Get Height From Floats"
},
"exit": {
"name": "Out",
"tooltip": "Signaled after GetHeightFromFloats is invoked"
"tooltip": "Signaled after Get Height From Floats is invoked"
},
"details": {
"name": "GetHeightFromFloats"
"name": "Get Height From Floats"
},
"params": [
{
"typeid": "{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}",
"details": {
"name": "float"
"name": "X"
}
},
{
"typeid": "{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}",
"details": {
"name": "float"
"name": "Y"
}
},
{
"typeid": "{72039442-EB38-4D42-A1AD-CB68F7E0EEF6}",
"details": {
"name": "int"
"name": "Sample Filter",
"tooltip": "0: Bilinear, 1: Clamp, 2: Exact"
}
},
{
"typeid": "{A0CA880C-AFE4-43CB-926C-59AC48496112}",
"details": {
"name": "bool"
"name": "Terrain Exists"
}
}
],
@@ -205,7 +210,7 @@
{
"typeid": "{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}",
"details": {
"name": "float"
"name": "Height"
}
}
]
@@ -221,25 +226,26 @@
"tooltip": "Signaled after GetMaxSurfaceWeight is invoked"
},
"details": {
"name": "GetMaxSurfaceWeight"
"name": "Get Max Surface Weight"
},
"params": [
{
"typeid": "{8379EB7D-01FA-4538-B64B-A6543B4BE73D}",
"details": {
"name": "Vector3"
"name": "Position"
}
},
{
"typeid": "{72039442-EB38-4D42-A1AD-CB68F7E0EEF6}",
"details": {
"name": "int"
"name": "Sample Filter",
"tooltip": "0: Bilinear, 1: Clamp, 2: Exact"
}
},
{
"typeid": "{A0CA880C-AFE4-43CB-926C-59AC48496112}",
"details": {
"name": "bool"
"name": "Terrain Exists"
}
}
],
@@ -247,7 +253,7 @@
{
"typeid": "{EA14018E-E853-4BF5-8E13-D83BB99A54CC}",
"details": {
"name": "SurfaceTagWeight"
"name": "Surface Tag Weight"
}
}
]
@@ -256,38 +262,39 @@
"key": "GetMaxSurfaceWeightFromFloats",
"entry": {
"name": "In",
"tooltip": "When signaled, this will invoke GetMaxSurfaceWeightFromFloats"
"tooltip": "When signaled, this will invoke Get Max Surface Weight From Floats"
},
"exit": {
"name": "Out",
"tooltip": "Signaled after GetMaxSurfaceWeightFromFloats is invoked"
"tooltip": "Signaled after Get Max Surface Weight From Floats is invoked"
},
"details": {
"name": "GetMaxSurfaceWeightFromFloats"
"name": "Get Max Surface Weight From Floats"
},
"params": [
{
"typeid": "{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}",
"details": {
"name": "float"
"name": "X"
}
},
{
"typeid": "{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}",
"details": {
"name": "float"
"name": "Y"
}
},
{
"typeid": "{72039442-EB38-4D42-A1AD-CB68F7E0EEF6}",
"details": {
"name": "int"
"name": "Sample Filter",
"tooltip": "0: Bilinear, 1: Clamp, 2: Exact"
}
},
{
"typeid": "{A0CA880C-AFE4-43CB-926C-59AC48496112}",
"details": {
"name": "bool"
"name": "Terrain Exists"
}
}
],
@@ -295,7 +302,7 @@
{
"typeid": "{EA14018E-E853-4BF5-8E13-D83BB99A54CC}",
"details": {
"name": "SurfaceTagWeight"
"name": "Surface Tag Weight"
}
}
]
@@ -304,20 +311,20 @@
"key": "GetTerrainHeightQueryResolution",
"entry": {
"name": "In",
"tooltip": "When signaled, this will invoke GetTerrainHeightQueryResolution"
"tooltip": "When signaled, this will invoke Get Terrain Height Query Resolution"
},
"exit": {
"name": "Out",
"tooltip": "Signaled after GetTerrainHeightQueryResolution is invoked"
"tooltip": "Signaled after Get Terrain Height Query Resolution is invoked"
},
"details": {
"name": "GetTerrainHeightQueryResolution"
"name": "Get Terrain Height Query Resolution"
},
"results": [
{
"typeid": "{3D80F623-C85C-4741-90D0-E4E66164E6BF}",
"details": {
"name": "Vector2"
"name": "Resolution"
}
}
]
@@ -326,32 +333,33 @@
"key": "GetHeight",
"entry": {
"name": "In",
"tooltip": "When signaled, this will invoke GetHeight"
"tooltip": "When signaled, this will invoke Get Height"
},
"exit": {
"name": "Out",
"tooltip": "Signaled after GetHeight is invoked"
"tooltip": "Signaled after Get Height is invoked"
},
"details": {
"name": "GetHeight"
"name": "Get Height"
},
"params": [
{
"typeid": "{8379EB7D-01FA-4538-B64B-A6543B4BE73D}",
"details": {
"name": "Vector3"
"name": "Position"
}
},
{
"typeid": "{72039442-EB38-4D42-A1AD-CB68F7E0EEF6}",
"details": {
"name": "int"
"name": "Sample Filter",
"tooltip": "0: Bilinear, 1: Clamp, 2: Exact"
}
},
{
"typeid": "{A0CA880C-AFE4-43CB-926C-59AC48496112}",
"details": {
"name": "bool"
"name": "Terrain Exists"
}
}
],
@@ -359,7 +367,7 @@
{
"typeid": "{EA2C3E90-AFBE-44D4-A90D-FAAF79BAF93D}",
"details": {
"name": "float"
"name": "Height"
}
}
]
@@ -271,12 +271,13 @@ namespace ScriptCanvasEditor::Nodes
case ScriptCanvas::MethodType::Event:
graphCanvasEntity->CreateComponent<EBusSenderNodeDescriptorComponent>();
break;
case ScriptCanvas::MethodType::Member:
case ScriptCanvas::MethodType::Getter:
case ScriptCanvas::MethodType::Setter:
case ScriptCanvas::MethodType::Member:
case ScriptCanvas::MethodType::Free:
graphCanvasEntity->CreateComponent<ClassMethodNodeDescriptorComponent>();
break;
break;
default:
AZ_Error("ScriptCanvas", false, "Invalid method node type, node creation failed. This node needs to be deleted.");
break;
@@ -304,10 +305,11 @@ namespace ScriptCanvasEditor::Nodes
GraphCanvas::TranslationKey key;
key = isEBusSender ? "EBusSender" : "BehaviorClass";
key << className;
GraphCanvas::TranslationRequestBus::BroadcastResult(details, &GraphCanvas::TranslationRequests::GetDetails, key + ".details", details);
// Set the class' category as the subtitle fallback
details.m_subtitle = details.m_category;
// Set the class' name as the subtitle fallback
details.m_subtitle = details.m_name;
// Get the method's text data
key << "methods" << methodName;
@@ -94,15 +94,6 @@ namespace ScriptCanvasEditor
SetName(details.m_name.c_str());
SetToolTip(details.m_tooltip.c_str());
if (propertyStatus == ScriptCanvas::PropertyStatus::Getter)
{
SetName(AZStd::string::format("Get %s", GetName().toUtf8().data()).data());
}
else if (propertyStatus == ScriptCanvas::PropertyStatus::Setter)
{
SetName(AZStd::string::format("Set %s", GetName().toUtf8().data()).data());
}
SetTitlePalette("MethodNodeTitlePalette");
}
@@ -269,6 +269,7 @@ namespace ScriptCanvasEditorTools
}
}
// Results (Output Slots)
const AZ::BehaviorParameter* resultParameter = behaviorMethod->HasResult() ? behaviorMethod->GetResult() : nullptr;
if (resultParameter)
{
@@ -291,6 +292,19 @@ namespace ScriptCanvasEditorTools
}
}
// Behavior Class properties
if (!behaviorClass->m_properties.empty())
{
for (const auto& propertyEntry : behaviorClass->m_properties)
{
AZ::BehaviorProperty* behaviorProperty = propertyEntry.second;
if (behaviorProperty)
{
TranslateBehaviorProperty(behaviorProperty, behaviorClass->m_name, "BehaviorClass", &entry);
}
}
}
translationRoot.m_entries.push_back(entry);
AZStd::string fileName = AZStd::string::format("Classes/%s", className.c_str());
@@ -748,53 +762,109 @@ namespace ScriptCanvasEditorTools
const AZ::BehaviorProperty* behaviorProperty = behaviorPropertyEntry->second;
Entry entry;
TranslateBehaviorProperty(behaviorProperty, "", "Constant", &entry);
TranslationFormat translationRoot;
if (behaviorProperty->m_getter && !behaviorProperty->m_setter)
{
Entry entry;
entry.m_context = "Constant";
entry.m_key = propertyName;
auto methodName = behaviorProperty->m_getter->m_name;
entry.m_details.m_name = methodName;
entry.m_details.m_tooltip = behaviorProperty->m_getter->m_debugDescription ? behaviorProperty->m_getter->m_debugDescription : "";
entry.m_details.m_category = "Constants";
translationRoot.m_entries.push_back(entry);
}
else
{
Entry entry;
entry.m_context = "BehaviorMethod";
if (behaviorProperty->m_getter)
{
entry.m_key = propertyName;
auto methodName = behaviorProperty->m_getter->m_name;
entry.m_details.m_name = methodName;
entry.m_details.m_tooltip = behaviorProperty->m_getter->m_debugDescription ? behaviorProperty->m_getter->m_debugDescription : "";
translationRoot.m_entries.push_back(entry);
}
if (behaviorProperty->m_setter)
{
entry.m_key = propertyName;
auto methodName = behaviorProperty->m_setter->m_name;
entry.m_details.m_name = methodName;
entry.m_details.m_tooltip = behaviorProperty->m_setter->m_debugDescription ? behaviorProperty->m_getter->m_debugDescription : "";
translationRoot.m_entries.push_back(entry);
}
}
translationRoot.m_entries.push_back(entry);
AZStd::string fileName = AZStd::string::format("Properties/%s", behaviorProperty->m_name.c_str());
SaveJSONData(fileName, translationRoot);
}
void TranslationGeneration::TranslateMethod(AZ::BehaviorMethod* behaviorMethod, Method& methodEntry)
{
// Arguments (Input Slots)
if (behaviorMethod->GetNumArguments() > 0)
{
for (size_t argIndex = 0; argIndex < behaviorMethod->GetNumArguments(); ++argIndex)
{
const AZ::BehaviorParameter* parameter = behaviorMethod->GetArgument(argIndex);
Argument argument;
AZStd::string argumentKey = parameter->m_typeId.ToString<AZStd::string>();
AZStd::string argumentName = parameter->m_name;
AZStd::string argumentDescription = "";
Helpers::GetTypeNameAndDescription(parameter->m_typeId, argumentName, argumentDescription);
argument.m_typeId = argumentKey;
argument.m_details.m_name = parameter->m_name;
argument.m_details.m_category = "";
argument.m_details.m_tooltip = argumentDescription;
methodEntry.m_arguments.push_back(argument);
}
}
// Results (Output Slots)
const AZ::BehaviorParameter* resultParameter = behaviorMethod->HasResult() ? behaviorMethod->GetResult() : nullptr;
if (resultParameter)
{
Argument result;
AZStd::string resultKey = resultParameter->m_typeId.ToString<AZStd::string>();
AZStd::string resultName = resultParameter->m_name;
AZStd::string resultDescription = "";
Helpers::GetTypeNameAndDescription(resultParameter->m_typeId, resultName, resultDescription);
result.m_typeId = resultKey;
result.m_details.m_name = resultParameter->m_name;
result.m_details.m_tooltip = resultDescription;
methodEntry.m_results.push_back(result);
}
}
void TranslationGeneration::TranslateBehaviorProperty(const AZ::BehaviorProperty* behaviorProperty, const AZStd::string& className, const AZStd::string& context, Entry* entry)
{
if (!behaviorProperty->m_getter && !behaviorProperty->m_setter)
{
return;
}
Entry localEntry;
if (!entry)
{
entry = &localEntry;
entry->m_key = className;
entry->m_context = context;
}
if (behaviorProperty->m_getter)
{
Method method;
auto methodName = behaviorProperty->m_getter->m_name;
method.m_key = behaviorProperty->m_name;
method.m_details.m_name = methodName;
method.m_details.m_tooltip = behaviorProperty->m_getter->m_debugDescription ? behaviorProperty->m_getter->m_debugDescription : "";
TranslateMethod(behaviorProperty->m_getter, method);
entry->m_methods.push_back(method);
}
if (behaviorProperty->m_setter)
{
Method method;
auto methodName = behaviorProperty->m_setter->m_name;
method.m_key = behaviorProperty->m_name;
method.m_details.m_name = methodName;
method.m_details.m_tooltip = behaviorProperty->m_setter->m_debugDescription ? behaviorProperty->m_getter->m_debugDescription : "";
TranslateMethod(behaviorProperty->m_setter, method);
entry->m_methods.push_back(method);
}
}
bool TranslationGeneration::TranslateEBusHandler(const AZ::BehaviorEBus* behaviorEbus, TranslationFormat& translationRoot)
{
// Must be a valid ebus handler
@@ -124,11 +124,17 @@ namespace ScriptCanvasEditorTools
//! Generates the translation data for all global properties and methods in the BehaviorContext
void TranslateBehaviorGlobals();
//! Generates the translation data for the specified property in the BehaviorContext
//! Generates the translation data for the specified property in the BehaviorContext (global, by name)
void TranslateBehaviorProperty(const AZStd::string& propertyName);
//! Generates the translation data for the specified property in the BehaviorContext
void TranslateBehaviorProperty(const AZ::BehaviorProperty* behaviorProperty, const AZStd::string& className, const AZStd::string& context, Entry* entry = nullptr);
private:
//! Utility to populate a BehaviorMethod's translation data
void TranslateMethod(AZ::BehaviorMethod* behaviorMethod, Method& methodEntry);
//! Generates the translation data for a BehaviorEBus that has an BehaviorEBusHandler
bool TranslateEBusHandler(const AZ::BehaviorEBus* behaviorEbus, TranslationFormat& translationRoot);