/// <summary> /// Инициализировать плагин /// </summary> public override void Init() { // создание объектов для обновления словарей string dir = Path.Combine(AppDirs.PluginsDir, "Scheme", "lang"); schemeDictUpdater = new DictUpdater(dir, "ScadaScheme", null, Log); pluginDictUpdater = new DictUpdater(dir, "PlgScheme", SchemePhrases.Init, Log); // инициализация контекста схем и менеджера компонентов AppDirs appDirs = AppData.GetAppData().AppDirs; SchemeContext.GetInstance().Init(appDirs); CompManager.GetInstance().Init(appDirs, Log); }
/// <summary> /// Инициализировать плагин /// </summary> public override void Init() { if (SchemeContext.GetInstance().EditorMode) { // загрузка словарей if (!Localization.LoadDictionaries(Path.Combine(AppDirs.PluginsDir, "SchBasicComp", "lang"), "PlgSchBasicComp", out string errMsg)) { Log.WriteError(errMsg); } // перевод атрибутов классов, которые используются при редактировании, но не являются компонентами схем AttrTranslator attrTranslator = new AttrTranslator(); attrTranslator.TranslateAttrs(typeof(ColorCondition)); attrTranslator.TranslateAttrs(typeof(PopupSize)); } }
/// <summary> /// Загрузить компоненты /// </summary> public void LoadComponents() { if (Directory.Exists(Settings.WebDir)) { AppDirs.WebDir = Settings.WebDir; } else { Log.WriteError(Localization.UseRussian ? "Не существует директория веб-интерфейса, указанная в настройках" : "Web interface directory, specified in the settings, does not exist"); } Web.AppDirs webAppDirs = new Web.AppDirs(); webAppDirs.Init(AppDirs.WebDir); CompManager.Init(webAppDirs, Log); CompManager.LoadCompFromFiles(); SchemeContext.GetInstance().Init(webAppDirs); }