Up to date

This page is up to date for Godot 4.2. If you still find outdated information, please open an issue.


Inherits: ScrollContainer < Container < Control < CanvasItem < Node < Object

A control used to edit properties of an object.


This is the control that implements property editing in the editor's Settings dialogs, the Inspector dock, etc. To get the EditorInspector used in the editor's Inspector dock, use EditorInterface.get_inspector.

EditorInspector will show properties in the same order as the array returned by Object.get_property_list.

If a property's name is path-like (i.e. if it contains forward slashes), EditorInspector will create nested sections for "directories" along the path. For example, if a property is named highlighting/gdscript/node_path_color, it will be shown as "Node Path Color" inside the "GDScript" section nested inside the "Highlighting" section.

If a property has @GlobalScope.PROPERTY_USAGE_GROUP usage, it will group subsequent properties whose name starts with the property's hint string. The group ends when a property does not start with that hint string or when a new group starts. An empty group name effectively ends the current group. EditorInspector will create a top-level section for each group. For example, if a property with group usage is named Collide With and its hint string is collide_with_, a subsequent collide_with_area property will be shown as "Area" inside the "Collide With" section. There is also a special case: when the hint string contains the name of a property, that property is grouped too. This is mainly to help grouping properties like font, font_color and font_size (using the hint string font_).

If a property has @GlobalScope.PROPERTY_USAGE_SUBGROUP usage, a subgroup will be created in the same way as a group, and a second-level section will be created for each subgroup.

Note: Unlike sections created from path-like property names, EditorInspector won't capitalize the name for sections created from groups. So properties with group usage usually use capitalized names instead of snake_cased names.




0 (overrides ScrollContainer)



get_edited_object ( )


get_selected_path ( ) const


edited_object_changed ( )

Emitted when the object being edited by the inspector has changed.

object_id_selected ( int id )

Emitted when the Edit button of an Object has been pressed in the inspector. This is mainly used in the remote scene tree Inspector.

property_deleted ( String property )

Emitted when a property is removed from the inspector.

property_edited ( String property )

Emitted when a property is edited in the inspector.

property_keyed ( String property, Variant value, bool advance )

Emitted when a property is keyed in the inspector. Properties can be keyed by clicking the "key" icon next to a property when the Animation panel is toggled.

property_selected ( String property )

Emitted when a property is selected in the inspector.

property_toggled ( String property, bool checked )

Emitted when a boolean property is toggled in the inspector.

Note: This signal is never emitted if the internal autoclear property enabled. Since this property is always enabled in the editor inspector, this signal is never emitted by the editor itself.

resource_selected ( Resource resource, String path )

Emitted when a resource is selected in the inspector.

restart_requested ( )

Emitted when a property that requires a restart to be applied is edited in the inspector. This is only used in the Project Settings and Editor Settings.

Method Descriptions

Object get_edited_object ( )

Returns the object currently selected in this inspector.

String get_selected_path ( ) const

Gets the path of the currently selected property.