Add ButtonAttribute to display methods in editor properties panel

#1917
This commit is contained in:
Wojtek Figat
2024-12-06 16:10:50 +01:00
parent 1088a71e69
commit b6d2a3683c
8 changed files with 122 additions and 0 deletions

View File

@@ -2263,6 +2263,14 @@ void VisualScript::GetMethodSignature(int32 index, String& name, byte& flags, St
}
}
Variant VisualScript::InvokeMethod(int32 index, const Variant& instance, Span<Variant> parameters) const
{
auto& method = _methods[index];
Variant result;
VisualScriptingModule.InvokeMethod((void*)&method, instance, parameters, result);
return result;
}
Span<byte> VisualScript::GetMetaData(int32 typeID)
{
auto meta = Graph.Meta.GetEntry(typeID);

View File

@@ -267,6 +267,9 @@ public:
// Gets the signature data of the method.
API_FUNCTION() void GetMethodSignature(int32 index, API_PARAM(Out) String& name, API_PARAM(Out) byte& flags, API_PARAM(Out) String& returnTypeName, API_PARAM(Out) Array<String>& paramNames, API_PARAM(Out) Array<String>& paramTypeNames, API_PARAM(Out) Array<bool>& paramOuts);
// Invokes the method.
API_FUNCTION() Variant InvokeMethod(int32 index, const Variant& instance, Span<Variant> parameters) const;
// Gets the metadata of the script surface.
API_FUNCTION() Span<byte> GetMetaData(int32 typeID);