EditorInterface

Inherits: Object

Godot editor's interface.

Description

EditorInterface gives you control over Godot editor's window. It allows customizing the window, saving and (re-)loading scenes, rendering mesh previews, inspecting and editing resources and objects, and provides access to EditorSettings, EditorFileSystem, EditorResourcePreview, ScriptEditor, the editor viewport, and information about scenes.

Note: This class shouldn't be instantiated directly. Instead, access the singleton directly by its name.

var editor_settings = EditorInterface.get_editor_settings()

Properties

bool

distraction_free_mode

bool

movie_maker_enabled

Methods

void

edit_node ( Node node )

void

edit_resource ( Resource resource )

void

edit_script ( Script script, int line=-1, int column=0, bool grab_focus=true )

Control

get_base_control ( ) const

EditorCommandPalette

get_command_palette ( ) const

String

get_current_directory ( ) const

String

get_current_feature_profile ( ) const

String

get_current_path ( ) const

Node

get_edited_scene_root ( ) const

VBoxContainer

get_editor_main_screen ( ) const

EditorPaths

get_editor_paths ( ) const

float

get_editor_scale ( ) const

EditorSettings

get_editor_settings ( ) const

Theme

get_editor_theme ( ) const

FileSystemDock

get_file_system_dock ( ) const

EditorInspector

get_inspector ( ) const

PackedStringArray

get_open_scenes ( ) const

String

get_playing_scene ( ) const

EditorFileSystem

get_resource_filesystem ( ) const

EditorResourcePreview

get_resource_previewer ( ) const

ScriptEditor

get_script_editor ( ) const

PackedStringArray

get_selected_paths ( ) const

EditorSelection

get_selection ( ) const

void

inspect_object ( Object object, String for_property="", bool inspector_only=false )

bool

is_playing_scene ( ) const

bool

is_plugin_enabled ( String plugin ) const

Texture2D[]

make_mesh_previews ( Mesh[] meshes, int preview_size )

void

mark_scene_as_unsaved ( )

void

open_scene_from_path ( String scene_filepath )

void

play_current_scene ( )

void

play_custom_scene ( String scene_filepath )

void

play_main_scene ( )

void

popup_dialog ( Window dialog, Rect2i rect=Rect2i(0, 0, 0, 0) )

void

popup_dialog_centered ( Window dialog, Vector2i minsize=Vector2i(0, 0) )

void

popup_dialog_centered_clamped ( Window dialog, Vector2i minsize=Vector2i(0, 0), float fallback_ratio=0.75 )

void

popup_dialog_centered_ratio ( Window dialog, float ratio=0.8 )

void

reload_scene_from_path ( String scene_filepath )

void

restart_editor ( bool save=true )

void

save_all_scenes ( )

Error

save_scene ( )

void

save_scene_as ( String path, bool with_preview=true )

void

select_file ( String file )

void

set_current_feature_profile ( String profile_name )

void

set_main_screen_editor ( String name )

void

set_plugin_enabled ( String plugin, bool enabled )

void

stop_playing_scene ( )


Property Descriptions

bool distraction_free_mode

  • void set_distraction_free_mode ( bool value )

  • bool is_distraction_free_mode_enabled ( )

If true, enables distraction-free mode which hides side docks to increase the space available for the main view.


bool movie_maker_enabled

  • void set_movie_maker_enabled ( bool value )

  • bool is_movie_maker_enabled ( )

If true, the Movie Maker mode is enabled in the editor. See MovieWriter for more information.


Method Descriptions

void edit_node ( Node node )

Edits the given Node. The node will be also selected if it's inside the scene tree.


void edit_resource ( Resource resource )

Edits the given Resource. If the resource is a Script you can also edit it with edit_script to specify the line and column position.


void edit_script ( Script script, int line=-1, int column=0, bool grab_focus=true )

Edits the given Script. The line and column on which to open the script can also be specified. The script will be open with the user-configured editor for the script's language which may be an external editor.


Control get_base_control ( ) const

Returns the main container of Godot editor's window. For example, you can use it to retrieve the size of the container and place your controls accordingly.

Warning: Removing and freeing this node will render the editor useless and may cause a crash.


EditorCommandPalette get_command_palette ( ) const

Returns the editor's EditorCommandPalette instance.

Warning: Removing and freeing this node will render a part of the editor useless and may cause a crash.


String get_current_directory ( ) const

Returns the current directory being viewed in the FileSystemDock. If a file is selected, its base directory will be returned using String.get_base_dir instead.


String get_current_feature_profile ( ) const

Returns the name of the currently activated feature profile. If the default profile is currently active, an empty string is returned instead.

In order to get a reference to the EditorFeatureProfile, you must load the feature profile using EditorFeatureProfile.load_from_file.

Note: Feature profiles created via the user interface are loaded from the feature_profiles directory, as a file with the .profile extension. The editor configuration folder can be found by using EditorPaths.get_config_dir.


String get_current_path ( ) const

Returns the current path being viewed in the FileSystemDock.


Node get_edited_scene_root ( ) const

Returns the edited (current) scene's root Node.


VBoxContainer get_editor_main_screen ( ) const

Returns the editor control responsible for main screen plugins and tools. Use it with plugins that implement EditorPlugin._has_main_screen.

Warning: Removing and freeing this node will render a part of the editor useless and may cause a crash.


