package Visual_DVM_2021.Passes.All; import Common.Global; import Common.UI.UI; import Common.Utils.Utils; import TestingSystem.DVM.DVMTasks.DVMRunTask; import Visual_DVM_2021.Passes.Pass_2021; import java.util.Vector; public class CompareDVMRunTasks extends Pass_2021> { DVMRunTask master; DVMRunTask slave; @Override public String getIconPath() { return "/icons/Comparsion.png"; } @Override public String getButtonText() { return ""; } @Override protected boolean canStart(Object... args) throws Exception { master = null; slave = null; //-- target = Global.testingServer.db.dvmRunTasks.getCheckedItems(); if (target.size() == 2) { if (UI.Question("Назначить задачу " + Utils.Brackets(target.get(0).getPK()) + " эталоном" + "\n(в случае отказа, будет назначена задача " + Utils.Brackets(target.get(1).getPK()) + ")")) { master = target.get(0); slave = target.get(1); } else { master = target.get(1); slave = target.get(0); } return true; } else if (target.size() == 1) { master = target.get(0); slave = null; return UI.Question("Отобразить задачу " + Utils.Brackets(target.get(0).getPK())); } else if (target.size() != 2) { Log.Writeln_("Для сравнения требуется отметить две задачи.\nДля отображения требуется отметить одну задачу"); return false; } return true; } @Override protected void body() throws Exception { if (slave != null) UI.getMainWindow().getTestingWindow().CompareDVMRunTasks(master, slave); else UI.getMainWindow().getTestingWindow().ShowDVMRunTask(master); } }