Merge pull request #39793 from Xrayez/class-icon-opt
Optimize class icon loading
This commit is contained in:
commit
527ab830c6
1 changed files with 4 additions and 9 deletions
|
@ -3642,17 +3642,12 @@ Ref<Texture2D> EditorNode::get_class_icon(const String &p_class, const String &p
|
|||
}
|
||||
|
||||
if (ScriptServer::is_global_class(p_class)) {
|
||||
String icon_path = EditorNode::get_editor_data().script_class_get_icon_path(p_class);
|
||||
Ref<ImageTexture> icon = _load_custom_class_icon(icon_path);
|
||||
if (icon.is_valid()) {
|
||||
return icon;
|
||||
}
|
||||
|
||||
Ref<Script> script = ResourceLoader::load(ScriptServer::get_global_class_path(p_class), "Script");
|
||||
Ref<ImageTexture> icon;
|
||||
Ref<Script> script = EditorNode::get_editor_data().script_class_load_script(p_class);
|
||||
|
||||
while (script.is_valid()) {
|
||||
String current_icon_path;
|
||||
script->get_language()->get_global_class_name(script->get_path(), nullptr, ¤t_icon_path);
|
||||
StringName name = EditorNode::get_editor_data().script_class_get_name(script->get_path());
|
||||
String current_icon_path = EditorNode::get_editor_data().script_class_get_icon_path(name);
|
||||
icon = _load_custom_class_icon(current_icon_path);
|
||||
if (icon.is_valid()) {
|
||||
return icon;
|
||||
|
|
Loading…
Reference in a new issue