فهرست منبع

Make animation name list scroll to new animation in SpriteEditor

Co-authored-by: DarellLdark <[email protected]>
Silc Lizard (Tokage) Renew 2 سال پیش
والد
کامیت
99451b55c2
1فایلهای تغییر یافته به همراه5 افزوده شده و 6 حذف شده
  1. 5 6
      editor/plugins/sprite_frames_editor_plugin.cpp

+ 5 - 6
editor/plugins/sprite_frames_editor_plugin.cpp

@@ -1209,30 +1209,29 @@ void SpriteFramesEditor::_update_library(bool p_skip_selector) {
 		bool searching = anim_search_box->get_text().size();
 		String searched_string = searching ? anim_search_box->get_text().to_lower() : String();
 
+		TreeItem *selected = nullptr;
 		for (const StringName &E : anim_names) {
 			String name = E;
-
 			if (searching && name.to_lower().find(searched_string) < 0) {
 				continue;
 			}
-
 			TreeItem *it = animations->create_item(anim_root);
-
 			it->set_metadata(0, name);
-
 			it->set_text(0, name);
 			it->set_editable(0, true);
-
 			if (animated_sprite) {
 				if (name == String(animated_sprite->call("get_autoplay"))) {
 					it->set_icon(0, autoplay_icon);
 				}
 			}
-
 			if (E == edited_anim) {
 				it->select(0);
+				selected = it;
 			}
 		}
+		if (selected) {
+			animations->scroll_to_item(selected);
+		}
 	}
 
 	if (animated_sprite) {