EditorInterface

package
v0.0.0-...-59761c8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 7, 2025 License: MIT Imports: 22 Imported by: 0

Documentation

Overview

Package EditorInterface provides methods for working with EditorInterface object instances.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Advanced

func Advanced() class

Advanced exposes a 1:1 low-level instance of the class, undocumented, for those who know what they are doing.

func DistractionFreeMode

func DistractionFreeMode() bool

func EditNode

func EditNode(node [1]gdclass.Node)

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

func EditResource

func EditResource(resource [1]gdclass.Resource)

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

func EditScript

func EditScript(script [1]gdclass.Script)

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.

func GetBaseControl

func GetBaseControl() [1]gdclass.Control

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. [b]Warning:[/b] Removing and freeing this node will render the editor useless and may cause a crash.

func GetCommandPalette

func GetCommandPalette() [1]gdclass.EditorCommandPalette

Returns the editor's [EditorCommandPalette] instance. [b]Warning:[/b] Removing and freeing this node will render a part of the editor useless and may cause a crash.

func GetCurrentDirectory

func GetCurrentDirectory() string

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

func GetCurrentFeatureProfile

func GetCurrentFeatureProfile() string

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 [method EditorFeatureProfile.load_from_file]. [b]Note:[/b] Feature profiles created via the user interface are loaded from the [code]feature_profiles[/code] directory, as a file with the [code].profile[/code] extension. The editor configuration folder can be found by using [method EditorPaths.get_config_dir].

func GetCurrentPath

func GetCurrentPath() string

Returns the current path being viewed in the [FileSystemDock].

func GetEditedSceneRoot

func GetEditedSceneRoot() [1]gdclass.Node

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

func GetEditorMainScreen

func GetEditorMainScreen() [1]gdclass.VBoxContainer

Returns the editor control responsible for main screen plugins and tools. Use it with plugins that implement [method EditorPlugin._has_main_screen]. [b]Note:[/b] This node is a [VBoxContainer], which means that if you add a [Control] child to it, you need to set the child's [member Control.size_flags_vertical] to [constant Control.SIZE_EXPAND_FILL] to make it use the full available space. [b]Warning:[/b] Removing and freeing this node will render a part of the editor useless and may cause a crash.

func GetEditorPaths

func GetEditorPaths() [1]gdclass.EditorPaths

Returns the [EditorPaths] singleton.

func GetEditorScale

func GetEditorScale() Float.X

Returns the actual scale of the editor UI ([code]1.0[/code] being 100% scale). This can be used to adjust position and dimensions of the UI added by plugins. [b]Note:[/b] This value is set via the [code]interface/editor/display_scale[/code] and [code]interface/editor/custom_display_scale[/code] editor settings. Editor must be restarted for changes to be properly applied.

func GetEditorSettings

func GetEditorSettings() [1]gdclass.EditorSettings

Returns the editor's [EditorSettings] instance.

func GetEditorTheme

func GetEditorTheme() [1]gdclass.Theme

Returns the editor's [Theme]. [b]Note:[/b] When creating custom editor UI, prefer accessing theme items directly from your GUI nodes using the [code]get_theme_*[/code] methods.

func GetEditorToaster

func GetEditorToaster() [1]gdclass.EditorToaster

Returns the editor's [EditorToaster].

func GetEditorUndoRedo

func GetEditorUndoRedo() [1]gdclass.EditorUndoRedoManager

Returns the editor's [EditorUndoRedoManager].

func GetEditorViewport2d

func GetEditorViewport2d() [1]gdclass.SubViewport

Returns the 2D editor [SubViewport]. It does not have a camera. Instead, the view transforms are done directly and can be accessed with [member Viewport.global_canvas_transform].

func GetEditorViewport3d

func GetEditorViewport3d() [1]gdclass.SubViewport

Returns the specified 3D editor [SubViewport], from [code]0[/code] to [code]3[/code]. The viewport can be used to access the active editor cameras with [method Viewport.get_camera_3d].

func GetFileSystemDock

func GetFileSystemDock() [1]gdclass.FileSystemDock

Returns the editor's [FileSystemDock] instance. [b]Warning:[/b] Removing and freeing this node will render a part of the editor useless and may cause a crash.

func GetInspector

func GetInspector() [1]gdclass.EditorInspector

Returns the editor's [EditorInspector] instance. [b]Warning:[/b] Removing and freeing this node will render a part of the editor useless and may cause a crash.

func GetOpenScenes

