aboutsummaryrefslogtreecommitdiff
path: root/editor/dependency_editor.cpp
diff options
context:
space:
mode:
authorMarcelo Fernandez2017-09-25 10:15:11 -0300
committerMarcelo Fernandez2017-09-25 21:49:01 -0300
commit20918587d39c5c9c370e3b4beccf883f553d9b3e (patch)
treeb0035e8e35dbe0d4cbf97dc6a05e946bcbd5dc64 /editor/dependency_editor.cpp
parent09800ac65079599c568679b53962a313182885ea (diff)
downloadgodot-20918587d39c5c9c370e3b4beccf883f553d9b3e.tar.gz
godot-20918587d39c5c9c370e3b4beccf883f553d9b3e.tar.zst
godot-20918587d39c5c9c370e3b4beccf883f553d9b3e.zip
FileSystemDock will now remove files/dirs to trashcan using OS::move_to_trash
Diffstat (limited to 'editor/dependency_editor.cpp')
-rw-r--r--editor/dependency_editor.cpp13
1 files changed, 9 insertions, 4 deletions
diff --git a/editor/dependency_editor.cpp b/editor/dependency_editor.cpp
index 54bf31cd6..5305c4f25 100644
--- a/editor/dependency_editor.cpp
+++ b/editor/dependency_editor.cpp
@@ -409,17 +409,22 @@ void DependencyRemoveDialog::show(const Vector<String> &to_erase) {
void DependencyRemoveDialog::ok_pressed() {
- DirAccess *da = DirAccess::create(DirAccess::ACCESS_RESOURCES);
+ bool changed = false;
+
for (Map<String, TreeItem *>::Element *E = files.front(); E; E = E->next()) {
if (ResourceCache::has(E->key())) {
Resource *res = ResourceCache::get(E->key());
res->set_path(""); //clear reference to path
}
- da->remove(E->key());
- EditorFileSystem::get_singleton()->update_file(E->key());
+ String fpath = OS::get_singleton()->get_resource_dir() + E->key().replace_first("res://", "/");
+ OS::get_singleton()->move_to_trash(fpath);
+ changed = true;
+ }
+
+ if (changed) {
+ EditorFileSystem::get_singleton()->scan_changes();
}
- memdelete(da);
}
DependencyRemoveDialog::DependencyRemoveDialog() {