Skip to content

Commit c0a397f

Browse files
committed
Merge pull request godotengine#112925 from KoBeWi/ScriptEditorExtension
Support extension icons in Script Editor
2 parents d30ec9a + 5d5b205 commit c0a397f

File tree

2 files changed

+16
-3
lines changed

2 files changed

+16
-3
lines changed

editor/script/script_editor_plugin.cpp

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1835,6 +1835,7 @@ void ScriptEditor::_notification(int p_what) {
18351835
filter_methods->set_right_icon(get_editor_theme_icon(SNAME("Search")));
18361836

18371837
recent_scripts->reset_size();
1838+
script_list->set_fixed_icon_size(Vector2i(1, 1) * get_theme_constant("class_icon_size", EditorStringName(Editor)));
18381839

18391840
if (is_inside_tree()) {
18401841
_update_script_names();
@@ -4201,16 +4202,16 @@ ScriptEditor::ScriptEditor(WindowWrapper *p_wrapper) {
42014202
filter_scripts->connect(SceneStringName(text_changed), callable_mp(this, &ScriptEditor::_filter_scripts_text_changed));
42024203
scripts_vbox->add_child(filter_scripts);
42034204

4205+
_sort_list_on_update = true;
42044206
script_list = memnew(ItemList);
42054207
script_list->set_auto_translate_mode(AUTO_TRANSLATE_MODE_DISABLED);
4206-
scripts_vbox->add_child(script_list);
42074208
script_list->set_custom_minimum_size(Size2(100, 60) * EDSCALE); //need to give a bit of limit to avoid it from disappearing
42084209
script_list->set_v_size_flags(SIZE_EXPAND_FILL);
42094210
script_list->set_theme_type_variation("ItemListSecondary");
42104211
script_split->set_split_offset(200 * EDSCALE);
4211-
_sort_list_on_update = true;
4212-
script_list->connect("item_clicked", callable_mp(this, &ScriptEditor::_script_list_clicked), CONNECT_DEFERRED);
42134212
script_list->set_allow_rmb_select(true);
4213+
scripts_vbox->add_child(script_list);
4214+
script_list->connect("item_clicked", callable_mp(this, &ScriptEditor::_script_list_clicked), CONNECT_DEFERRED);
42144215
SET_DRAG_FORWARDING_GCD(script_list, ScriptEditor);
42154216

42164217
context_menu = memnew(PopupMenu);

editor/script/script_text_editor.cpp

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -840,6 +840,18 @@ Ref<Texture2D> ScriptTextEditor::get_theme_icon() {
840840
}
841841
}
842842

843+
Ref<Texture2D> extension_language_icon = EditorNode::get_editor_data().extension_class_get_icon(script->get_class());
844+
Ref<Texture2D> extension_language_alt_icon;
845+
if (script->is_built_in()) {
846+
extension_language_alt_icon = EditorNode::get_editor_data().extension_class_get_icon(script->get_class() + "Internal");
847+
}
848+
849+
if (extension_language_alt_icon.is_valid()) {
850+
return extension_language_alt_icon;
851+
} else if (extension_language_icon.is_valid()) {
852+
return extension_language_icon;
853+
}
854+
843855
return Ref<Texture2D>();
844856
}
845857

0 commit comments

Comments
 (0)