class_signal.rst 9.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183
  1. :github_url: hide
  2. .. DO NOT EDIT THIS FILE!!!
  3. .. Generated automatically from Godot engine sources.
  4. .. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py.
  5. .. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/Signal.xml.
  6. .. _class_Signal:
  7. Signal
  8. ======
  9. Class representing a signal defined in an object.
  10. Tutorials
  11. ---------
  12. - :doc:`Using Signals <../getting_started/step_by_step/signals>`
  13. - `GDScript Basics <../tutorials/scripting/gdscript/gdscript_basics.html#signals>`__
  14. Constructors
  15. ------------
  16. +-----------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
  17. | :ref:`Signal<class_Signal>` | :ref:`Signal<class_Signal_constructor_Signal>` **(** **)** |
  18. +-----------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
  19. | :ref:`Signal<class_Signal>` | :ref:`Signal<class_Signal_constructor_Signal>` **(** :ref:`Signal<class_Signal>` from **)** |
  20. +-----------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
  21. | :ref:`Signal<class_Signal>` | :ref:`Signal<class_Signal_constructor_Signal>` **(** :ref:`Object<class_Object>` object, :ref:`StringName<class_StringName>` signal **)** |
  22. +-----------------------------+-------------------------------------------------------------------------------------------------------------------------------------------+
  23. Methods
  24. -------
  25. +-------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
  26. | :ref:`int<class_int>` | :ref:`connect<class_Signal_method_connect>` **(** :ref:`Callable<class_Callable>` callable, :ref:`int<class_int>` flags=0 **)** |
  27. +-------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
  28. | void | :ref:`disconnect<class_Signal_method_disconnect>` **(** :ref:`Callable<class_Callable>` callable **)** |
  29. +-------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
  30. | void | :ref:`emit<class_Signal_method_emit>` **(** ... **)** |vararg| |const| |
  31. +-------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
  32. | :ref:`Array<class_Array>` | :ref:`get_connections<class_Signal_method_get_connections>` **(** **)** |const| |
  33. +-------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
  34. | :ref:`StringName<class_StringName>` | :ref:`get_name<class_Signal_method_get_name>` **(** **)** |const| |
  35. +-------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
  36. | :ref:`Object<class_Object>` | :ref:`get_object<class_Signal_method_get_object>` **(** **)** |const| |
  37. +-------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
  38. | :ref:`int<class_int>` | :ref:`get_object_id<class_Signal_method_get_object_id>` **(** **)** |const| |
  39. +-------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
  40. | :ref:`bool<class_bool>` | :ref:`is_connected<class_Signal_method_is_connected>` **(** :ref:`Callable<class_Callable>` callable **)** |const| |
  41. +-------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
  42. | :ref:`bool<class_bool>` | :ref:`is_null<class_Signal_method_is_null>` **(** **)** |const| |
  43. +-------------------------------------+---------------------------------------------------------------------------------------------------------------------------------+
  44. Operators
  45. ---------
  46. +-------------------------+--------------------------------------------------------------------------------------------------+
  47. | :ref:`bool<class_bool>` | :ref:`operator !=<class_Signal_operator_neq_bool>` **(** :ref:`Signal<class_Signal>` right **)** |
  48. +-------------------------+--------------------------------------------------------------------------------------------------+
  49. | :ref:`bool<class_bool>` | :ref:`operator ==<class_Signal_operator_eq_bool>` **(** :ref:`Signal<class_Signal>` right **)** |
  50. +-------------------------+--------------------------------------------------------------------------------------------------+
  51. Constructor Descriptions
  52. ------------------------
  53. .. _class_Signal_constructor_Signal:
  54. - :ref:`Signal<class_Signal>` **Signal** **(** **)**
  55. Constructs a null ``Signal`` with no object nor signal name bound.
  56. ----
  57. - :ref:`Signal<class_Signal>` **Signal** **(** :ref:`Signal<class_Signal>` from **)**
  58. Constructs a ``Signal`` as a copy of the given ``Signal``.
  59. ----
  60. - :ref:`Signal<class_Signal>` **Signal** **(** :ref:`Object<class_Object>` object, :ref:`StringName<class_StringName>` signal **)**
  61. Creates a new ``Signal`` with the name ``signal`` in the specified ``object``.
  62. Method Descriptions
  63. -------------------
  64. .. _class_Signal_method_connect:
  65. - :ref:`int<class_int>` **connect** **(** :ref:`Callable<class_Callable>` callable, :ref:`int<class_int>` flags=0 **)**
  66. Connects this signal to the specified :ref:`Callable<class_Callable>`, optionally providing connection flags. You can provide additional arguments to the connected method call by using :ref:`Callable.bind<class_Callable_method_bind>`.
  67. ::
  68. for button in $Buttons.get_children():
  69. button.pressed.connect(on_pressed.bind(button))
  70. func on_pressed(button):
  71. print(button.name, " was pressed")
  72. ----
  73. .. _class_Signal_method_disconnect:
  74. - void **disconnect** **(** :ref:`Callable<class_Callable>` callable **)**
  75. Disconnects this signal from the specified :ref:`Callable<class_Callable>`.
  76. ----
  77. .. _class_Signal_method_emit:
  78. - void **emit** **(** ... **)** |vararg| |const|
  79. Emits this signal to all connected objects.
  80. ----
  81. .. _class_Signal_method_get_connections:
  82. - :ref:`Array<class_Array>` **get_connections** **(** **)** |const|
  83. Returns the list of :ref:`Callable<class_Callable>`\ s connected to this signal.
  84. ----
  85. .. _class_Signal_method_get_name:
  86. - :ref:`StringName<class_StringName>` **get_name** **(** **)** |const|
  87. Returns the name of this signal.
  88. ----
  89. .. _class_Signal_method_get_object:
  90. - :ref:`Object<class_Object>` **get_object** **(** **)** |const|
  91. Returns the object emitting this signal.
  92. ----
  93. .. _class_Signal_method_get_object_id:
  94. - :ref:`int<class_int>` **get_object_id** **(** **)** |const|
  95. Returns the ID of the object emitting this signal (see :ref:`Object.get_instance_id<class_Object_method_get_instance_id>`).
  96. ----
  97. .. _class_Signal_method_is_connected:
  98. - :ref:`bool<class_bool>` **is_connected** **(** :ref:`Callable<class_Callable>` callable **)** |const|
  99. Returns ``true`` if the specified :ref:`Callable<class_Callable>` is connected to this signal.
  100. ----
  101. .. _class_Signal_method_is_null:
  102. - :ref:`bool<class_bool>` **is_null** **(** **)** |const|
  103. Operator Descriptions
  104. ---------------------
  105. .. _class_Signal_operator_neq_bool:
  106. - :ref:`bool<class_bool>` **operator !=** **(** :ref:`Signal<class_Signal>` right **)**
  107. ----
  108. .. _class_Signal_operator_eq_bool:
  109. - :ref:`bool<class_bool>` **operator ==** **(** :ref:`Signal<class_Signal>` right **)**
  110. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  111. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  112. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  113. .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
  114. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
  115. .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`