virtualx-engine/doc/classes/Signal.xml
Hugo Locurcio b68dd2e189
Add an XML schema for documentation
This makes it easier to spot syntax errors when editing the
class reference. The schema is referenced locally so validation
can still work offline.

Each class XML's schema conformance is also checked on GitHub Actions.
2022-02-15 00:03:31 +01:00

123 lines
3.7 KiB
XML

<?xml version="1.0" encoding="UTF-8" ?>
<class name="Signal" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
<brief_description>
Class representing a signal defined in an object.
</brief_description>
<description>
</description>
<tutorials>
</tutorials>
<constructors>
<constructor name="Signal">
<return type="Signal" />
<description>
Constructs a null [Signal] with no object nor signal name bound.
</description>
</constructor>
<constructor name="Signal">
<return type="Signal" />
<argument index="0" name="from" type="Signal" />
<description>
Constructs a [Signal] as a copy of the given [Signal].
</description>
</constructor>
<constructor name="Signal">
<return type="Signal" />
<argument index="0" name="object" type="Object" />
<argument index="1" name="signal" type="StringName" />
<description>
Creates a new [Signal] with the name [code]signal[/code] in the specified [code]object[/code].
</description>
</constructor>
</constructors>
<methods>
<method name="connect">
<return type="int" />
<argument index="0" name="callable" type="Callable" />
<argument index="1" name="flags" type="int" default="0" />
<description>
Connects this signal to the specified [Callable], optionally providing connection flags. You can provide additional arguments to the connected method call by using [method Callable.bind].
[codeblock]
for button in $Buttons.get_children():
button.pressed.connect(on_pressed.bind(button))
func on_pressed(button):
print(button.name, " was pressed")
[/codeblock]
</description>
</method>
<method name="disconnect">
<return type="void" />
<argument index="0" name="callable" type="Callable" />
<description>
Disconnects this signal from the specified [Callable].
</description>
</method>
<method name="emit" qualifiers="vararg const">
<return type="void" />
<description>
Emits this signal to all connected objects.
</description>
</method>
<method name="get_connections" qualifiers="const">
<return type="Array" />
<description>
Returns the list of [Callable]s connected to this signal.
</description>
</method>
<method name="get_name" qualifiers="const">
<return type="StringName" />
<description>
Returns the name of this signal.
</description>
</method>
<method name="get_object" qualifiers="const">
<return type="Object" />
<description>
Returns the object emitting this signal.
</description>
</method>
<method name="get_object_id" qualifiers="const">
<return type="int" />
<description>
Returns the ID of the object emitting this signal (see [method Object.get_instance_id]).
</description>
</method>
<method name="is_connected" qualifiers="const">
<return type="bool" />
<argument index="0" name="callable" type="Callable" />
<description>
Returns [code]true[/code] if the specified [Callable] is connected to this signal.
</description>
</method>
<method name="is_null" qualifiers="const">
<return type="bool" />
<description>
</description>
</method>
</methods>
<operators>
<operator name="operator !=">
<return type="bool" />
<description>
</description>
</operator>
<operator name="operator !=">
<return type="bool" />
<argument index="0" name="right" type="Signal" />
<description>
</description>
</operator>
<operator name="operator ==">
<return type="bool" />
<description>
</description>
</operator>
<operator name="operator ==">
<return type="bool" />
<argument index="0" name="right" type="Signal" />
<description>
</description>
</operator>
</operators>
</class>