mirror of
https://github.com/Relintai/pandemonium_engine.git
synced 2024-12-23 12:26:59 +01:00
87 lines
3.8 KiB
XML
87 lines
3.8 KiB
XML
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||
|
<class name="EditorInspectorPlugin" inherits="Reference" version="3.5">
|
||
|
<brief_description>
|
||
|
Plugin for adding custom property editors on inspector.
|
||
|
</brief_description>
|
||
|
<description>
|
||
|
[EditorInspectorPlugin] allows adding custom property editors to [EditorInspector].
|
||
|
When an object is edited, the [method can_handle] function is called and must return [code]true[/code] if the object type is supported.
|
||
|
If supported, the function [method parse_begin] will be called, allowing to place custom controls at the beginning of the class.
|
||
|
Subsequently, the [method parse_category] and [method parse_property] are called for every category and property. They offer the ability to add custom controls to the inspector too.
|
||
|
Finally, [method parse_end] will be called.
|
||
|
On each of these calls, the "add" functions can be called.
|
||
|
To use [EditorInspectorPlugin], register it using the [method EditorPlugin.add_inspector_plugin] method first.
|
||
|
</description>
|
||
|
<tutorials>
|
||
|
<link title="Inspector plugins">$DOCS_URL/tutorials/plugins/editor/inspector_plugins.html</link>
|
||
|
</tutorials>
|
||
|
<methods>
|
||
|
<method name="add_custom_control">
|
||
|
<return type="void" />
|
||
|
<argument index="0" name="control" type="Control" />
|
||
|
<description>
|
||
|
Adds a custom control, which is not necessarily a property editor.
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="add_property_editor">
|
||
|
<return type="void" />
|
||
|
<argument index="0" name="property" type="String" />
|
||
|
<argument index="1" name="editor" type="Control" />
|
||
|
<description>
|
||
|
Adds a property editor for an individual property. The [code]editor[/code] control must extend [EditorProperty].
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="add_property_editor_for_multiple_properties">
|
||
|
<return type="void" />
|
||
|
<argument index="0" name="label" type="String" />
|
||
|
<argument index="1" name="properties" type="PoolStringArray" />
|
||
|
<argument index="2" name="editor" type="Control" />
|
||
|
<description>
|
||
|
Adds an editor that allows modifying multiple properties. The [code]editor[/code] control must extend [EditorProperty].
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="can_handle" qualifiers="virtual">
|
||
|
<return type="bool" />
|
||
|
<argument index="0" name="object" type="Object" />
|
||
|
<description>
|
||
|
Returns [code]true[/code] if this object can be handled by this plugin.
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="parse_begin" qualifiers="virtual">
|
||
|
<return type="void" />
|
||
|
<argument index="0" name="object" type="Object" />
|
||
|
<description>
|
||
|
Called to allow adding controls at the beginning of the list.
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="parse_category" qualifiers="virtual">
|
||
|
<return type="void" />
|
||
|
<argument index="0" name="object" type="Object" />
|
||
|
<argument index="1" name="category" type="String" />
|
||
|
<description>
|
||
|
Called to allow adding controls at the beginning of the category.
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="parse_end" qualifiers="virtual">
|
||
|
<return type="void" />
|
||
|
<description>
|
||
|
Called to allow adding controls at the end of the list.
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="parse_property" qualifiers="virtual">
|
||
|
<return type="bool" />
|
||
|
<argument index="0" name="object" type="Object" />
|
||
|
<argument index="1" name="type" type="int" />
|
||
|
<argument index="2" name="path" type="String" />
|
||
|
<argument index="3" name="hint" type="int" />
|
||
|
<argument index="4" name="hint_text" type="String" />
|
||
|
<argument index="5" name="usage" type="int" />
|
||
|
<description>
|
||
|
Called to allow adding property specific editors to the inspector. Usually these inherit [EditorProperty]. Returning [code]true[/code] removes the built-in editor for this property, otherwise allows to insert a custom editor before the built-in one.
|
||
|
</description>
|
||
|
</method>
|
||
|
</methods>
|
||
|
<constants>
|
||
|
</constants>
|
||
|
</class>
|