public void Show() { CqaLabel.Heading1("Install & Uninstall"); if (_jqaManager.CheckIfJqaIsInstalling()) { CqaLabel.Bold("Status: Installing ..."); } else if (JqaManager.CheckIfJqaIsInstalled()) { CqaLabel.Success("Status: Installed"); } else { CqaLabel.Error("Status: Not Installed"); } if (!JqaManager.CheckIfJqaIsInstalled()) { GUILayout.Label("CQA is not installed yet."); GUILayout.Label("To install it we need to download files from jqassistant.org and github.com."); GUILayout.Label("If you agree click the button below."); EditorGUILayout.Space(); if (CqaButton.NormalButton("Install")) { _jqaManager.InstallJqa(); Thread.Sleep(10); } return; } if (_jqaManager.CheckIfJqaIsInstalling()) { GUILayout.Label("For more information have a look at the Unity console."); EditorGUILayout.Space(); if (CqaButton.NormalButton("Abort Installation")) { _jqaManager.AbortInstallation(); while (_jqaManager.CheckIfJqaIsInstalling()) { Thread.Sleep(0); } JqaManager.UninstallJqa(); } return; } EditorGUILayout.Space(); if (CqaButton.NormalButton("Uninstall")) { JqaManager.UninstallJqa(); } }
private void InitializeFieldsIfNecessary() { if (_jqaManager != null) { return; } _jqaManager = new JqaManager(); _historyManager = new HistoryManager(); _ruleSelector = new RuleSelector(); _jqaExecutor = new JqaExecutor(_historyManager, _ruleSelector); _scanAndReportTab = new ScanAndReportTab(_jqaExecutor, _historyManager, _ruleSelector); _installTab = new InstallTab(_jqaManager); _manageCustomRulesTab = new ManageCustomRulesTab(); _navigationButtonStyle = NavigationButtonStyleProvider.Provide(); }
public InstallTab(JqaManager jqaManager) { _jqaManager = jqaManager; }
public void Show() { CqaLabel.Heading1("Scan"); if (!JqaManager.CheckIfJqaIsInstalled()) { CqaLabel.Error("CQA is currently not installed."); return; } CqaLabel.Normal("CQA scans all scripts inside your Assets folder."); History.History history = _historyManager.LoadHistory(); if (history != null) { CqaLabel.Normal("The last scan was at " + history.GetLastScan() + "."); } EditorGUI.BeginDisabledGroup(_jqaExecutor.IsAnyProcessRunning()); if (CqaButton.NormalButton("Scan Assets")) { _jqaExecutor.ScanAssets(); } if (Directory.Exists(JqaPaths.Instance.BuildJqaStorePath()) && CqaButton.NormalButton("Start Server")) { _jqaExecutor.StartServer(); } EditorGUI.EndDisabledGroup(); if (_jqaExecutor.IsScanProcessRunning()) { CqaLabel.Bold("Status: Running ..."); // FIXME: Stopping the process does currently not work. // // if (CqaButton.NormalButton("Stop Process")) // { // _jqaExecutor.StopProcess(); // } } GUILayout.Space(30); CqaLine.DrawHorizontalLine(); CqaLabel.Heading1("Report"); if (!JqaExecutor.DidFinishSuccessfullyOnce()) { CqaLabel.Error("You must scan your project before you can create a report."); return; } CqaLabel.Normal("Select rules that you want to be checked in the report."); if (_jqaExecutor.IsReportProcessRunning()) { CqaLabel.Bold("Status: Running ..."); // FIXME: Stopping the process does currently not work. // // if (CqaButton.NormalButton("Stop Process")) // { // _jqaExecutor.StopProcess(); // } } _ruleSelector.OnGUI(); ShowReportButtons(); }