EditorInspectorPlugin
Inherits: RefCounted < Object
Plugin for adding custom property editors on the inspector.
Description
EditorInspectorPlugin allows adding custom property editors to EditorInspector.
When an object is edited, the _can_handle() function is called and must return true if the object type is supported.
If supported, the function _parse_begin() will be called, allowing to place custom controls at the beginning of the class.
Subsequently, the _parse_category() and _parse_property() are called for every category and property. They offer the ability to add custom controls to the inspector too.
Finally, _parse_end() will be called.
On each of these calls, the "add" functions can be called.
To use EditorInspectorPlugin, register it using the EditorPlugin.add_inspector_plugin() method first.
Tutorials
Methods
| bool | _can_handle\ (\ object: Object\ ) virtual const |
|---|---|
void | _parse_begin\ (\ object: Object\ ) virtual |
void | _parse_category\ (\ object: Object, category: String\ ) virtual |
void | _parse_end\ (\ object: Object\ ) virtual |
void | _parse_group\ (\ object: Object, group: String\ ) virtual |
| bool | _parse_property\ (\ object: Object, type: Variant.Type, name: String, hint_type: PropertyHint, hint_string: String, usage_flags: BitField[PropertyUsageFlags], wide: bool\ ) virtual |
void | add_custom_control\ (\ control: Control\ ) |
void | add_property_editor\ (\ property: String, editor: Control, add_to_end: bool = false, label: String = ""\ ) |
void | add_property_editor_for_multiple_properties\ (\ label: String, properties: PackedStringArray, editor: Control\ ) |
Method Descriptions
bool _can_handle\ (\ object: Object\ ) virtual const 🔗
Returns true if this object can be handled by this plugin.
void _parse_begin\ (\ object: Object\ ) virtual 🔗
Called to allow adding controls at the beginning of the property list for object.
void _parse_category\ (\ object: Object, category: String\ ) virtual 🔗
Called to allow adding controls at the beginning of a category in the property list for object.
void _parse_end\ (\ object: Object\ ) virtual 🔗
Called to allow adding controls at the end of the property list for object.
void _parse_group\ (\ object: Object, group: String\ ) virtual 🔗
Called to allow adding controls at the beginning of a group or a sub-group in the property list for object.
bool _parse_property\ (\ object: Object, type: Variant.Type, name: String, hint_type: PropertyHint, hint_string: String, usage_flags: BitField[PropertyUsageFlags], wide: bool\ ) virtual 🔗
Called to allow adding property-specific editors to the property list for object. The added editor control must extend EditorProperty. Returning true removes the built-in editor for this property, otherwise allows to insert a custom editor before the built-in one.
void add_custom_control\ (\ control: Control\ ) 🔗
Adds a custom control, which is not necessarily a property editor.
void add_property_editor\ (\ property: String, editor: Control, add_to_end: bool = false, label: String = ""\ ) 🔗
Adds a property editor for an individual property. The editor control must extend EditorProperty.
There can be multiple property editors for a property. If add_to_end is true, this newly added editor will be displayed after all the other editors of the property whose add_to_end is false. For example, the editor uses this parameter to add an "Edit Region" button for Sprite2D.region_rect below the regular Rect2 editor.
\ label can be used to choose a custom label for the property editor in the inspector. If left empty, the label is computed from the name of the property instead.
void add_property_editor_for_multiple_properties\ (\ label: String, properties: PackedStringArray, editor: Control\ ) 🔗
Adds an editor that allows modifying multiple properties. The editor control must extend EditorProperty.