2024-10-14 12:14:01 +03:00
|
|
|
package _VisualDVM.Passes.All;
|
2024-10-11 00:00:30 +03:00
|
|
|
import Common.Utils.Utils_;
|
|
|
|
|
import Common.Visual.UI_;
|
2024-10-09 22:01:19 +03:00
|
|
|
import _VisualDVM.Current;
|
2024-10-13 22:08:13 +03:00
|
|
|
import _VisualDVM.Global;
|
2024-10-09 22:01:19 +03:00
|
|
|
import _VisualDVM.Visual.UI;
|
|
|
|
|
import _VisualDVM.Utils;
|
2024-10-09 22:21:57 +03:00
|
|
|
import _VisualDVM.ProjectData.Files.DBProjectFile;
|
2024-10-14 12:14:01 +03:00
|
|
|
import _VisualDVM.Passes.Project.ChangeFilePass;
|
|
|
|
|
import _VisualDVM.Passes.PassCode;
|
2023-09-17 22:13:42 +03:00
|
|
|
public class DeleteFile extends ChangeFilePass<DBProjectFile> {
|
|
|
|
|
@Override
|
|
|
|
|
public String getIconPath() {
|
|
|
|
|
return "/icons/Delete.png";
|
|
|
|
|
}
|
|
|
|
|
@Override
|
|
|
|
|
protected boolean canStart(Object... args) {
|
|
|
|
|
resetArgs();
|
2024-10-13 22:08:13 +03:00
|
|
|
return (Global.mainModule.Check(Log, Current.SelectedFile)) &&
|
2024-10-11 00:00:30 +03:00
|
|
|
UI_.Warning("Удалить файл "
|
2024-10-13 22:08:13 +03:00
|
|
|
+ Utils_.Brackets((target = Global.mainModule.getSelectedFile()).name));
|
2023-09-17 22:13:42 +03:00
|
|
|
}
|
|
|
|
|
@Override
|
|
|
|
|
protected void performPreparation() throws Exception {
|
2024-10-13 22:08:13 +03:00
|
|
|
if (Global.mainModule.HasFile() && (Global.mainModule.getFile().file.equals(target.file)))
|
2024-10-13 23:55:03 +03:00
|
|
|
Global.mainModule.getPass(PassCode.CloseCurrentFile).Do();
|
2023-09-17 22:13:42 +03:00
|
|
|
}
|
|
|
|
|
@Override
|
|
|
|
|
protected void body() throws Exception {
|
|
|
|
|
UI.getMainWindow().getProjectWindow().getFilesTreeForm().getTree().RemoveNode(target.node);
|
|
|
|
|
project.db.Delete(target);
|
|
|
|
|
Utils.forceDeleteWithCheck(target.file);
|
|
|
|
|
}
|
|
|
|
|
@Override
|
|
|
|
|
protected void performDone() throws Exception {
|
2024-10-13 22:08:13 +03:00
|
|
|
Global.mainModule.set(Current.SelectedFile, null);
|
|
|
|
|
Global.mainModule.set(Current.ProjectNode, null);
|
2023-09-17 22:13:42 +03:00
|
|
|
}
|
|
|
|
|
}
|