mirror of
https://github.com/godotengine/godot.git
synced 2024-11-21 19:42:43 +00:00
Rework global class hiding in addons
This commit is contained in:
parent
6b281c0c07
commit
5f695f0ab4
@ -160,8 +160,13 @@ bool CreateDialog::_should_hide_type(const StringName &p_type) const {
|
||||
|
||||
String script_path = ScriptServer::get_global_class_path(p_type);
|
||||
if (script_path.begins_with("res://addons/")) {
|
||||
if (!EditorNode::get_singleton()->is_addon_plugin_enabled(script_path.get_slicec('/', 3))) {
|
||||
return true; // Plugin is not enabled.
|
||||
int i = script_path.find("/", 13); // 13 is length of "res://addons/".
|
||||
while (i > -1) {
|
||||
const String plugin_path = script_path.substr(0, i).path_join("plugin.cfg");
|
||||
if (FileAccess::exists(plugin_path)) {
|
||||
return !EditorNode::get_singleton()->is_addon_plugin_enabled(plugin_path);
|
||||
}
|
||||
i = script_path.find("/", i + 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user