package _VisualDVM; import Common.CommonConstants; import _VisualDVM.ComponentsServer.UserAccount.UserAccount; import _VisualDVM.ComponentsServer.UserAccount.AccountRole; import _VisualDVM.Passes.PassCode; import com.google.gson.annotations.Expose; import javax.swing.*; import java.io.File; public class NormalProperties extends VisualDVMProperties { //---> @Expose public String Email = ""; @Expose public String Name = ""; @Expose public String ServerUserPassword=""; //---> @Expose public String Workspace = ""; @Expose public String ProjectsSearchDirectory = ""; @Expose public String VisualiserPath = ""; @Expose public String Sapfor_FPath = ""; @Expose public String Visualizer_2Path = ""; @Expose public String InstructionPath = ""; @Expose public String PerformanceAnalyzerPath = ""; //--- @Expose public boolean AutoBugReportsLoad = true; @Expose public boolean AutoTestsLoad = true; @Expose public boolean ConfirmPassesStart = true; @Expose public boolean ShowPassesDone = true; @Expose public boolean FocusPassesResult = true; //-- @Expose public boolean collapseCredentials = false; @Expose public boolean collapseFileGraphs = false; @Expose public boolean collapseFileMessages = false; @Expose public boolean collapseProjectTrees = false; //-- @Expose public int EditorFontSize = 14; @Expose public int ComponentsWindowWidth = 650; @Expose public int ComponentsWindowHeight = 250; //-- @Expose public int Kernels = Utils.getHalfKernels(); @Expose public String LocalMakePathWindows = "C:\\MinGW\\msys\\1.0\\bin\\make.exe"; //-- @Expose public int CheckTestingIntervalSeconds = 10; //интервал автопроверки тестирования @Expose public boolean AutoCheckTesting = false; // проверять ли задачи тестирования при включенном визуализаторе. @Expose public boolean EmailOnTestingProgress = false; //включено ли оповещение по email о результатах тестирования. //-- @Expose public int lastMachineId = CommonConstants.Nan; @Expose public int lastUserId = CommonConstants.Nan; @Expose public int lastCompilerId = CommonConstants.Nan; //-- сравнение @Expose public boolean RegisterOn = false; @Expose public boolean SpacesOn = false; @Expose public boolean EmptyLinesOn = false; @Expose public boolean FortranWrapsOn = false; @Expose public boolean ExtensionsOn = false; @Expose public boolean ComparsionDiffMergeOn = false; //компактность-- @Expose public boolean ShowFullArraysDeclarations = false; @Expose public boolean ShowFullTabsNames = true; @Expose public boolean SmallScreen = false; @Expose public int BugReportsAgeLimit = 2; @Expose public int FastAccessPassesCount = 10; @Expose public int LastOpenedProjectsCount = 10; //-- public NormalProperties() { Mode = _VisualDVM.Mode.Normal; } public NormalProperties(File file_in) { super(_VisualDVM.Mode.Normal, file_in); } @Override public String getFieldDescription(String fieldName) { switch (fieldName) { case "Email": return "Адрес электронной почты"; case "Kernels": return "Число ядер при компиляции"; case "LocalMakePathWindows": return "Путь к make.exe"; case "SmallScreen": return "Маленький экран"; case "ShowFullTabsNames": return "Показывать полные имена вкладок"; case "ShowFullArraysDeclarations": return "Показывать развернутый список объявлений массивов"; case "LastOpenedProjectsCount": return "Число отображаемых последних открытых проектов"; case "FastAccessPassesCount": return "Число проходов на панели быстрого доступа"; case "Workspace": return "Рабочее пространство визуализатора"; case "BugReportsAgeLimit": return "Срок хранения отчетов об ошибках (месяцы)"; case "ExtensionsOn": return "Учитывать расширения файлов"; case "FortranWrapsOn": return "Учитывать переносы"; case "EmptyLinesOn": return "Учитывать пустые строки"; case "SpacesOn": return "Учитывать пробелы и табуляции"; case "RegisterOn": return "Учитывать регистр"; case "ComparsionDiffMergeOn": return "Автоматическое сравнение"; case "AutoBugReportsLoad": return "Автоматическая синхронизация отчётов об ошибках"; case "AutoTestsLoad": return "Автоматическая синхронизация системы тестирования"; case "ShowPassesDone": return "Сообщать об успешном выполнении проходов"; case "ConfirmPassesStart": return "Запрашивать подтверждения начала выполнения проходов"; case "FocusPassesResult": return "Переходить на результирующую вкладку проходов по их завершении"; case "collapseCredentials": return "Свернуть раздел машин"; case "collapseFileGraphs": return "Свернуть раздел графов файла"; case "collapseFileMessages": return "Свернуть раздел сообщений файла"; case "collapseProjectTrees": return "Свернуть раздел деревьев проекта"; default: return "?"; } } @Override public boolean controlAction(String fieldName, JMenuItem control) { return (Global.mainModule.getPass(PassCode.UpdateProperty).Do(fieldName)); } public void SynchronizeAccount(UserAccount account){ Name = account.name; Email = account.email; Update(); } }