func GetOpenScenes() []string

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

func GetPlayingScene

func GetPlayingScene() string

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

func GetResourceFilesystem

func GetResourceFilesystem() [1]gdclass.EditorFileSystem

Returns the editor's [EditorFileSystem] instance.

func GetResourcePreviewer

func GetResourcePreviewer() [1]gdclass.EditorResourcePreview

Returns the editor's [EditorResourcePreview] instance.

func GetScriptEditor

func GetScriptEditor() [1]gdclass.ScriptEditor

Returns the editor's [ScriptEditor] instance. [b]Warning:[/b] Removing and freeing this node will render a part of the editor useless and may cause a crash.

func GetSelectedPaths

func GetSelectedPaths() []string

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

func GetSelection

func GetSelection() [1]gdclass.EditorSelection

Returns the editor's [EditorSelection] instance.

func InspectObject

func InspectObject(obj Object.Instance)

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

func IsMultiWindowEnabled

func IsMultiWindowEnabled() bool

Returns [code]true[/code] if multiple window support is enabled in the editor. Multiple window support is enabled if [i]all[/i] of these statements are true: - [member EditorSettings.interface/multi_window/enable] is [code]true[/code]. - [member EditorSettings.interface/editor/single_window_mode] is [code]false[/code]. - [member Viewport.gui_embed_subwindows] is [code]false[/code]. This is forced to [code]true[/code] on platforms that don't support multiple windows such as Web, or when the [code]--single-window[/code] [url=$DOCS_URL/tutorials/editor/command_line_tutorial.html]command line argument[/url] is used.

func IsPlayingScene

func IsPlayingScene() bool

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

func IsPluginEnabled

func IsPluginEnabled(plugin string) bool

Returns [code]true[/code] if the specified [param plugin] is enabled. The plugin name is the same as its directory name.

func MakeMeshPreviews

func MakeMeshPreviews(meshes [][1]gdclass.Mesh, preview_size int) [][1]gdclass.Texture2D

Returns mesh previews rendered at the given size as an [Array] of [Texture2D]s.

func MarkSceneAsUnsaved

func MarkSceneAsUnsaved()

Marks the current scene tab as unsaved.

func MovieMakerEnabled

func MovieMakerEnabled() bool

func OpenSceneFromPath

func OpenSceneFromPath(scene_filepath string)

Opens the scene at the given path. If [param set_inherited] is [code]true[/code], creates a new inherited scene.

func PlayCurrentScene

func PlayCurrentScene()

Plays the currently active scene.

func PlayCustomScene

func PlayCustomScene(scene_filepath string)

Plays the scene specified by its filepath.

func PlayMainScene

func PlayMainScene()

Plays the main scene.

func PopupCreateDialog

func PopupCreateDialog(callback func(selected string))

Pops up an editor dialog for creating an object. The [param callback] must take a single argument of type [StringName] which will contain the type name of the selected object or be empty if no item is selected. The [param base_type] specifies the base type of objects to display. For example, if you set this to "Resource", all types derived from [Resource] will display in the create dialog. The [param current_type] will be passed in the search box of the create dialog, and the specified type can be immediately selected when the dialog pops up. If the [param current_type] is not derived from [param base_type], there will be no result of the type in the dialog. The [param dialog_title] allows you to define a custom title for the dialog. This is useful if you want to accurately hint the usage of the dialog. If the [param dialog_title] is an empty string, the dialog will use "Create New 'Base Type'" as the default title. The [param type_blocklist] contains a list of type names, and the types in the blocklist will be hidden from the create dialog. [b]Note:[/b] Trying to list the base type in the [param type_blocklist] will hide all types derived from the base type from the create dialog.

func PopupDialog

func PopupDialog(dialog [1]gdclass.Window)

Pops up the [param dialog] in the editor UI with [method Window.popup_exclusive]. The dialog must have no current parent, otherwise the method fails. See also [method Window.set_unparent_when_invisible].

func PopupDialogCentered

func PopupDialogCentered(dialog [1]gdclass.Window)

Pops up the [param dialog] in the editor UI with [method Window.popup_exclusive_centered]. The dialog must have no current parent, otherwise the method fails. See also [method Window.set_unparent_when_invisible].

func PopupDialogCenteredClamped

func PopupDialogCenteredClamped(dialog [1]gdclass.Window)

Pops up the [param dialog] in the editor UI with [method Window.popup_exclusive_centered_clamped]. The dialog must have no current parent, otherwise the method fails. See also [method Window.set_unparent_when_invisible].

