mirror of
https://github.com/godotengine/godot.git
synced 2024-11-21 03:18:37 +08:00
Merge pull request #22398 from groud/fix_import_tab_update
Fix import tab not updating when selecting in the tree view
This commit is contained in:
commit
1f18a85ea1
@ -395,6 +395,9 @@ void FileSystemDock::_notification(int p_what) {
|
||||
}
|
||||
|
||||
void FileSystemDock::_tree_multi_selected(Object *p_item, int p_column, bool p_selected) {
|
||||
// Update the import dock
|
||||
import_dock_needs_update = true;
|
||||
call_deferred("_update_import_dock");
|
||||
|
||||
// Return if we don't select something new
|
||||
if (!p_selected)
|
||||
@ -2122,15 +2125,33 @@ void FileSystemDock::_update_import_dock() {
|
||||
if (!import_dock_needs_update)
|
||||
return;
|
||||
|
||||
//check import
|
||||
// List selected
|
||||
Vector<String> selected;
|
||||
if (display_mode_setting == DISPLAY_MODE_SETTING_TREE_ONLY) {
|
||||
// Use the tree
|
||||
selected = _tree_get_selected();
|
||||
|
||||
} else {
|
||||
// Use the file list
|
||||
for (int i = 0; i < files->get_item_count(); i++) {
|
||||
if (!files->is_selected(i))
|
||||
continue;
|
||||
|
||||
selected.push_back(files->get_item_metadata(i));
|
||||
}
|
||||
}
|
||||
|
||||
// Check import
|
||||
Vector<String> imports;
|
||||
String import_type;
|
||||
for (int i = 0; i < selected.size(); i++) {
|
||||
String fpath = selected[i];
|
||||
|
||||
for (int i = 0; i < files->get_item_count(); i++) {
|
||||
if (!files->is_selected(i))
|
||||
continue;
|
||||
if (fpath.ends_with("/")) {
|
||||
imports.clear();
|
||||
break;
|
||||
}
|
||||
|
||||
String fpath = files->get_item_metadata(i);
|
||||
if (!FileAccess::exists(fpath + ".import")) {
|
||||
imports.clear();
|
||||
break;
|
||||
|
Loading…
Reference in New Issue
Block a user