package Visual_DVM_2021.Passes.All; import Common.Current_; import Common.Utils.CommonUtils; import _VisualDVM.Current; import _VisualDVM.Global; import _VisualDVM.Visual.UI; import _VisualDVM.ProjectData.Project.db_project_info; import Visual_DVM_2021.Passes.PassCode; import Visual_DVM_2021.Passes.Pass; import javax.swing.*; public class CloseCurrentProject extends Pass { @Override public String getButtonText() { return ""; } @Override public String getIconPath() { return "/icons/Close.png"; } @Override public Icon getTabIcon() { return CommonUtils.getIcon("/icons/Close_18.png"); } @Override protected boolean canStart(Object... args) throws Exception { return (target = Current.getProject()) != null; } @Override protected void performPreparation() throws Exception { passes.get(PassCode.CloseCurrentFile).Do(); } @Override protected void body() throws Exception { target.Close(); UI.HideSearchForm(); } @Override protected void performDone() throws Exception { Global.files_multiselection = false; //-- Current.getSapfor().ResetAllAnalyses(); Current.getSapfor().cd(CommonUtils.getHomeDirectory()); Current_.set(Current.Project, null); Current_.set(Current.File, null); Current_.set(Current.Function, null); Current_.set(Current.SelectedFunction,null); Current_.set(Current.ProjectNode, null); Current_.set(Current.SelectedFile, null); Current_.set(Current.SelectedDirectory, null); //-мб перестраховка. мб и нет. Current_.set(Current.ParallelVariant, null); Current_.set(Current.Dimensions, null); Current_.set(Current.Array, null); Current_.set(Current.DBArray, null); //- } @Override protected void showDone() throws Exception { if (UI.HasMainWindow()) { UI.getMainWindow().ShowNoProject(); UI.getVersionsWindow().ShowNoProjectVariants(); UI.getVersionsWindow().BlockVariants(); } } }