@@ -183,6 +183,7 @@ void TileMapLayerEditorTilesPlugin::_update_tile_set_sources_list() {
183183 }
184184 sources_list->set_meta (" old_source" , old_source);
185185 sources_list->clear ();
186+ sources_list->tile_set = Ref<TileSet>();
186187
187188 TileMapLayer *edited_layer = _get_edited_layer ();
188189 if (!edited_layer) {
@@ -193,6 +194,7 @@ void TileMapLayerEditorTilesPlugin::_update_tile_set_sources_list() {
193194 if (tile_set.is_null ()) {
194195 return ;
195196 }
197+ sources_list->tile_set = tile_set;
196198
197199 if (!tile_set->has_source (old_source)) {
198200 old_source = -1 ;
@@ -2380,20 +2382,11 @@ TileMapLayerEditorTilesPlugin::TileMapLayerEditorTilesPlugin() {
23802382 p->set_item_checked (TilesEditorUtils::SOURCE_SORT_ID, true );
23812383 sources_bottom_actions->add_child (source_sort_button);
23822384
2383- sources_list = memnew (ItemList);
2384- sources_list->set_auto_translate_mode (Node::AUTO_TRANSLATE_MODE_DISABLED);
2385- sources_list->set_fixed_icon_size (Size2 (60 , 60 ) * EDSCALE);
2386- sources_list->set_h_size_flags (Control::SIZE_EXPAND_FILL);
2387- sources_list->set_v_size_flags (Control::SIZE_EXPAND_FILL);
2388- sources_list->set_stretch_ratio (0.25 );
2389- sources_list->set_custom_minimum_size (Size2 (70 , 0 ) * EDSCALE);
2390- sources_list->set_texture_filter (CanvasItem::TEXTURE_FILTER_NEAREST);
2391- sources_list->set_theme_type_variation (" ItemListSecondary" );
2385+ sources_list = memnew (TileSetSourceItemList);
23922386 sources_list->connect (SceneStringName (item_selected), callable_mp (this , &TileMapLayerEditorTilesPlugin::_update_source_display).unbind (1 ));
23932387 sources_list->connect (SceneStringName (item_selected), callable_mp (TilesEditorUtils::get_singleton (), &TilesEditorUtils::set_sources_lists_current));
23942388 sources_list->connect (" item_activated" , callable_mp (TilesEditorUtils::get_singleton (), &TilesEditorUtils::display_tile_set_editor_panel).unbind (1 ));
23952389 sources_list->connect (SceneStringName (visibility_changed), callable_mp (TilesEditorUtils::get_singleton (), &TilesEditorUtils::synchronize_sources_list).bind (sources_list, source_sort_button));
2396- sources_list->add_user_signal (MethodInfo (" sort_request" ));
23972390 sources_list->connect (" sort_request" , callable_mp (this , &TileMapLayerEditorTilesPlugin::_update_tile_set_sources_list));
23982391 split_container_left_side->add_child (sources_list);
23992392 split_container_left_side->add_child (sources_bottom_actions);
0 commit comments