blob: 3d2af0545efd21303521cdc6cad6445fabad24a1 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
|
<?xml version="1.0" encoding="UTF-8" ?>
<class name="EditorInspectorPlugin" inherits="Reference" category="Core" version="3.2">
<brief_description>
Plugin for adding custom property editors on inspector.
</brief_description>
<description>
This plugins allows adding custom property editors to [EditorInspector].
Plugins are registered via [method EditorPlugin.add_inspector_plugin].
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.
</description>
<tutorials>
</tutorials>
<methods>
<method name="add_custom_control">
<return type="void">
</return>
<argument index="0" name="control" type="Control">
</argument>
<description>
Adds a custom control, not necessarily a property editor.
</description>
</method>
<method name="add_property_editor">
<return type="void">
</return>
<argument index="0" name="property" type="String">
</argument>
<argument index="1" name="editor" type="Control">
</argument>
<description>
Adds a property editor, this must inherit [EditorProperty].
</description>
</method>
<method name="add_property_editor_for_multiple_properties">
<return type="void">
</return>
<argument index="0" name="label" type="String">
</argument>
<argument index="1" name="properties" type="PoolStringArray">
</argument>
<argument index="2" name="editor" type="Control">
</argument>
<description>
Adds an editor that allows modifying multiple properties, this must inherit [EditorProperty].
</description>
</method>
<method name="can_handle" qualifiers="virtual">
<return type="bool">
</return>
<argument index="0" name="object" type="Object">
</argument>
<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">
</return>
<argument index="0" name="object" type="Object">
</argument>
<description>
Called to allow adding controls at the beginning of the list.
</description>
</method>
<method name="parse_category" qualifiers="virtual">
<return type="void">
</return>
<argument index="0" name="object" type="Object">
</argument>
<argument index="1" name="category" type="String">
</argument>
<description>
Called to allow adding controls at the beginning of the category.
</description>
</method>
<method name="parse_end" qualifiers="virtual">
<return type="void">
</return>
<description>
Called to allow adding controls at the end of the list.
</description>
</method>
<method name="parse_property" qualifiers="virtual">
<return type="bool">
</return>
<argument index="0" name="object" type="Object">
</argument>
<argument index="1" name="type" type="int">
</argument>
<argument index="2" name="path" type="String">
</argument>
<argument index="3" name="hint" type="int">
</argument>
<argument index="4" name="hint_text" type="String">
</argument>
<argument index="5" name="usage" type="int">
</argument>
<description>
Called to allow adding property specific editors to the inspector. Usually these inherit [EditorProperty].
</description>
</method>
</methods>
<constants>
</constants>
</class>
|