class_scripteditor.rst 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233
  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/4.3/doc/tools/make_rst.py.
  5. .. XML source: https://github.com/godotengine/godot/tree/4.3/doc/classes/ScriptEditor.xml.
  6. .. _class_ScriptEditor:
  7. ScriptEditor
  8. ============
  9. **Inherits:** :ref:`PanelContainer<class_PanelContainer>` **<** :ref:`Container<class_Container>` **<** :ref:`Control<class_Control>` **<** :ref:`CanvasItem<class_CanvasItem>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
  10. Godot editor's script editor.
  11. .. rst-class:: classref-introduction-group
  12. Description
  13. -----------
  14. Godot editor's script editor.
  15. \ **Note:** This class shouldn't be instantiated directly. Instead, access the singleton using :ref:`EditorInterface.get_script_editor<class_EditorInterface_method_get_script_editor>`.
  16. .. rst-class:: classref-reftable-group
  17. Methods
  18. -------
  19. .. table::
  20. :widths: auto
  21. +------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  22. | :ref:`ScriptEditorBase<class_ScriptEditorBase>` | :ref:`get_current_editor<class_ScriptEditor_method_get_current_editor>`\ (\ ) |const| |
  23. +------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  24. | :ref:`Script<class_Script>` | :ref:`get_current_script<class_ScriptEditor_method_get_current_script>`\ (\ ) |
  25. +------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  26. | :ref:`Array<class_Array>`\[:ref:`ScriptEditorBase<class_ScriptEditorBase>`\] | :ref:`get_open_script_editors<class_ScriptEditor_method_get_open_script_editors>`\ (\ ) |const| |
  27. +------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  28. | :ref:`Array<class_Array>`\[:ref:`Script<class_Script>`\] | :ref:`get_open_scripts<class_ScriptEditor_method_get_open_scripts>`\ (\ ) |const| |
  29. +------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  30. | |void| | :ref:`goto_help<class_ScriptEditor_method_goto_help>`\ (\ topic\: :ref:`String<class_String>`\ ) |
  31. +------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  32. | |void| | :ref:`goto_line<class_ScriptEditor_method_goto_line>`\ (\ line_number\: :ref:`int<class_int>`\ ) |
  33. +------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  34. | |void| | :ref:`open_script_create_dialog<class_ScriptEditor_method_open_script_create_dialog>`\ (\ base_name\: :ref:`String<class_String>`, base_path\: :ref:`String<class_String>`\ ) |
  35. +------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  36. | |void| | :ref:`register_syntax_highlighter<class_ScriptEditor_method_register_syntax_highlighter>`\ (\ syntax_highlighter\: :ref:`EditorSyntaxHighlighter<class_EditorSyntaxHighlighter>`\ ) |
  37. +------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  38. | |void| | :ref:`unregister_syntax_highlighter<class_ScriptEditor_method_unregister_syntax_highlighter>`\ (\ syntax_highlighter\: :ref:`EditorSyntaxHighlighter<class_EditorSyntaxHighlighter>`\ ) |
  39. +------------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  40. .. rst-class:: classref-section-separator
  41. ----
  42. .. rst-class:: classref-descriptions-group
  43. Signals
  44. -------
  45. .. _class_ScriptEditor_signal_editor_script_changed:
  46. .. rst-class:: classref-signal
  47. **editor_script_changed**\ (\ script\: :ref:`Script<class_Script>`\ ) :ref:`🔗<class_ScriptEditor_signal_editor_script_changed>`
  48. Emitted when user changed active script. Argument is a freshly activated :ref:`Script<class_Script>`.
  49. .. rst-class:: classref-item-separator
  50. ----
  51. .. _class_ScriptEditor_signal_script_close:
  52. .. rst-class:: classref-signal
  53. **script_close**\ (\ script\: :ref:`Script<class_Script>`\ ) :ref:`🔗<class_ScriptEditor_signal_script_close>`
  54. Emitted when editor is about to close the active script. Argument is a :ref:`Script<class_Script>` that is going to be closed.
  55. .. rst-class:: classref-section-separator
  56. ----
  57. .. rst-class:: classref-descriptions-group
  58. Method Descriptions
  59. -------------------
  60. .. _class_ScriptEditor_method_get_current_editor:
  61. .. rst-class:: classref-method
  62. :ref:`ScriptEditorBase<class_ScriptEditorBase>` **get_current_editor**\ (\ ) |const| :ref:`🔗<class_ScriptEditor_method_get_current_editor>`
  63. Returns the :ref:`ScriptEditorBase<class_ScriptEditorBase>` object that the user is currently editing.
  64. .. rst-class:: classref-item-separator
  65. ----
  66. .. _class_ScriptEditor_method_get_current_script:
  67. .. rst-class:: classref-method
  68. :ref:`Script<class_Script>` **get_current_script**\ (\ ) :ref:`🔗<class_ScriptEditor_method_get_current_script>`
  69. Returns a :ref:`Script<class_Script>` that is currently active in editor.
  70. .. rst-class:: classref-item-separator
  71. ----
  72. .. _class_ScriptEditor_method_get_open_script_editors:
  73. .. rst-class:: classref-method
  74. :ref:`Array<class_Array>`\[:ref:`ScriptEditorBase<class_ScriptEditorBase>`\] **get_open_script_editors**\ (\ ) |const| :ref:`🔗<class_ScriptEditor_method_get_open_script_editors>`
  75. Returns an array with all :ref:`ScriptEditorBase<class_ScriptEditorBase>` objects which are currently open in editor.
  76. .. rst-class:: classref-item-separator
  77. ----
  78. .. _class_ScriptEditor_method_get_open_scripts:
  79. .. rst-class:: classref-method
  80. :ref:`Array<class_Array>`\[:ref:`Script<class_Script>`\] **get_open_scripts**\ (\ ) |const| :ref:`🔗<class_ScriptEditor_method_get_open_scripts>`
  81. Returns an array with all :ref:`Script<class_Script>` objects which are currently open in editor.
  82. .. rst-class:: classref-item-separator
  83. ----
  84. .. _class_ScriptEditor_method_goto_help:
  85. .. rst-class:: classref-method
  86. |void| **goto_help**\ (\ topic\: :ref:`String<class_String>`\ ) :ref:`🔗<class_ScriptEditor_method_goto_help>`
  87. Opens help for the given topic. The ``topic`` is an encoded string that controls which class, method, constant, signal, annotation, property, or theme item should be focused.
  88. The supported ``topic`` formats include ``class_name:class``, ``class_method:class:method``, ``class_constant:class:constant``, ``class_signal:class:signal``, ``class_annotation:class:@annotation``, ``class_property:class:property``, and ``class_theme_item:class:item``, where ``class`` is the class name, ``method`` is the method name, ``constant`` is the constant name, ``signal`` is the signal name, ``annotation`` is the annotation name, ``property`` is the property name, and ``item`` is the theme item.
  89. \ **Examples:**\
  90. ::
  91. # Shows help for the Node class.
  92. class_name:Node
  93. # Shows help for the global min function.
  94. # Global objects are accessible in the `@GlobalScope` namespace, shown here.
  95. class_method:@GlobalScope:min
  96. # Shows help for get_viewport in the Node class.
  97. class_method:Node:get_viewport
  98. # Shows help for the Input constant MOUSE_BUTTON_MIDDLE.
  99. class_constant:Input:MOUSE_BUTTON_MIDDLE
  100. # Shows help for the BaseButton signal pressed.
  101. class_signal:BaseButton:pressed
  102. # Shows help for the CanvasItem property visible.
  103. class_property:CanvasItem:visible
  104. # Shows help for the GDScript annotation export.
  105. # Annotations should be prefixed with the `@` symbol in the descriptor, as shown here.
  106. class_annotation:@GDScript:@export
  107. # Shows help for the GraphNode theme item named panel_selected.
  108. class_theme_item:GraphNode:panel_selected
  109. .. rst-class:: classref-item-separator
  110. ----
  111. .. _class_ScriptEditor_method_goto_line:
  112. .. rst-class:: classref-method
  113. |void| **goto_line**\ (\ line_number\: :ref:`int<class_int>`\ ) :ref:`🔗<class_ScriptEditor_method_goto_line>`
  114. Goes to the specified line in the current script.
  115. .. rst-class:: classref-item-separator
  116. ----
  117. .. _class_ScriptEditor_method_open_script_create_dialog:
  118. .. rst-class:: classref-method
  119. |void| **open_script_create_dialog**\ (\ base_name\: :ref:`String<class_String>`, base_path\: :ref:`String<class_String>`\ ) :ref:`🔗<class_ScriptEditor_method_open_script_create_dialog>`
  120. Opens the script create dialog. The script will extend ``base_name``. The file extension can be omitted from ``base_path``. It will be added based on the selected scripting language.
  121. .. rst-class:: classref-item-separator
  122. ----
  123. .. _class_ScriptEditor_method_register_syntax_highlighter:
  124. .. rst-class:: classref-method
  125. |void| **register_syntax_highlighter**\ (\ syntax_highlighter\: :ref:`EditorSyntaxHighlighter<class_EditorSyntaxHighlighter>`\ ) :ref:`🔗<class_ScriptEditor_method_register_syntax_highlighter>`
  126. Registers the :ref:`EditorSyntaxHighlighter<class_EditorSyntaxHighlighter>` to the editor, the :ref:`EditorSyntaxHighlighter<class_EditorSyntaxHighlighter>` will be available on all open scripts.
  127. \ **Note:** Does not apply to scripts that are already opened.
  128. .. rst-class:: classref-item-separator
  129. ----
  130. .. _class_ScriptEditor_method_unregister_syntax_highlighter:
  131. .. rst-class:: classref-method
  132. |void| **unregister_syntax_highlighter**\ (\ syntax_highlighter\: :ref:`EditorSyntaxHighlighter<class_EditorSyntaxHighlighter>`\ ) :ref:`🔗<class_ScriptEditor_method_unregister_syntax_highlighter>`
  133. Unregisters the :ref:`EditorSyntaxHighlighter<class_EditorSyntaxHighlighter>` from the editor.
  134. \ **Note:** The :ref:`EditorSyntaxHighlighter<class_EditorSyntaxHighlighter>` will still be applied to scripts that are already opened.
  135. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  136. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  137. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  138. .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
  139. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
  140. .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`
  141. .. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)`
  142. .. |void| replace:: :abbr:`void (No return value.)`