mirror of
https://github.com/godotengine/godot.git
synced 2025-11-01 06:01:14 +00:00
Fix general issues with filesystem-related UI components in the editor
This commit is contained in:
parent
45e7306b5a
commit
a292d1fefb
4 changed files with 21 additions and 38 deletions
|
|
@ -1205,8 +1205,10 @@ void EditorFileDialog::_update_favorites() {
|
|||
if (name == current)
|
||||
setthis = true;
|
||||
name = "/";
|
||||
|
||||
favorites->add_item(name, folder_icon);
|
||||
} else if (name.ends_with("/")) {
|
||||
if (name == current)
|
||||
if (name == current || name == current + "/")
|
||||
setthis = true;
|
||||
name = name.substr(0, name.length() - 1);
|
||||
name = name.get_file();
|
||||
|
|
@ -1229,6 +1231,8 @@ void EditorFileDialog::_favorite_toggled(bool p_toggle) {
|
|||
bool res = access == ACCESS_RESOURCES;
|
||||
|
||||
String cd = get_current_dir();
|
||||
if (!cd.ends_with("/"))
|
||||
cd += "/";
|
||||
|
||||
Vector<String> favorited = EditorSettings::get_singleton()->get_favorites();
|
||||
|
||||
|
|
@ -1244,13 +1248,10 @@ void EditorFileDialog::_favorite_toggled(bool p_toggle) {
|
|||
}
|
||||
}
|
||||
|
||||
if (found) {
|
||||
if (found)
|
||||
favorited.erase(cd);
|
||||
favorite->set_pressed(false);
|
||||
} else {
|
||||
else
|
||||
favorited.push_back(cd);
|
||||
favorite->set_pressed(true);
|
||||
}
|
||||
|
||||
EditorSettings::get_singleton()->set_favorites(favorited);
|
||||
|
||||
|
|
@ -1494,7 +1495,9 @@ EditorFileDialog::EditorFileDialog() {
|
|||
HBoxContainer *pathhb = memnew(HBoxContainer);
|
||||
|
||||
dir_prev = memnew(ToolButton);
|
||||
dir_prev->set_tooltip(TTR("Previous Folder"));
|
||||
dir_next = memnew(ToolButton);
|
||||
dir_next->set_tooltip(TTR("Next Folder"));
|
||||
dir_up = memnew(ToolButton);
|
||||
dir_up->set_tooltip(TTR("Go to parent folder"));
|
||||
|
||||
|
|
@ -1513,12 +1516,14 @@ EditorFileDialog::EditorFileDialog() {
|
|||
dir->set_h_size_flags(SIZE_EXPAND_FILL);
|
||||
|
||||
refresh = memnew(ToolButton);
|
||||
refresh->set_tooltip(TTR("Refresh"));
|
||||
refresh->connect("pressed", this, "_update_file_list");
|
||||
pathhb->add_child(refresh);
|
||||
|
||||
favorite = memnew(ToolButton);
|
||||
favorite->set_flat(true);
|
||||
favorite->set_toggle_mode(true);
|
||||
favorite->set_tooltip(TTR("(Un)favorite current folder."));
|
||||
favorite->connect("toggled", this, "_favorite_toggled");
|
||||
pathhb->add_child(favorite);
|
||||
|
||||
|
|
@ -1532,6 +1537,7 @@ EditorFileDialog::EditorFileDialog() {
|
|||
mode_thumbnails->set_toggle_mode(true);
|
||||
mode_thumbnails->set_pressed(display_mode == DISPLAY_THUMBNAILS);
|
||||
mode_thumbnails->set_button_group(view_mode_group);
|
||||
mode_thumbnails->set_tooltip(TTR("View items as a grid of thumbnails."));
|
||||
pathhb->add_child(mode_thumbnails);
|
||||
|
||||
mode_list = memnew(ToolButton);
|
||||
|
|
@ -1539,6 +1545,7 @@ EditorFileDialog::EditorFileDialog() {
|
|||
mode_list->set_toggle_mode(true);
|
||||
mode_list->set_pressed(display_mode == DISPLAY_LIST);
|
||||
mode_list->set_button_group(view_mode_group);
|
||||
mode_list->set_tooltip(TTR("View items as a list."));
|
||||
pathhb->add_child(mode_list);
|
||||
|
||||
drives = memnew(OptionButton);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue