public ModelLoader() { KnownTypesBinder.TypeNotFound += OnTypeNotFound; ExtensionsConfigurationManager.SetConfigurationUserLevel(ConfigurationUserLevel.None); Manager.Instance.LoadExtensions(ExecutionMode.Simplified); Manager.Instance.ApplyExtensionInitializers(); }
private void LoadStatusInfoProviders() { _providers = Manager.Instance.GetExtensions <IStatusInfoProviderExtension>()?.ToArray(); if (_providers?.Any() ?? false) { _addStatusInfoProvider.Enabled = true; var config = ExtensionsConfigurationManager.GetConfigurationSection(); var bars = config.StatusBarItems?.ToArray(); if (bars?.Any() ?? false) { foreach (var bar in bars) { var provider = _providers.FirstOrDefault(x => string.CompareOrdinal(bar, x.GetExtensionId()) == 0); if (provider != null) { AddProviderLabel(provider); } } } if (string.IsNullOrWhiteSpace(config.UserDictionary)) { config.UserDictionary = Path.Combine(Program.Folder, "ThreatsManagerPlatform_userdict.txt"); config.CurrentConfiguration.Save(); } } }
private void UpdateProviderConfig() { var config = ExtensionsConfigurationManager.GetConfigurationSection(); var providers = GetLoadedStatusInfoProviders()?.ToArray(); if (providers?.Any() ?? false) { config.StatusBarItems = providers; config.CurrentConfiguration.Save(); } }
public OptionsForm() { InitializeComponent(); _loading = true; var folders = Manager.Instance.Configuration.Folders?.ToArray(); if (folders?.Any() ?? false) { _folders.Items.AddRange(folders); } var prefixes = Manager.Instance.Configuration.Prefixes?.ToArray(); if (prefixes?.Any() ?? false) { _prefixes.Items.AddRange(prefixes); _validationPrefix.Checked = true; } var certificates = Manager.Instance.Configuration.Certificates?.ToArray(); if (certificates?.Any() ?? false) { _certificates.Items.AddRange(certificates); _validationCertificates.Checked = true; } var executionModes = EnumExtensions.GetEnumLabels <ExecutionMode>()?.ToArray(); if (executionModes?.Any() ?? false) { _executionMode.Items.AddRange(executionModes); } var config = ExtensionsConfigurationManager.GetConfigurationSection(); _executionMode.SelectedItem = config.Mode.GetEnumLabel(); _tooltip.SetToolTip(_executionMode, config.Mode.GetEnumDescription()); _enableSmartSave.Checked = config.SmartSave; _smartSaveInstances.Value = config.SmartSaveCount; _smartSaveAutosave.Value = config.SmartSaveInterval; _userDictionary.Text = config.UserDictionary; if ((Application.UserAppDataRegistry?.GetValue("Consent", false) is string consentString) && bool.TryParse(consentString, out var consent)) { _disableTelemetry.Checked = !consent; }
private void InitializeExtensionsManagement() { Manager.Instance.ShowMessage += DesktopAlertAwareExtensionOnShowMessage; Manager.Instance.ShowWarning += DesktopAlertAwareExtensionOnShowWarning; Manager.Instance.PanelForEntityRequired += CreatePanel; var config = ExtensionsConfigurationManager.GetConfigurationSection(); _executionMode = config.Mode; Manager.Instance.LoadExtensions(_executionMode, ExceptExtension); HandleExtensionInitializers(); DiagramNameUpdater(); var actions = Manager.Instance.GetExtensions <IContextAwareAction>(); ItemEditor.InitializeContextMenu(actions); }