class_graphnode.rst 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273
  1. .. Generated automatically by doc/tools/makerst.py in Godot's source tree.
  2. .. DO NOT EDIT THIS FILE, but the GraphNode.xml source instead.
  3. .. The source is found in doc/classes or modules/<name>/doc_classes.
  4. .. _class_GraphNode:
  5. GraphNode
  6. =========
  7. **Inherits:** :ref:`Container<class_container>` **<** :ref:`Control<class_control>` **<** :ref:`CanvasItem<class_canvasitem>` **<** :ref:`Node<class_node>` **<** :ref:`Object<class_object>`
  8. **Category:** Core
  9. Brief Description
  10. -----------------
  11. A GraphNode is a container with several input and output slots allowing connections between GraphNodes. Slots can have different, incompatible types.
  12. Member Functions
  13. ----------------
  14. +--------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  15. | void | :ref:`clear_all_slots<class_GraphNode_clear_all_slots>` **(** **)** |
  16. +--------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  17. | void | :ref:`clear_slot<class_GraphNode_clear_slot>` **(** :ref:`int<class_int>` idx **)** |
  18. +--------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  19. | :ref:`Color<class_color>` | :ref:`get_connection_input_color<class_GraphNode_get_connection_input_color>` **(** :ref:`int<class_int>` idx **)** |
  20. +--------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  21. | :ref:`int<class_int>` | :ref:`get_connection_input_count<class_GraphNode_get_connection_input_count>` **(** **)** |
  22. +--------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  23. | :ref:`Vector2<class_vector2>` | :ref:`get_connection_input_position<class_GraphNode_get_connection_input_position>` **(** :ref:`int<class_int>` idx **)** |
  24. +--------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  25. | :ref:`int<class_int>` | :ref:`get_connection_input_type<class_GraphNode_get_connection_input_type>` **(** :ref:`int<class_int>` idx **)** |
  26. +--------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  27. | :ref:`Color<class_color>` | :ref:`get_connection_output_color<class_GraphNode_get_connection_output_color>` **(** :ref:`int<class_int>` idx **)** |
  28. +--------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  29. | :ref:`int<class_int>` | :ref:`get_connection_output_count<class_GraphNode_get_connection_output_count>` **(** **)** |
  30. +--------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  31. | :ref:`Vector2<class_vector2>` | :ref:`get_connection_output_position<class_GraphNode_get_connection_output_position>` **(** :ref:`int<class_int>` idx **)** |
  32. +--------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  33. | :ref:`int<class_int>` | :ref:`get_connection_output_type<class_GraphNode_get_connection_output_type>` **(** :ref:`int<class_int>` idx **)** |
  34. +--------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  35. | :ref:`Vector2<class_vector2>` | :ref:`get_offset<class_GraphNode_get_offset>` **(** **)** const |
  36. +--------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  37. | :ref:`int<class_int>` | :ref:`get_overlay<class_GraphNode_get_overlay>` **(** **)** const |
  38. +--------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  39. | :ref:`Color<class_color>` | :ref:`get_slot_color_left<class_GraphNode_get_slot_color_left>` **(** :ref:`int<class_int>` idx **)** const |
  40. +--------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  41. | :ref:`Color<class_color>` | :ref:`get_slot_color_right<class_GraphNode_get_slot_color_right>` **(** :ref:`int<class_int>` idx **)** const |
  42. +--------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  43. | :ref:`int<class_int>` | :ref:`get_slot_type_left<class_GraphNode_get_slot_type_left>` **(** :ref:`int<class_int>` idx **)** const |
  44. +--------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  45. | :ref:`int<class_int>` | :ref:`get_slot_type_right<class_GraphNode_get_slot_type_right>` **(** :ref:`int<class_int>` idx **)** const |
  46. +--------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  47. | :ref:`bool<class_bool>` | :ref:`is_comment<class_GraphNode_is_comment>` **(** **)** const |
  48. +--------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  49. | :ref:`bool<class_bool>` | :ref:`is_selected<class_GraphNode_is_selected>` **(** **)** |
  50. +--------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  51. | :ref:`bool<class_bool>` | :ref:`is_slot_enabled_left<class_GraphNode_is_slot_enabled_left>` **(** :ref:`int<class_int>` idx **)** const |
  52. +--------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  53. | :ref:`bool<class_bool>` | :ref:`is_slot_enabled_right<class_GraphNode_is_slot_enabled_right>` **(** :ref:`int<class_int>` idx **)** const |
  54. +--------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  55. | void | :ref:`set_comment<class_GraphNode_set_comment>` **(** :ref:`bool<class_bool>` comment **)** |
  56. +--------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  57. | void | :ref:`set_offset<class_GraphNode_set_offset>` **(** :ref:`Vector2<class_vector2>` offset **)** |
  58. +--------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  59. | void | :ref:`set_overlay<class_GraphNode_set_overlay>` **(** :ref:`int<class_int>` overlay **)** |
  60. +--------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  61. | void | :ref:`set_selected<class_GraphNode_set_selected>` **(** :ref:`bool<class_bool>` selected **)** |
  62. +--------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  63. | void | :ref:`set_slot<class_GraphNode_set_slot>` **(** :ref:`int<class_int>` idx, :ref:`bool<class_bool>` enable_left, :ref:`int<class_int>` type_left, :ref:`Color<class_color>` color_left, :ref:`bool<class_bool>` enable_right, :ref:`int<class_int>` type_right, :ref:`Color<class_color>` color_right, :ref:`Texture<class_texture>` custom_left=null, :ref:`Texture<class_texture>` custom_right=null **)** |
  64. +--------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  65. Signals
  66. -------
  67. .. _class_GraphNode_close_request:
  68. - **close_request** **(** **)**
  69. Signal sent on closing the GraphNode.
  70. .. _class_GraphNode_dragged:
  71. - **dragged** **(** :ref:`Vector2<class_vector2>` from, :ref:`Vector2<class_vector2>` to **)**
  72. Signal sent when the GraphNode is dragged.
  73. .. _class_GraphNode_offset_changed:
  74. - **offset_changed** **(** **)**
  75. Signal sent when the GraphNode is moved.
  76. .. _class_GraphNode_raise_request:
  77. - **raise_request** **(** **)**
  78. Signal sent when the GraphNode is requested to be displayed over other ones. Happens on focusing (clicking into) the GraphNode.
  79. .. _class_GraphNode_resize_request:
  80. - **resize_request** **(** :ref:`Vector2<class_vector2>` new_minsize **)**
  81. Member Variables
  82. ----------------
  83. .. _class_GraphNode_resizable:
  84. - :ref:`bool<class_bool>` **resizable**
  85. .. _class_GraphNode_show_close:
  86. - :ref:`bool<class_bool>` **show_close**
  87. .. _class_GraphNode_title:
  88. - :ref:`String<class_string>` **title**
  89. Numeric Constants
  90. -----------------
  91. - **OVERLAY_DISABLED** = **0**
  92. - **OVERLAY_BREAKPOINT** = **1**
  93. - **OVERLAY_POSITION** = **2**
  94. Description
  95. -----------
  96. A GraphNode is a container defined by a title. It can have 1 or more input and output slots, which can be enabled (shown) or disabled (not shown) and have different (incompatible) types. Colors can also be assigned to slots. A tuple of input and output slots is defined for each GUI element included in the GraphNode. Input and output connections are left and right slots, but only enabled slots are counted as connections.
  97. Member Function Description
  98. ---------------------------
  99. .. _class_GraphNode_clear_all_slots:
  100. - void **clear_all_slots** **(** **)**
  101. Disable all input and output slots of the GraphNode.
  102. .. _class_GraphNode_clear_slot:
  103. - void **clear_slot** **(** :ref:`int<class_int>` idx **)**
  104. Disable input and output slot whose index is 'idx'.
  105. .. _class_GraphNode_get_connection_input_color:
  106. - :ref:`Color<class_color>` **get_connection_input_color** **(** :ref:`int<class_int>` idx **)**
  107. Return the color of the input connection 'idx'.
  108. .. _class_GraphNode_get_connection_input_count:
  109. - :ref:`int<class_int>` **get_connection_input_count** **(** **)**
  110. Return the number of enabled input slots (connections) to the GraphNode.
  111. .. _class_GraphNode_get_connection_input_position:
  112. - :ref:`Vector2<class_vector2>` **get_connection_input_position** **(** :ref:`int<class_int>` idx **)**
  113. Return the position of the input connection 'idx'.
  114. .. _class_GraphNode_get_connection_input_type:
  115. - :ref:`int<class_int>` **get_connection_input_type** **(** :ref:`int<class_int>` idx **)**
  116. Return the type of the input connection 'idx'.
  117. .. _class_GraphNode_get_connection_output_color:
  118. - :ref:`Color<class_color>` **get_connection_output_color** **(** :ref:`int<class_int>` idx **)**
  119. Return the color of the output connection 'idx'.
  120. .. _class_GraphNode_get_connection_output_count:
  121. - :ref:`int<class_int>` **get_connection_output_count** **(** **)**
  122. Return the number of enabled output slots (connections) of the GraphNode.
  123. .. _class_GraphNode_get_connection_output_position:
  124. - :ref:`Vector2<class_vector2>` **get_connection_output_position** **(** :ref:`int<class_int>` idx **)**
  125. Return the position of the output connection 'idx'.
  126. .. _class_GraphNode_get_connection_output_type:
  127. - :ref:`int<class_int>` **get_connection_output_type** **(** :ref:`int<class_int>` idx **)**
  128. Return the type of the output connection 'idx'.
  129. .. _class_GraphNode_get_offset:
  130. - :ref:`Vector2<class_vector2>` **get_offset** **(** **)** const
  131. Return the offset of the GraphNode.
  132. .. _class_GraphNode_get_overlay:
  133. - :ref:`int<class_int>` **get_overlay** **(** **)** const
  134. .. _class_GraphNode_get_slot_color_left:
  135. - :ref:`Color<class_color>` **get_slot_color_left** **(** :ref:`int<class_int>` idx **)** const
  136. Return the color set to 'idx' left (input) slot.
  137. .. _class_GraphNode_get_slot_color_right:
  138. - :ref:`Color<class_color>` **get_slot_color_right** **(** :ref:`int<class_int>` idx **)** const
  139. Return the color set to 'idx' right (output) slot.
  140. .. _class_GraphNode_get_slot_type_left:
  141. - :ref:`int<class_int>` **get_slot_type_left** **(** :ref:`int<class_int>` idx **)** const
  142. Return the (integer) type of left (input) 'idx' slot.
  143. .. _class_GraphNode_get_slot_type_right:
  144. - :ref:`int<class_int>` **get_slot_type_right** **(** :ref:`int<class_int>` idx **)** const
  145. Return the (integer) type of right (output) 'idx' slot.
  146. .. _class_GraphNode_is_comment:
  147. - :ref:`bool<class_bool>` **is_comment** **(** **)** const
  148. .. _class_GraphNode_is_selected:
  149. - :ref:`bool<class_bool>` **is_selected** **(** **)**
  150. .. _class_GraphNode_is_slot_enabled_left:
  151. - :ref:`bool<class_bool>` **is_slot_enabled_left** **(** :ref:`int<class_int>` idx **)** const
  152. Return true if left (input) slot 'idx' is enabled. False otherwise.
  153. .. _class_GraphNode_is_slot_enabled_right:
  154. - :ref:`bool<class_bool>` **is_slot_enabled_right** **(** :ref:`int<class_int>` idx **)** const
  155. Return true if right (output) slot 'idx' is enabled. False otherwise.
  156. .. _class_GraphNode_set_comment:
  157. - void **set_comment** **(** :ref:`bool<class_bool>` comment **)**
  158. .. _class_GraphNode_set_offset:
  159. - void **set_offset** **(** :ref:`Vector2<class_vector2>` offset **)**
  160. Set the offset of the GraphNode.
  161. .. _class_GraphNode_set_overlay:
  162. - void **set_overlay** **(** :ref:`int<class_int>` overlay **)**
  163. .. _class_GraphNode_set_selected:
  164. - void **set_selected** **(** :ref:`bool<class_bool>` selected **)**
  165. .. _class_GraphNode_set_slot:
  166. - void **set_slot** **(** :ref:`int<class_int>` idx, :ref:`bool<class_bool>` enable_left, :ref:`int<class_int>` type_left, :ref:`Color<class_color>` color_left, :ref:`bool<class_bool>` enable_right, :ref:`int<class_int>` type_right, :ref:`Color<class_color>` color_right, :ref:`Texture<class_texture>` custom_left=null, :ref:`Texture<class_texture>` custom_right=null **)**