Improve docs on how to make main screen plugin
This commit is contained in:
parent
ecc86afc00
commit
058c1eac25
1 changed files with 22 additions and 0 deletions
|
@ -296,6 +296,28 @@
|
|||
<return type="bool" />
|
||||
<description>
|
||||
Returns [code]true[/code] if this is a main screen editor plugin (it goes in the workspace selector together with [b]2D[/b], [b]3D[/b], [b]Script[/b] and [b]AssetLib[/b]).
|
||||
When the plugin's workspace is selected, other main screen plugins will be hidden, but your plugin will not appear automatically. It needs to be added as a child of [method EditorInterface.get_base_control] and made visible inside [method _make_visible].
|
||||
Use [method _get_plugin_name] and [method _get_plugin_icon] to customize the plugin button's appearance.
|
||||
[codeblock]
|
||||
var plugin_control
|
||||
|
||||
func _enter_tree():
|
||||
plugin_control = preload("my_plugin_control.tscn").instantiate()
|
||||
get_editor_interface().get_editor_main_control().add_child(plugin_control)
|
||||
plugin_control.hide()
|
||||
|
||||
func _has_main_screen():
|
||||
return true
|
||||
|
||||
func _make_visible(visible):
|
||||
plugin_control.visible = visible
|
||||
|
||||
func _get_plugin_name():
|
||||
return "My Super Cool Plugin 3000"
|
||||
|
||||
func _get_plugin_icon():
|
||||
return get_editor_interface().get_base_control().get_theme_icon("Node", "EditorIcons")
|
||||
[/codeblock]
|
||||
</description>
|
||||
</method>
|
||||
<method name="_make_visible" qualifiers="virtual">
|
||||
|
|
Loading…
Reference in a new issue