@@ -184,6 +184,7 @@ void TileMapLayerEditorTilesPlugin::_update_tile_set_sources_list() {
184184 }
185185 sources_list->set_meta (" old_source" , old_source);
186186 sources_list->clear ();
187+ sources_list->tile_set = Ref<TileSet>();
187188
188189 TileMapLayer *edited_layer = _get_edited_layer ();
189190 if (!edited_layer) {
@@ -194,6 +195,7 @@ void TileMapLayerEditorTilesPlugin::_update_tile_set_sources_list() {
194195 if (tile_set.is_null ()) {
195196 return ;
196197 }
198+ sources_list->tile_set = tile_set;
197199
198200 if (!tile_set->has_source (old_source)) {
199201 old_source = -1 ;
@@ -2376,20 +2378,11 @@ TileMapLayerEditorTilesPlugin::TileMapLayerEditorTilesPlugin() {
23762378 p->set_item_checked (TilesEditorUtils::SOURCE_SORT_ID, true );
23772379 sources_bottom_actions->add_child (source_sort_button);
23782380
2379- sources_list = memnew (ItemList);
2380- sources_list->set_auto_translate_mode (Node::AUTO_TRANSLATE_MODE_DISABLED);
2381- sources_list->set_fixed_icon_size (Size2 (60 , 60 ) * EDSCALE);
2382- sources_list->set_h_size_flags (Control::SIZE_EXPAND_FILL);
2383- sources_list->set_v_size_flags (Control::SIZE_EXPAND_FILL);
2384- sources_list->set_stretch_ratio (0.25 );
2385- sources_list->set_custom_minimum_size (Size2 (70 , 0 ) * EDSCALE);
2386- sources_list->set_texture_filter (CanvasItem::TEXTURE_FILTER_NEAREST);
2387- sources_list->set_theme_type_variation (" ItemListSecondary" );
2381+ sources_list = memnew (TileSetSourceItemList);
23882382 sources_list->connect (SceneStringName (item_selected), callable_mp (this , &TileMapLayerEditorTilesPlugin::_update_source_display).unbind (1 ));
23892383 sources_list->connect (SceneStringName (item_selected), callable_mp (TilesEditorUtils::get_singleton (), &TilesEditorUtils::set_sources_lists_current));
23902384 sources_list->connect (" item_activated" , callable_mp (TilesEditorUtils::get_singleton (), &TilesEditorUtils::display_tile_set_editor_panel).unbind (1 ));
23912385 sources_list->connect (SceneStringName (visibility_changed), callable_mp (TilesEditorUtils::get_singleton (), &TilesEditorUtils::synchronize_sources_list).bind (sources_list, source_sort_button));
2392- sources_list->add_user_signal (MethodInfo (" sort_request" ));
23932386 sources_list->connect (" sort_request" , callable_mp (this , &TileMapLayerEditorTilesPlugin::_update_tile_set_sources_list));
23942387 split_container_left_side->add_child (sources_list);
23952388 split_container_left_side->add_child (sources_bottom_actions);
0 commit comments