package Visual_DVM_2021.Passes.All; import Common.Utils.CommonUtils; import Common.Visual.CommonUI; import Common_old.Current; import _VisualDVM.Global; import Common_old.UI.UI; 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 (CommonUI.Question("Назначить задачу " + CommonUtils.Brackets(target.get(0).getPK()) + " эталоном" + "\n(в случае отказа, будет назначена задача " + CommonUtils.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 CommonUI.Question("Отобразить задачу " + CommonUtils.Brackets(master.getPK())); } else if ((target.size() == 0) && (Current.HasDVMRunTask())) { master = Current.getDVMRunTask(); slave = null; return CommonUI.Question("Отобразить задачу " + CommonUtils.Brackets(master.getPK())); } else { Log.Writeln_("Для сравнения требуется отметить две задачи.\nДля отображения требуется отметить одну задачу,или выделить её."); return false; } } @Override protected void body() throws Exception { if (slave != null) UI.getMainWindow().getTestingWindow().CompareDVMRunTasks(master, slave); else UI.getMainWindow().getTestingWindow().ShowDVMRunTask(master); } }