<?xml version="1.0" encoding="UTF-8" ?>
<class name="EditorInspector" inherits="ScrollContainer" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
<brief_description>
A control used to edit properties of an object.
</brief_description>
<description>
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 [method EditorInterface.get_inspector].
[EditorInspector] will show properties in the same order as the array returned by [method 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 [code]highlighting/gdscript/node_path_color[/code], it will be shown as "Node Path Color" inside the "GDScript" section nested inside the "Highlighting" section.
If a property has [constant 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 [code]Collide With[/code] and its hint string is [code]collide_with_[/code], a subsequent [code]collide_with_area[/code] 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 [code]font[/code], [code]font_color[/code] and [code]font_size[/code] (using the hint string [code]font_[/code]).
If a property has [constant 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.
[b]Note:[/b] 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.
</description>
<tutorials>
</tutorials>
<methods>
<method name="get_edited_object">
<return type="Object" />
<description>
Returns the object currently selected in this inspector.
</description>
</method>
<method name="get_selected_path" qualifiers="const">
<return type="String" />
<description>
Gets the path of the currently selected property.
</description>
</method>
</methods>
<members>
<member name="horizontal_scroll_mode" type="int" setter="set_horizontal_scroll_mode" getter="get_horizontal_scroll_mode" overrides="ScrollContainer" enum="ScrollContainer.ScrollMode" default="0" />
</members>
<signals>
<signal name="edited_object_changed">
<description>
Emitted when the object being edited by the inspector has changed.
</description>
</signal>
<signal name="object_id_selected">
<param index="0" name="id" type="int" />
<description>
Emitted when the Edit button of an [Object] has been pressed in the inspector. This is mainly used in the remote scene tree Inspector.
</description>
</signal>
<signal name="property_deleted">
<param index="0" name="property" type="String" />
<description>
Emitted when a property is removed from the inspector.
</description>
</signal>
<signal name="property_edited">
<param index="0" name="property" type="String" />
<description>
Emitted when a property is edited in the inspector.
</description>
</signal>
<signal name="property_keyed">
<param index="0" name="property" type="String" />
<param index="1" name="value" type="Variant" />
<param index="2" name="advance" type="bool" />
<description>
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.
</description>
</signal>
<signal name="property_selected">
<param index="0" name="property" type="String" />
<description>
Emitted when a property is selected in the inspector.
</description>
</signal>
<signal name="property_toggled">
<param index="0" name="property" type="String" />
<param index="1" name="checked" type="bool" />
<description>
Emitted when a boolean property is toggled in the inspector.
[b]Note:[/b] This signal is never emitted if the internal [code]autoclear[/code] property enabled. Since this property is always enabled in the editor inspector, this signal is never emitted by the editor itself.
</description>
</signal>
<signal name="resource_selected">
<param index="0" name="resource" type="Resource" />
<param index="1" name="path" type="String" />
<description>
Emitted when a resource is selected in the inspector.
</description>
</signal>
<signal name="restart_requested">
<description>
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.
</description>
</signal>
</signals>
</class>