<?xml version="1.0" encoding="UTF-8" ?>
<class name="ScriptEditor" inherits="PanelContainer" version="4.0">
	<brief_description>
		Godot editor's script editor.
	</brief_description>
	<description>
		[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access the singleton using [method EditorInterface.get_script_editor].
	</description>
	<tutorials>
	</tutorials>
	<methods>
		<method name="can_drop_data_fw" qualifiers="const">
			<return type="bool">
			</return>
			<argument index="0" name="point" type="Vector2">
			</argument>
			<argument index="1" name="data" type="Variant">
			</argument>
			<argument index="2" name="from" type="Control">
			</argument>
			<description>
			</description>
		</method>
		<method name="drop_data_fw">
			<return type="void">
			</return>
			<argument index="0" name="point" type="Vector2">
			</argument>
			<argument index="1" name="data" type="Variant">
			</argument>
			<argument index="2" name="from" type="Control">
			</argument>
			<description>
			</description>
		</method>
		<method name="get_current_editor" qualifiers="const">
			<return type="ScriptEditorBase">
			</return>
			<description>
				Returns the [ScriptEditorBase] object that the user is currently editing.
			</description>
		</method>
		<method name="get_current_script">
			<return type="Script">
			</return>
			<description>
				Returns a [Script] that is currently active in editor.
			</description>
		</method>
		<method name="get_drag_data_fw">
			<return type="Variant">
			</return>
			<argument index="0" name="point" type="Vector2">
			</argument>
			<argument index="1" name="from" type="Control">
			</argument>
			<description>
			</description>
		</method>
		<method name="get_open_script_editors" qualifiers="const">
			<return type="Array">
			</return>
			<description>
				Returns an array with all [ScriptEditorBase] objects which are currently open in editor.
			</description>
		</method>
		<method name="get_open_scripts" qualifiers="const">
			<return type="Array">
			</return>
			<description>
				Returns an array with all [Script] objects which are currently open in editor.
			</description>
		</method>
		<method name="goto_line">
			<return type="void">
			</return>
			<argument index="0" name="line_number" type="int">
			</argument>
			<description>
				Goes to the specified line in the current script.
			</description>
		</method>
		<method name="open_script_create_dialog">
			<return type="void">
			</return>
			<argument index="0" name="base_name" type="String">
			</argument>
			<argument index="1" name="base_path" type="String">
			</argument>
			<description>
				Opens the script create dialog. The script will extend [code]base_name[/code]. The file extension can be omitted from [code]base_path[/code]. It will be added based on the selected scripting language.
			</description>
		</method>
		<method name="register_syntax_highlighter">
			<return type="void">
			</return>
			<argument index="0" name="syntax_highlighter" type="EditorSyntaxHighlighter">
			</argument>
			<description>
				Registers the [EditorSyntaxHighlighter] to the editor, the [EditorSyntaxHighlighter] will be available on all open scripts.
				[b]Note:[/b] Does not apply to scripts that are already opened.
			</description>
		</method>
		<method name="unregister_syntax_highlighter">
			<return type="void">
			</return>
			<argument index="0" name="syntax_highlighter" type="EditorSyntaxHighlighter">
			</argument>
			<description>
				Unregisters the [EditorSyntaxHighlighter] from the editor.
				[b]Note:[/b] The [EditorSyntaxHighlighter] will still be applied to scripts that are already opened.
			</description>
		</method>
	</methods>
	<signals>
		<signal name="editor_script_changed">
			<argument index="0" name="script" type="Script">
			</argument>
			<description>
				Emitted when user changed active script. Argument is a freshly activated [Script].
			</description>
		</signal>
		<signal name="script_close">
			<argument index="0" name="script" type="Script">
			</argument>
			<description>
				Emitted when editor is about to close the active script. Argument is a [Script] that is going to be closed.
			</description>
		</signal>
	</signals>
	<constants>
	</constants>
</class>