Browse Source

Merge pull request #42369 from Rubonnek/document-funcref-get-function

Make "function" a property of FuncRef
Rémi Verschelde 4 years ago
parent
commit
3c441baf6c
2 changed files with 17 additions and 18 deletions
  1. 4 1
      core/func_ref.cpp
  2. 13 17
      doc/classes/FuncRef.xml

+ 4 - 1
core/func_ref.cpp

@@ -92,7 +92,10 @@ void FuncRef::_bind_methods() {
 	ClassDB::bind_method(D_METHOD("call_funcv", "arg_array"), &FuncRef::call_funcv);
 
 	ClassDB::bind_method(D_METHOD("set_instance", "instance"), &FuncRef::set_instance);
+	ClassDB::bind_method(D_METHOD("is_valid"), &FuncRef::is_valid);
+
 	ClassDB::bind_method(D_METHOD("set_function", "name"), &FuncRef::set_function);
 	ClassDB::bind_method(D_METHOD("get_function"), &FuncRef::get_function);
-	ClassDB::bind_method(D_METHOD("is_valid"), &FuncRef::is_valid);
+
+	ADD_PROPERTY(PropertyInfo(Variant::STRING_NAME, "function"), "set_function", "get_function");
 }

+ 13 - 17
doc/classes/FuncRef.xml

@@ -14,7 +14,7 @@
 			<return type="Variant">
 			</return>
 			<description>
-				Calls the referenced function previously set by [method set_function] or [method @GDScript.funcref].
+				Calls the referenced function previously set in [member function] or [method @GDScript.funcref].
 			</description>
 		</method>
 		<method name="call_funcv">
@@ -23,35 +23,31 @@
 			<argument index="0" name="arg_array" type="Array">
 			</argument>
 			<description>
-				Calls the referenced function previously set by [method set_function] or [method @GDScript.funcref]. Contrarily to [method call_func], this method does not support a variable number of arguments but expects all parameters to be passed via a single [Array].
+				Calls the referenced function previously set in [member function] or [method @GDScript.funcref]. Contrarily to [method call_func], this method does not support a variable number of arguments but expects all parameters to be passed via a single [Array].
 			</description>
 		</method>
-		<method name="is_valid" qualifiers="const">
-			<return type="bool">
-			</return>
-			<description>
-				Returns whether the object still exists and has the function assigned.
-			</description>
-		</method>
-		<method name="set_function">
+		<method name="set_instance">
 			<return type="void">
 			</return>
-			<argument index="0" name="name" type="StringName">
+			<argument index="0" name="instance" type="Object">
 			</argument>
 			<description>
-				The name of the referenced function to call on the object, without parentheses or any parameters.
+				The object containing the referenced function. This object must be of a type actually inheriting from [Object], not a built-in type such as [int], [Vector2] or [Dictionary].
 			</description>
 		</method>
-		<method name="set_instance">
-			<return type="void">
+		<method name="is_valid" qualifiers="const">
+			<return type="bool">
 			</return>
-			<argument index="0" name="instance" type="Object">
-			</argument>
 			<description>
-				The object containing the referenced function. This object must be of a type actually inheriting from [Object], not a built-in type such as [int], [Vector2] or [Dictionary].
+				Returns whether the object still exists and has the function assigned.
 			</description>
 		</method>
 	</methods>
+	<members>
+		<member name="function" type="StringName" setter="set_function" getter="get_function">
+			The name of the referenced function.
+		</member>
+	</members>
 	<constants>
 	</constants>
 </class>