浏览代码

Merge pull request #60164 from timothyqiu/editor-inspector-doc

Improves `EditorInspector` documentation
Rémi Verschelde 3 年之前
父节点
当前提交
2f7edae2b3
共有 2 个文件被更改,包括 9 次插入5 次删除
  1. 2 2
      doc/classes/@GlobalScope.xml
  2. 7 3
      doc/classes/EditorInspector.xml

+ 2 - 2
doc/classes/@GlobalScope.xml

@@ -2546,13 +2546,13 @@
 			The property is a translatable string.
 		</constant>
 		<constant name="PROPERTY_USAGE_GROUP" value="128" enum="PropertyUsageFlags">
-			Used to group properties together in the editor.
+			Used to group properties together in the editor. See [EditorInspector].
 		</constant>
 		<constant name="PROPERTY_USAGE_CATEGORY" value="256" enum="PropertyUsageFlags">
 			Used to categorize properties together in the editor.
 		</constant>
 		<constant name="PROPERTY_USAGE_SUBGROUP" value="512" enum="PropertyUsageFlags">
-			Used to group properties together in the editor in a subgroup (under a group).
+			Used to group properties together in the editor in a subgroup (under a group). See [EditorInspector].
 		</constant>
 		<constant name="PROPERTY_USAGE_NO_INSTANCE_STATE" value="2048" enum="PropertyUsageFlags">
 			The property does not save its state in [PackedScene].

+ 7 - 3
doc/classes/EditorInspector.xml

@@ -1,11 +1,15 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <class name="EditorInspector" inherits="ScrollContainer" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
 	<brief_description>
-		A tab used to edit properties of the selected node.
+		A control used to edit properties of an object.
 	</brief_description>
 	<description>
-		The editor inspector is by default located on the right-hand side of the editor. It's used to edit the properties of the selected node. For example, you can select a node such as the Sprite2D then edit its transform through the inspector tool. The editor inspector is an essential tool in the game development workflow.
-		[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access the singleton using [method EditorInterface.get_inspector].
+		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 @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 [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.
+		If a property has [constant @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.
+		[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>