<?xml version="1.0" encoding="UTF-8" ?>
<class name="EditorScript" inherits="Reference" category="Core" version="3.1">
	<brief_description>
		Base script that can be used to add extension functions to the editor.
	</brief_description>
	<description>
		Scripts extending this class and implementing its [code]_run()[/code] method can be executed from the Script Editor's [code]File -&gt; Run[/code] menu option (or by pressing [code]CTRL+Shift+X[/code]) while the editor is running. This is useful for adding custom in-editor functionality to Godot. For more complex additions, consider using [EditorPlugin]s instead. Note that extending scripts need to have [code]tool mode[/code] enabled.
		Example script:
		[codeblock]
		tool
		extends EditorScript

		func _run():
		    print("Hello from the Godot Editor!")
		[/codeblock]
		Note that the script is run in the Editor context, which means the output is visible in the console window started with the Editor (STDOUT) instead of the usual Godot [i]Output[/i] dock.
	</description>
	<tutorials>
	</tutorials>
	<demos>
	</demos>
	<methods>
		<method name="_run" qualifiers="virtual">
			<return type="void">
			</return>
			<description>
				This method is executed by the Editor when [code]File -&gt; Run[/code] is used.
			</description>
		</method>
		<method name="add_root_node">
			<return type="void">
			</return>
			<argument index="0" name="node" type="Node">
			</argument>
			<description>
				Adds [code]node[/code] as a child of the root node in the editor context.
				WARNING: The implementation of this method is currently disabled.
			</description>
		</method>
		<method name="get_editor_interface">
			<return type="EditorInterface">
			</return>
			<description>
				Returns the [EditorInterface] singleton instance.
			</description>
		</method>
		<method name="get_scene">
			<return type="Node">
			</return>
			<description>
				Returns the Editor's currently active scene.
			</description>
		</method>
	</methods>
	<constants>
	</constants>
</class>
