Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
EditorInspector
继承: ScrollContainer < Container < Control < CanvasItem < Node < Object
用于编辑对象属性的控件。
描述
这是为编辑器的“设置”对话框、“检查器”面板等实现属性编辑的控件。要获取编辑器的“检查器”面板中所使用的 EditorInspector,请使用 EditorInterface.get_inspector()。
EditorInspector 展示属性的顺序与 Object.get_property_list() 返回的数组一致。
如果属性的名称为路径形式(即包含正斜杠),EditorInspector 会为该路径上的各个“目录”创建嵌套的部分。例如,如果某个属性名为 highlighting/gdscript/node_path_color
,那么就会显示为“Node Path Color”,位于嵌套在“Highlighting”部分的“GDScript”部分中。
如果属性包含 @GlobalScope.PROPERTY_USAGE_GROUP 用法,就会将其后续属性中,名称以其提示字符串开头的属性合为一组。如果遇到不以该提示字符串开头的属性,或者开始了一个新的分组,那么这个分组就会结束。分组名称为空的效果为结束当前分组。EditorInspector 会为每个分组都创建一个顶层的部分。例如,如果有个包含分组用法的属性名叫 Collide With
,其提示字符串为 collide_with_
,那么后续的 collide_with_area
属性就会以“Area”的名称出现在“Collide With”部分中。另外还有一种特殊情况:提示字符串包含属性名称时,该属性也会被划入该分组。这样做的目的是将类似 font
、font_color
、font_size
的属性分在一起(使用 font_
提示字符串)
如果属性包含 @GlobalScope.PROPERTY_USAGE_SUBGROUP 用法,就会用和分组一样的方法创建子分组,每个子分组都会创建一个二级部分。
注意:与根据路径形式的名称而创建的部分不同,EditorInspector 不会对根据分组创建的部分的名称进行首字母大写。因此,包含分组用法的属性通常使用首字母大写的名称,而不是 snake_case。
属性
draw_focus_border |
|
|
focus_mode |
|
|
follow_focus |
|
|
horizontal_scroll_mode |
|
方法
void |
|
get_selected_path() const |
|
instantiate_property_editor(object: Object, type: Variant.Type, path: String, hint: PropertyHint, hint_text: String, usage: int, wide: bool = false) static |
信号
edited_object_changed() 🔗
当检查器正在编辑的对象发生更改时触发。
在检查器中按下 Object 的“编辑”按钮时发出。这主要用于远程场景树检查器。
property_deleted(property: String) 🔗
当从检查器中移除属性时触发。
property_edited(property: String) 🔗
在检查器中编辑属性时触发。
property_keyed(property: String, value: Variant, advance: bool) 🔗
当属性在检查器中被键入时触发。当动画面板打开时,可通过点击属性旁边的“钥匙”图标为属性添加关键帧。
property_selected(property: String) 🔗
在检查器中选择属性时触发。
property_toggled(property: String, checked: bool) 🔗
在检查器中切换布尔属性时发出。
注意:如果启用了内部 autoclear
属性,则该信号永远不会触发。由于该属性在编辑器检查器中始终处于启用状态,因此编辑器本身绝不会发出该信号。
resource_selected(resource: Resource, path: String) 🔗
在检查器中选择资源时触发。
restart_requested() 🔗
在检查器中编辑需要重启应用的属性时触发。仅在项目设置和编辑器设置中使用。
方法说明
在该检查器中显示 object
对象的属性,用于编辑。要清空检查器,请用 null
调用该方法。
注意:如果你想要在编辑器的主检查器中编辑对象,请改用 EditorInterface 中的 edit_*
方法。
返回当前在该检查器中选择的对象。
String get_selected_path() const 🔗
获取当前选定属性的路径。
EditorProperty instantiate_property_editor(object: Object, type: Variant.Type, path: String, hint: PropertyHint, hint_text: String, usage: int, wide: bool = false) static 🔗
创建一个属性编辑器,可以用在插件 UI 中,编辑 object
中指定属性。