2023-11-19 02:12:44 +03:00
|
|
|
package Visual_DVM_2021.Passes.All;
|
2023-09-17 22:13:42 +03:00
|
|
|
import Common.Current;
|
|
|
|
|
import Common.Global;
|
|
|
|
|
import Common.UI.UI;
|
2024-08-18 01:08:56 +03:00
|
|
|
import Common.UI.Windows.Dialog.Dialog;
|
2023-09-17 22:13:42 +03:00
|
|
|
import Common.Utils.Utils;
|
2024-08-18 01:08:56 +03:00
|
|
|
import GlobalData.FileObject.FileObject;
|
|
|
|
|
import GlobalData.FileObject.FileObjectsDataSet;
|
|
|
|
|
import GlobalData.FileObject.FileObjectsFields;
|
2023-11-19 02:12:44 +03:00
|
|
|
import Visual_DVM_2021.Passes.PassCode_2021;
|
|
|
|
|
import Visual_DVM_2021.Passes.Pass_2021;
|
2024-08-18 01:08:56 +03:00
|
|
|
import Visual_DVM_2021.Passes.UI.CopyProjectFields;
|
2023-09-17 22:13:42 +03:00
|
|
|
|
2024-08-18 01:08:56 +03:00
|
|
|
import javax.swing.*;
|
2023-09-17 22:13:42 +03:00
|
|
|
import java.io.File;
|
2024-08-18 01:08:56 +03:00
|
|
|
import java.nio.file.Paths;
|
|
|
|
|
import java.util.*;
|
2023-09-17 22:13:42 +03:00
|
|
|
public class DeleteDownloadedBugReports extends Pass_2021<Vector<File>> {
|
|
|
|
|
@Override
|
|
|
|
|
protected boolean needsAnimation() {
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
@Override
|
|
|
|
|
public boolean needsConfirmations() {
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
@Override
|
|
|
|
|
protected boolean canStart(Object... args) throws Exception {
|
|
|
|
|
target = null;
|
2024-08-18 01:08:56 +03:00
|
|
|
if (passes.get(PassCode_2021.GetOldBugReports).Do()){
|
|
|
|
|
target = (Vector<File>) passes.get(PassCode_2021.GetOldBugReports).target;
|
|
|
|
|
FileObjectsDataSet set = new FileObjectsDataSet();
|
|
|
|
|
for (File file: target){
|
|
|
|
|
set.put(file.getName(),new FileObject(file));
|
|
|
|
|
}
|
|
|
|
|
//-
|
|
|
|
|
Dialog<Object, FileObjectsFields> dialog = new Dialog<Object, FileObjectsFields>(FileObjectsFields.class) {
|
|
|
|
|
@Override
|
|
|
|
|
public int getDefaultHeight() {
|
2024-08-18 12:28:54 +03:00
|
|
|
return 300;
|
|
|
|
|
}
|
|
|
|
|
@Override
|
|
|
|
|
public int getDefaultWidth() {
|
|
|
|
|
return 600;
|
2024-08-18 01:08:56 +03:00
|
|
|
}
|
|
|
|
|
@Override
|
|
|
|
|
public void Init(Object... params) {
|
|
|
|
|
set.mountUI((JPanel) content);
|
|
|
|
|
set.ShowUI();
|
|
|
|
|
}
|
|
|
|
|
@Override
|
|
|
|
|
public void validateFields() {
|
|
|
|
|
}
|
|
|
|
|
};
|
2024-08-18 12:28:54 +03:00
|
|
|
if (dialog.ShowDialog("Найдено "+target.size()+" загруженных проектов. Удалить?")) {
|
2024-08-18 01:08:56 +03:00
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
}
|
2023-09-17 22:13:42 +03:00
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
@Override
|
|
|
|
|
protected void performPreparation() throws Exception {
|
|
|
|
|
if (Current.HasProject())
|
|
|
|
|
passes.get(PassCode_2021.CloseCurrentProject).Do();
|
|
|
|
|
}
|
|
|
|
|
@Override
|
|
|
|
|
protected void body() throws Exception {
|
|
|
|
|
for (File file : target) {
|
2024-08-18 12:28:54 +03:00
|
|
|
ShowMessage1(file.getName());
|
2023-09-17 22:13:42 +03:00
|
|
|
Utils.forceDeleteWithCheck(file);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|