EditorPaths get_editor_paths ( ) const

Returns the EditorPaths singleton.


float get_editor_scale ( ) const

Returns the actual scale of the editor UI (1.0 being 100% scale). This can be used to adjust position and dimensions of the UI added by plugins.

Note: This value is set via the interface/editor/display_scale and interface/editor/custom_display_scale editor settings. Editor must be restarted for changes to be properly applied.


EditorSettings get_editor_settings ( ) const

Returns the editor's EditorSettings instance.


Theme get_editor_theme ( ) const

Returns the editor's Theme.

Note: When creating custom editor UI, prefer accessing theme items directly from your GUI nodes using the get_theme_* methods.


FileSystemDock get_file_system_dock ( ) const

Returns the editor's FileSystemDock instance.

Warning: Removing and freeing this node will render a part of the editor useless and may cause a crash.


EditorInspector get_inspector ( ) const

Returns the editor's EditorInspector instance.

Warning: Removing and freeing this node will render a part of the editor useless and may cause a crash.


PackedStringArray get_open_scenes ( ) const

Returns an Array with the file paths of the currently opened scenes.


String get_playing_scene ( ) const

Returns the name of the scene that is being played. If no scene is currently being played, returns an empty string.


EditorFileSystem get_resource_filesystem ( ) const

Returns the editor's EditorFileSystem instance.


EditorResourcePreview get_resource_previewer ( ) const

Returns the editor's EditorResourcePreview instance.


ScriptEditor get_script_editor ( ) const

Returns the editor's ScriptEditor instance.

Warning: Removing and freeing this node will render a part of the editor useless and may cause a crash.


PackedStringArray get_selected_paths ( ) const

Returns an array containing the paths of the currently selected files (and directories) in the FileSystemDock.


EditorSelection get_selection ( ) const

Returns the editor's EditorSelection instance.


void inspect_object ( Object object, String for_property="", bool inspector_only=false )

Shows the given property on the given object in the editor's Inspector dock. If inspector_only is true, plugins will not attempt to edit object.


bool is_playing_scene ( ) const

Returns true if a scene is currently being played, false otherwise. Paused scenes are considered as being played.


bool is_plugin_enabled ( String plugin ) const

Returns true if the specified plugin is enabled. The plugin name is the same as its directory name.


Texture2D[] make_mesh_previews ( Mesh[] meshes, int preview_size )

Returns mesh previews rendered at the given size as an Array of Texture2Ds.


void mark_scene_as_unsaved ( )

Marks the current scene tab as unsaved.


void open_scene_from_path ( String scene_filepath )

Opens the scene at the given path.


void play_current_scene ( )

Plays the currently active scene.


void play_custom_scene ( String scene_filepath )

Plays the scene specified by its filepath.


void play_main_scene ( )

Plays the main scene.


void popup_dialog ( Window dialog, Rect2i rect=Rect2i(0, 0, 0, 0) )

Pops up the dialog in the editor UI with Window.popup_exclusive. The dialog must have no current parent, otherwise the method fails.

See also Window.set_unparent_when_invisible.


void popup_dialog_centered ( Window dialog, Vector2i minsize=Vector2i(0, 0) )

Pops up the dialog in the editor UI with Window.popup_exclusive_centered. The dialog must have no current parent, otherwise the method fails.

See also Window.set_unparent_when_invisible.


void popup_dialog_centered_clamped ( Window dialog, Vector2i minsize=Vector2i(0, 0), float fallback_ratio=0.75 )

Pops up the dialog in the editor UI with Window.popup_exclusive_centered_clamped. The dialog must have no current parent, otherwise the method fails.

See also Window.set_unparent_when_invisible.


void popup_dialog_centered_ratio ( Window dialog, float ratio=0.8 )

Pops up the dialog in the editor UI with Window.popup_exclusive_centered_ratio. The dialog must have no current parent, otherwise the method fails.

See also Window.set_unparent_when_invisible.


void reload_scene_from_path ( String scene_filepath )

Reloads the scene at the given path.


void restart_editor ( bool save=true )

Restarts the editor. This closes the editor and then opens the same project. If save is true, the project will be saved before restarting.


void save_all_scenes ( )

Saves all opened scenes in the editor.


Error save_scene ( )

Saves the currently active scene. Returns either @GlobalScope.OK or @GlobalScope.ERR_CANT_CREATE.


void save_scene_as ( String path, bool with_preview=true )

Saves the currently active scene as a file at path.


void select_file ( String file )

Selects the file, with the path provided by file, in the FileSystem dock.


void set_current_feature_profile ( String profile_name )

Selects and activates the specified feature profile with the given profile_name. Set profile_name to an empty string to reset to the default feature profile.

A feature profile can be created programmatically using the EditorFeatureProfile class.

Note: The feature profile that gets activated must be located in the feature_profiles directory, as a file with the .profile extension. If a profile could not be found, an error occurs. The editor configuration folder can be found by using EditorPaths.get_config_dir.


void set_main_screen_editor ( String name )

Sets the editor's current main screen to the one specified in name. name must match the text of the tab in question exactly (2D, 3D, Script, AssetLib).


void set_plugin_enabled ( String plugin, bool enabled )

Sets the enabled status of a plugin. The plugin name is the same as its directory name.


void stop_playing_scene ( )

Stops the scene that is currently playing.