рефакторинг массовых удалений объектов

This commit is contained in:
2024-10-16 18:58:23 +03:00
parent cf660d26ea
commit 788bd67201
21 changed files with 170 additions and 53 deletions

View File

@@ -13,18 +13,18 @@ public class DeleteSelectedFiles extends Pass {
}
@Override
protected boolean canStart(Object... args) throws Exception {
if (Global.mainModule.getProject().db.files.getCheckedCount() == 0) {
if (Global.mainModule.getProject().db.files.getSelectedCount() == 0) {
Log.Writeln_("Не отмечено ни одного файла.");
return false;
}
return UI.Warning("Удалить " + Global.mainModule.getProject().db.files.getCheckedCount() + " файлов.");
return UI.Warning("Удалить " + Global.mainModule.getProject().db.files.getSelectedCount() + " файлов.");
}
@Override
protected void performPreparation() throws Exception {
boolean hasCurrent = false;
boolean hasSelected = false;
if (Global.mainModule.HasFile()) {
for (DBProjectFile file : Global.mainModule.getProject().db.files.getCheckedItems()) {
for (DBProjectFile file : Global.mainModule.getProject().db.files.getSelectedItems()) {
if (Global.mainModule.getFile().file.equals(file.file))
hasCurrent = true;
if (Global.mainModule.getSelectedFile().file.equals(file.file))
@@ -44,7 +44,7 @@ public class DeleteSelectedFiles extends Pass {
}
@Override
protected void body() throws Exception {
for (DBProjectFile file : Global.mainModule.getProject().db.files.getCheckedItems()) {
for (DBProjectFile file : Global.mainModule.getProject().db.files.getSelectedItems()) {
ShowMessage1(file.name);
Global.mainModule.getUI().getMainWindow().getProjectWindow().getFilesTreeForm().getTree().RemoveNode(file.node);
Global.mainModule.getProject().db.Delete(file);