class_object.rst 38 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432
  1. .. Generated automatically by doc/tools/makerst.py in Godot's source tree.
  2. .. DO NOT EDIT THIS FILE, but the Object.xml source instead.
  3. .. The source is found in doc/classes or modules/<name>/doc_classes.
  4. .. _class_Object:
  5. Object
  6. ======
  7. **Inherited By:** :ref:`ARVRPositionalTracker<class_ARVRPositionalTracker>`, :ref:`ARVRServer<class_ARVRServer>`, :ref:`AudioServer<class_AudioServer>`, :ref:`ClassDB<class_ClassDB>`, :ref:`EditorFileSystemDirectory<class_EditorFileSystemDirectory>`, :ref:`EditorSelection<class_EditorSelection>`, :ref:`Engine<class_Engine>`, :ref:`Geometry<class_Geometry>`, :ref:`GodotSharp<class_GodotSharp>`, :ref:`IP<class_IP>`, :ref:`Input<class_Input>`, :ref:`InputMap<class_InputMap>`, :ref:`JSON<class_JSON>`, :ref:`JavaScript<class_JavaScript>`, :ref:`MainLoop<class_MainLoop>`, :ref:`Node<class_Node>`, :ref:`OS<class_OS>`, :ref:`Performance<class_Performance>`, :ref:`Physics2DDirectBodyState<class_Physics2DDirectBodyState>`, :ref:`Physics2DDirectSpaceState<class_Physics2DDirectSpaceState>`, :ref:`Physics2DServer<class_Physics2DServer>`, :ref:`PhysicsDirectBodyState<class_PhysicsDirectBodyState>`, :ref:`PhysicsDirectSpaceState<class_PhysicsDirectSpaceState>`, :ref:`PhysicsServer<class_PhysicsServer>`, :ref:`ProjectSettings<class_ProjectSettings>`, :ref:`Reference<class_Reference>`, :ref:`ResourceLoader<class_ResourceLoader>`, :ref:`ResourceSaver<class_ResourceSaver>`, :ref:`TranslationServer<class_TranslationServer>`, :ref:`TreeItem<class_TreeItem>`, :ref:`UndoRedo<class_UndoRedo>`, :ref:`VisualScriptEditor<class_VisualScriptEditor>`, :ref:`VisualServer<class_VisualServer>`
  8. **Category:** Core
  9. Brief Description
  10. -----------------
  11. Base class for all non built-in types.
  12. Methods
  13. -------
  14. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  15. | :ref:`Variant<class_Variant>` | :ref:`_get<class_Object_method__get>` **(** :ref:`String<class_String>` property **)** virtual |
  16. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  17. | :ref:`Array<class_Array>` | :ref:`_get_property_list<class_Object_method__get_property_list>` **(** **)** virtual |
  18. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  19. | void | :ref:`_init<class_Object_method__init>` **(** **)** virtual |
  20. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  21. | void | :ref:`_notification<class_Object_method__notification>` **(** :ref:`int<class_int>` what **)** virtual |
  22. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  23. | :ref:`bool<class_bool>` | :ref:`_set<class_Object_method__set>` **(** :ref:`String<class_String>` property, :ref:`Variant<class_Variant>` value **)** virtual |
  24. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  25. | void | :ref:`add_user_signal<class_Object_method_add_user_signal>` **(** :ref:`String<class_String>` signal, :ref:`Array<class_Array>` arguments=[ ] **)** |
  26. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  27. | :ref:`Variant<class_Variant>` | :ref:`call<class_Object_method_call>` **(** :ref:`String<class_String>` method **)** vararg |
  28. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  29. | :ref:`Variant<class_Variant>` | :ref:`call_deferred<class_Object_method_call_deferred>` **(** :ref:`String<class_String>` method **)** vararg |
  30. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  31. | :ref:`Variant<class_Variant>` | :ref:`callv<class_Object_method_callv>` **(** :ref:`String<class_String>` method, :ref:`Array<class_Array>` arg_array **)** |
  32. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  33. | :ref:`bool<class_bool>` | :ref:`can_translate_messages<class_Object_method_can_translate_messages>` **(** **)** const |
  34. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  35. | :ref:`Error<enum_@GlobalScope_Error>` | :ref:`connect<class_Object_method_connect>` **(** :ref:`String<class_String>` signal, :ref:`Object<class_Object>` target, :ref:`String<class_String>` method, :ref:`Array<class_Array>` binds=[ ], :ref:`int<class_int>` flags=0 **)** |
  36. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  37. | void | :ref:`disconnect<class_Object_method_disconnect>` **(** :ref:`String<class_String>` signal, :ref:`Object<class_Object>` target, :ref:`String<class_String>` method **)** |
  38. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  39. | :ref:`Variant<class_Variant>` | :ref:`emit_signal<class_Object_method_emit_signal>` **(** :ref:`String<class_String>` signal **)** vararg |
  40. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  41. | void | :ref:`free<class_Object_method_free>` **(** **)** |
  42. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  43. | :ref:`Variant<class_Variant>` | :ref:`get<class_Object_method_get>` **(** :ref:`String<class_String>` property **)** const |
  44. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  45. | :ref:`String<class_String>` | :ref:`get_class<class_Object_method_get_class>` **(** **)** const |
  46. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  47. | :ref:`Array<class_Array>` | :ref:`get_incoming_connections<class_Object_method_get_incoming_connections>` **(** **)** const |
  48. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  49. | :ref:`Variant<class_Variant>` | :ref:`get_indexed<class_Object_method_get_indexed>` **(** :ref:`NodePath<class_NodePath>` property **)** const |
  50. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  51. | :ref:`int<class_int>` | :ref:`get_instance_id<class_Object_method_get_instance_id>` **(** **)** const |
  52. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  53. | :ref:`Variant<class_Variant>` | :ref:`get_meta<class_Object_method_get_meta>` **(** :ref:`String<class_String>` name **)** const |
  54. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  55. | :ref:`PoolStringArray<class_PoolStringArray>` | :ref:`get_meta_list<class_Object_method_get_meta_list>` **(** **)** const |
  56. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  57. | :ref:`Array<class_Array>` | :ref:`get_method_list<class_Object_method_get_method_list>` **(** **)** const |
  58. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  59. | :ref:`Array<class_Array>` | :ref:`get_property_list<class_Object_method_get_property_list>` **(** **)** const |
  60. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  61. | :ref:`Reference<class_Reference>` | :ref:`get_script<class_Object_method_get_script>` **(** **)** const |
  62. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  63. | :ref:`Array<class_Array>` | :ref:`get_signal_connection_list<class_Object_method_get_signal_connection_list>` **(** :ref:`String<class_String>` signal **)** const |
  64. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  65. | :ref:`Array<class_Array>` | :ref:`get_signal_list<class_Object_method_get_signal_list>` **(** **)** const |
  66. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  67. | :ref:`bool<class_bool>` | :ref:`has_meta<class_Object_method_has_meta>` **(** :ref:`String<class_String>` name **)** const |
  68. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  69. | :ref:`bool<class_bool>` | :ref:`has_method<class_Object_method_has_method>` **(** :ref:`String<class_String>` method **)** const |
  70. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  71. | :ref:`bool<class_bool>` | :ref:`has_user_signal<class_Object_method_has_user_signal>` **(** :ref:`String<class_String>` signal **)** const |
  72. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  73. | :ref:`bool<class_bool>` | :ref:`is_blocking_signals<class_Object_method_is_blocking_signals>` **(** **)** const |
  74. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  75. | :ref:`bool<class_bool>` | :ref:`is_class<class_Object_method_is_class>` **(** :ref:`String<class_String>` type **)** const |
  76. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  77. | :ref:`bool<class_bool>` | :ref:`is_connected<class_Object_method_is_connected>` **(** :ref:`String<class_String>` signal, :ref:`Object<class_Object>` target, :ref:`String<class_String>` method **)** const |
  78. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  79. | :ref:`bool<class_bool>` | :ref:`is_queued_for_deletion<class_Object_method_is_queued_for_deletion>` **(** **)** const |
  80. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  81. | void | :ref:`notification<class_Object_method_notification>` **(** :ref:`int<class_int>` what, :ref:`bool<class_bool>` reversed=false **)** |
  82. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  83. | void | :ref:`property_list_changed_notify<class_Object_method_property_list_changed_notify>` **(** **)** |
  84. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  85. | void | :ref:`set<class_Object_method_set>` **(** :ref:`String<class_String>` property, :ref:`Variant<class_Variant>` value **)** |
  86. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  87. | void | :ref:`set_block_signals<class_Object_method_set_block_signals>` **(** :ref:`bool<class_bool>` enable **)** |
  88. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  89. | void | :ref:`set_deferred<class_Object_method_set_deferred>` **(** :ref:`String<class_String>` property, :ref:`Variant<class_Variant>` value **)** |
  90. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  91. | void | :ref:`set_indexed<class_Object_method_set_indexed>` **(** :ref:`NodePath<class_NodePath>` property, :ref:`Variant<class_Variant>` value **)** |
  92. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  93. | void | :ref:`set_message_translation<class_Object_method_set_message_translation>` **(** :ref:`bool<class_bool>` enable **)** |
  94. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  95. | void | :ref:`set_meta<class_Object_method_set_meta>` **(** :ref:`String<class_String>` name, :ref:`Variant<class_Variant>` value **)** |
  96. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  97. | void | :ref:`set_script<class_Object_method_set_script>` **(** :ref:`Reference<class_Reference>` script **)** |
  98. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  99. | :ref:`String<class_String>` | :ref:`tr<class_Object_method_tr>` **(** :ref:`String<class_String>` message **)** const |
  100. +-----------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  101. Signals
  102. -------
  103. .. _class_Object_signal_script_changed:
  104. - **script_changed** **(** **)**
  105. Emitted whenever the script of the Object is changed.
  106. Enumerations
  107. ------------
  108. .. _enum_Object_ConnectFlags:
  109. .. _class_Object_constant_CONNECT_DEFERRED:
  110. .. _class_Object_constant_CONNECT_PERSIST:
  111. .. _class_Object_constant_CONNECT_ONESHOT:
  112. .. _class_Object_constant_CONNECT_REFERENCE_COUNTED:
  113. enum **ConnectFlags**:
  114. - **CONNECT_DEFERRED** = **1** --- Connect a signal in deferred mode. This way, signal emissions are stored in a queue, then set on idle time.
  115. - **CONNECT_PERSIST** = **2** --- Persisting connections are saved when the object is serialized to file.
  116. - **CONNECT_ONESHOT** = **4** --- One shot connections disconnect themselves after emission.
  117. - **CONNECT_REFERENCE_COUNTED** = **8**
  118. Constants
  119. ---------
  120. .. _class_Object_constant_NOTIFICATION_POSTINITIALIZE:
  121. .. _class_Object_constant_NOTIFICATION_PREDELETE:
  122. - **NOTIFICATION_POSTINITIALIZE** = **0** --- Called right when the object is initialized. Not available in script.
  123. - **NOTIFICATION_PREDELETE** = **1** --- Called before the object is about to be deleted.
  124. Description
  125. -----------
  126. Base class for all non built-in types. Everything which is not a built-in type starts the inheritance chain from this class.
  127. Objects can be constructed from scripting languages, using ``Object.new()`` in GDScript, ``new Object`` in C#, or the "Construct Object" node in VisualScript.
  128. Objects do not manage memory, if inheriting from one the object will most likely have to be deleted manually (call the :ref:`free<class_Object_method_free>` function from the script or delete from C++).
  129. Some derivatives add memory management, such as :ref:`Reference<class_Reference>` (which keeps a reference count and deletes itself automatically when no longer referenced) and :ref:`Node<class_Node>`, which deletes the children tree when deleted.
  130. Objects export properties, which are mainly useful for storage and editing, but not really so much in programming. Properties are exported in :ref:`_get_property_list<class_Object_method__get_property_list>` and handled in :ref:`_get<class_Object_method__get>` and :ref:`_set<class_Object_method__set>`. However, scripting languages and C++ have simpler means to export them.
  131. Objects also receive notifications (:ref:`_notification<class_Object_method__notification>`). Notifications are a simple way to notify the object about simple events, so they can all be handled together.
  132. Method Descriptions
  133. -------------------
  134. .. _class_Object_method__get:
  135. - :ref:`Variant<class_Variant>` **_get** **(** :ref:`String<class_String>` property **)** virtual
  136. Returns the given property. Returns ``null`` if the ``property`` does not exist.
  137. .. _class_Object_method__get_property_list:
  138. - :ref:`Array<class_Array>` **_get_property_list** **(** **)** virtual
  139. Returns the object's property list as an :ref:`Array<class_Array>` of dictionaries. Dictionaries must contain: name:String, type:int (see TYPE\_\* enum in :ref:`@GlobalScope<class_@GlobalScope>`) and optionally: hint:int (see PROPERTY_HINT\_\* in :ref:`@GlobalScope<class_@GlobalScope>`), hint_string:String, usage:int (see PROPERTY_USAGE\_\* in :ref:`@GlobalScope<class_@GlobalScope>`).
  140. .. _class_Object_method__init:
  141. - void **_init** **(** **)** virtual
  142. The virtual method called upon initialization.
  143. .. _class_Object_method__notification:
  144. - void **_notification** **(** :ref:`int<class_int>` what **)** virtual
  145. Notify the object internally using an ID.
  146. .. _class_Object_method__set:
  147. - :ref:`bool<class_bool>` **_set** **(** :ref:`String<class_String>` property, :ref:`Variant<class_Variant>` value **)** virtual
  148. Sets a property. Returns ``true`` if the ``property`` exists.
  149. .. _class_Object_method_add_user_signal:
  150. - void **add_user_signal** **(** :ref:`String<class_String>` signal, :ref:`Array<class_Array>` arguments=[ ] **)**
  151. Adds a user-defined ``signal``. Arguments are optional, but can be added as an :ref:`Array<class_Array>` of dictionaries, each containing "name" and "type" (from :ref:`@GlobalScope<class_@GlobalScope>` TYPE\_\*).
  152. .. _class_Object_method_call:
  153. - :ref:`Variant<class_Variant>` **call** **(** :ref:`String<class_String>` method **)** vararg
  154. Calls the ``method`` on the object and returns a result. Pass parameters as a comma separated list.
  155. .. _class_Object_method_call_deferred:
  156. - :ref:`Variant<class_Variant>` **call_deferred** **(** :ref:`String<class_String>` method **)** vararg
  157. Calls the ``method`` on the object during idle time and returns a result. Pass parameters as a comma separated list.
  158. .. _class_Object_method_callv:
  159. - :ref:`Variant<class_Variant>` **callv** **(** :ref:`String<class_String>` method, :ref:`Array<class_Array>` arg_array **)**
  160. Calls the ``method`` on the object and returns a result. Pass parameters as an :ref:`Array<class_Array>`.
  161. .. _class_Object_method_can_translate_messages:
  162. - :ref:`bool<class_bool>` **can_translate_messages** **(** **)** const
  163. Returns ``true`` if the object can translate strings.
  164. .. _class_Object_method_connect:
  165. - :ref:`Error<enum_@GlobalScope_Error>` **connect** **(** :ref:`String<class_String>` signal, :ref:`Object<class_Object>` target, :ref:`String<class_String>` method, :ref:`Array<class_Array>` binds=[ ], :ref:`int<class_int>` flags=0 **)**
  166. Connects a ``signal`` to a ``method`` on a ``target`` object. Pass optional ``binds`` to the call. Use ``flags`` to set deferred or one shot connections. See ``CONNECT_*`` constants. A ``signal`` can only be connected once to a ``method``. It will throw an error if already connected. To avoid this, first use :ref:`is_connected<class_Object_method_is_connected>` to check for existing connections.
  167. .. _class_Object_method_disconnect:
  168. - void **disconnect** **(** :ref:`String<class_String>` signal, :ref:`Object<class_Object>` target, :ref:`String<class_String>` method **)**
  169. Disconnects a ``signal`` from a ``method`` on the given ``target``.
  170. .. _class_Object_method_emit_signal:
  171. - :ref:`Variant<class_Variant>` **emit_signal** **(** :ref:`String<class_String>` signal **)** vararg
  172. Emits the given ``signal``.
  173. .. _class_Object_method_free:
  174. - void **free** **(** **)**
  175. Deletes the object from memory.
  176. .. _class_Object_method_get:
  177. - :ref:`Variant<class_Variant>` **get** **(** :ref:`String<class_String>` property **)** const
  178. Returns a :ref:`Variant<class_Variant>` for a ``property``.
  179. .. _class_Object_method_get_class:
  180. - :ref:`String<class_String>` **get_class** **(** **)** const
  181. Returns the object's class as a :ref:`String<class_String>`.
  182. .. _class_Object_method_get_incoming_connections:
  183. - :ref:`Array<class_Array>` **get_incoming_connections** **(** **)** const
  184. Returns an :ref:`Array<class_Array>` of dictionaries with information about signals that are connected to the object.
  185. Inside each :ref:`Dictionary<class_Dictionary>` there are 3 fields:
  186. - "source" is a reference to signal emitter.
  187. - "signal_name" is name of connected signal.
  188. - "method_name" is a name of method to which signal is connected.
  189. .. _class_Object_method_get_indexed:
  190. - :ref:`Variant<class_Variant>` **get_indexed** **(** :ref:`NodePath<class_NodePath>` property **)** const
  191. Get indexed object property by String.
  192. Property indices get accessed with colon separation, for example: ``position:x``
  193. .. _class_Object_method_get_instance_id:
  194. - :ref:`int<class_int>` **get_instance_id** **(** **)** const
  195. Returns the object's unique instance ID.
  196. .. _class_Object_method_get_meta:
  197. - :ref:`Variant<class_Variant>` **get_meta** **(** :ref:`String<class_String>` name **)** const
  198. Returns the object's metadata for the given ``name``.
  199. .. _class_Object_method_get_meta_list:
  200. - :ref:`PoolStringArray<class_PoolStringArray>` **get_meta_list** **(** **)** const
  201. Returns the object's metadata as a :ref:`PoolStringArray<class_PoolStringArray>`.
  202. .. _class_Object_method_get_method_list:
  203. - :ref:`Array<class_Array>` **get_method_list** **(** **)** const
  204. Returns the object's methods and their signatures as an :ref:`Array<class_Array>`.
  205. .. _class_Object_method_get_property_list:
  206. - :ref:`Array<class_Array>` **get_property_list** **(** **)** const
  207. Returns the list of properties as an :ref:`Array<class_Array>` of dictionaries. Dictionaries contain: name:String, type:int (see TYPE\_\* enum in :ref:`@GlobalScope<class_@GlobalScope>`) and optionally: hint:int (see PROPERTY_HINT\_\* in :ref:`@GlobalScope<class_@GlobalScope>`), hint_string:String, usage:int (see PROPERTY_USAGE\_\* in :ref:`@GlobalScope<class_@GlobalScope>`).
  208. .. _class_Object_method_get_script:
  209. - :ref:`Reference<class_Reference>` **get_script** **(** **)** const
  210. Returns the object's :ref:`Script<class_Script>` or ``null`` if one doesn't exist.
  211. .. _class_Object_method_get_signal_connection_list:
  212. - :ref:`Array<class_Array>` **get_signal_connection_list** **(** :ref:`String<class_String>` signal **)** const
  213. Returns an :ref:`Array<class_Array>` of connections for the given ``signal``.
  214. .. _class_Object_method_get_signal_list:
  215. - :ref:`Array<class_Array>` **get_signal_list** **(** **)** const
  216. Returns the list of signals as an :ref:`Array<class_Array>` of dictionaries.
  217. .. _class_Object_method_has_meta:
  218. - :ref:`bool<class_bool>` **has_meta** **(** :ref:`String<class_String>` name **)** const
  219. Returns ``true`` if a metadata is found with the given ``name``.
  220. .. _class_Object_method_has_method:
  221. - :ref:`bool<class_bool>` **has_method** **(** :ref:`String<class_String>` method **)** const
  222. Returns ``true`` if the object contains the given ``method``.
  223. .. _class_Object_method_has_user_signal:
  224. - :ref:`bool<class_bool>` **has_user_signal** **(** :ref:`String<class_String>` signal **)** const
  225. Returns ``true`` if the given user-defined ``signal`` exists.
  226. .. _class_Object_method_is_blocking_signals:
  227. - :ref:`bool<class_bool>` **is_blocking_signals** **(** **)** const
  228. Returns ``true`` if signal emission blocking is enabled.
  229. .. _class_Object_method_is_class:
  230. - :ref:`bool<class_bool>` **is_class** **(** :ref:`String<class_String>` type **)** const
  231. Returns ``true`` if the object inherits from the given ``type``.
  232. .. _class_Object_method_is_connected:
  233. - :ref:`bool<class_bool>` **is_connected** **(** :ref:`String<class_String>` signal, :ref:`Object<class_Object>` target, :ref:`String<class_String>` method **)** const
  234. Returns ``true`` if a connection exists for a given ``signal``, ``target``, and ``method``.
  235. .. _class_Object_method_is_queued_for_deletion:
  236. - :ref:`bool<class_bool>` **is_queued_for_deletion** **(** **)** const
  237. Returns ``true`` if the ``queue_free`` method was called for the object.
  238. .. _class_Object_method_notification:
  239. - void **notification** **(** :ref:`int<class_int>` what, :ref:`bool<class_bool>` reversed=false **)**
  240. Notify the object of something.
  241. .. _class_Object_method_property_list_changed_notify:
  242. - void **property_list_changed_notify** **(** **)**
  243. .. _class_Object_method_set:
  244. - void **set** **(** :ref:`String<class_String>` property, :ref:`Variant<class_Variant>` value **)**
  245. Set property into the object.
  246. .. _class_Object_method_set_block_signals:
  247. - void **set_block_signals** **(** :ref:`bool<class_bool>` enable **)**
  248. If set to true, signal emission is blocked.
  249. .. _class_Object_method_set_deferred:
  250. - void **set_deferred** **(** :ref:`String<class_String>` property, :ref:`Variant<class_Variant>` value **)**
  251. .. _class_Object_method_set_indexed:
  252. - void **set_indexed** **(** :ref:`NodePath<class_NodePath>` property, :ref:`Variant<class_Variant>` value **)**
  253. .. _class_Object_method_set_message_translation:
  254. - void **set_message_translation** **(** :ref:`bool<class_bool>` enable **)**
  255. Define whether the object can translate strings (with calls to :ref:`tr<class_Object_method_tr>`). Default is true.
  256. .. _class_Object_method_set_meta:
  257. - void **set_meta** **(** :ref:`String<class_String>` name, :ref:`Variant<class_Variant>` value **)**
  258. Set a metadata into the object. Metadata is serialized. Metadata can be *anything*.
  259. .. _class_Object_method_set_script:
  260. - void **set_script** **(** :ref:`Reference<class_Reference>` script **)**
  261. Set a script into the object, scripts extend the object functionality.
  262. .. _class_Object_method_tr:
  263. - :ref:`String<class_String>` **tr** **(** :ref:`String<class_String>` message **)** const
  264. Translate a message. Only works if message translation is enabled (which it is by default). See :ref:`set_message_translation<class_Object_method_set_message_translation>`.