func PopupDialogCenteredRatio

func PopupDialogCenteredRatio(dialog [1]gdclass.Window)

Pops up the [param dialog] in the editor UI with [method Window.popup_exclusive_centered_ratio]. The dialog must have no current parent, otherwise the method fails. See also [method Window.set_unparent_when_invisible].

func PopupMethodSelector

func PopupMethodSelector(obj Object.Instance, callback func(selected string))

Pops up an editor dialog for selecting a method from [param object]. The [param callback] must take a single argument of type [String] which will contain the name of the selected method or be empty if the dialog is canceled. If [param current_value] is provided, the method will be selected automatically in the method list, if it exists.

func PopupNodeSelector

func PopupNodeSelector(callback func(selected string))

Pops up an editor dialog for selecting a [Node] from the edited scene. The [param callback] must take a single argument of type [NodePath]. It is called on the selected [NodePath] or the empty path [code]^""[/code] if the dialog is canceled. If [param valid_types] is provided, the dialog will only show Nodes that match one of the listed Node types. If [param current_value] is provided, the Node will be automatically selected in the tree, if it exists. [b]Example:[/b] Display the node selection dialog as soon as this node is added to the tree for the first time: [codeblock] func _ready():

if Engine.is_editor_hint():
    EditorInterface.popup_node_selector(_on_node_selected, ["Button"])

func _on_node_selected(node_path):

if node_path.is_empty():
    print("node selection canceled")
else:
    print("selected ", node_path)

[/codeblock]

func PopupPropertySelector

func PopupPropertySelector(obj Object.Instance, callback func(selected string))

Pops up an editor dialog for selecting properties from [param object]. The [param callback] must take a single argument of type [NodePath]. It is called on the selected property path (see [method NodePath.get_as_property_path]) or the empty path [code]^""[/code] if the dialog is canceled. If [param type_filter] is provided, the dialog will only show properties that match one of the listed [enum Variant.Type] values. If [param current_value] is provided, the property will be selected automatically in the property list, if it exists. [codeblock] func _ready():

if Engine.is_editor_hint():
    EditorInterface.popup_property_selector(this, _on_property_selected, [TYPE_INT])

func _on_property_selected(property_path):

if property_path.is_empty():
    print("property selection canceled")
else:
    print("selected ", property_path)

[/codeblock]

func PopupQuickOpen

func PopupQuickOpen(callback func(selected string))

Pops up an editor dialog for quick selecting a resource file. The [param callback] must take a single argument of type [String] which will contain the path of the selected resource or be empty if the dialog is canceled. If [param base_types] is provided, the dialog will only show resources that match these types. Only types deriving from [Resource] are supported.

func ReloadSceneFromPath

func ReloadSceneFromPath(scene_filepath string)

Reloads the scene at the given path.

func RestartEditor

func RestartEditor()

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

func SaveAllScenes

func SaveAllScenes()

Saves all opened scenes in the editor.

func SaveScene

func SaveScene() error

Saves the currently active scene. Returns either [constant OK] or [constant ERR_CANT_CREATE].

func SaveSceneAs

func SaveSceneAs(path string)

Saves the currently active scene as a file at [param path].

func SelectFile

func SelectFile(file string)

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

func SetCurrentFeatureProfile

func SetCurrentFeatureProfile(profile_name string)

Selects and activates the specified feature profile with the given [param profile_name]. Set [param profile_name] to an empty string to reset to the default feature profile. A feature profile can be created programmatically using the [EditorFeatureProfile] class. [b]Note:[/b] The feature profile that gets activated must be located in the [code]feature_profiles[/code] directory, as a file with the [code].profile[/code] extension. If a profile could not be found, an error occurs. The editor configuration folder can be found by using [method EditorPaths.get_config_dir].

func SetDistractionFreeMode

func SetDistractionFreeMode(value bool)

func SetMainScreenEditor

func SetMainScreenEditor(name string)

Sets the editor's current main screen to the one specified in [param name]. [param name] must match the title of the tab in question exactly (e.g. [code]2D[/code], [code]3D[/code], [code skip-lint]Script[/code], or [code]AssetLib[/code] for default tabs).

func SetMovieMakerEnabled

func SetMovieMakerEnabled(value bool)

func SetPluginEnabled

func SetPluginEnabled(plugin string, enabled bool)

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

func StopPlayingScene

func StopPlayingScene()

Stops the scene that is currently playing.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL