mirror of
https://github.com/godotengine/godot.git
synced 2024-11-27 09:16:35 +08:00
Select exactly matched file automatically in FileDialog
This commit is contained in:
parent
ea87f0f9d9
commit
ff4f04e878
@ -403,11 +403,12 @@ void FileDialog::update_file_list() {
|
||||
while(!files.empty()) {
|
||||
|
||||
bool match=patterns.empty();
|
||||
String match_str;
|
||||
|
||||
for(List<String>::Element *E=patterns.front();E;E=E->next()) {
|
||||
|
||||
if (files.front()->get().matchn(E->get())) {
|
||||
|
||||
match_str=E->get();
|
||||
match=true;
|
||||
break;
|
||||
}
|
||||
@ -432,14 +433,14 @@ void FileDialog::update_file_list() {
|
||||
d["dir"]=false;
|
||||
ti->set_metadata(0,d);
|
||||
|
||||
if (file->get_text()==files.front()->get())
|
||||
if (file->get_text()==files.front()->get() || match_str==files.front()->get())
|
||||
ti->select(0);
|
||||
}
|
||||
|
||||
files.pop_front();
|
||||
}
|
||||
|
||||
if (tree->get_root() && tree->get_root()->get_children())
|
||||
if (tree->get_root() && tree->get_root()->get_children() && tree->get_selected()==NULL)
|
||||
tree->get_root()->get_children()->select(0);
|
||||
|
||||
files.clear();
|
||||
|
Loading…
Reference in New Issue
Block a user