private void FrmMain_Load(object sender, EventArgs e) { #if DEBUG System.Diagnostics.Debugger.Launch(); #endif // инициализация общих данных приложения appData.Init(Path.GetDirectoryName(Application.ExecutablePath), this); // локализация LocalizeForm(); LocalizeAttributes(); // проверка существования второй копии приложения if (SecondInstanceExists()) { ScadaUiUtils.ShowInfo(AppPhrases.CloseSecondInstance); Close(); log.WriteAction(Localization.UseRussian ? "Вторая копия Редактора схем закрыта." : "The second instance of Scheme Editor has been closed."); return; } // загрузка настроек приложения string errMsg; if (!settings.Load(appData.AppDirs.ConfigDir + Settings.DefFileName, out errMsg)) { log.WriteError(errMsg); ScadaUiUtils.ShowError(errMsg); } // загрузка компонентов appData.LoadComponents(); // настройка элментов управления lvCompTypes.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize); lblStatus.Text = ""; FillComponentTypes(); // создание новой схемы InitScheme(); // загрузка состояния формы FormState formState = new FormState(); if (formState.Load(appData.AppDirs.ConfigDir + FormState.DefFileName, out errMsg)) { ImageEditor.ImageDir = formState.ImageDir; ofdScheme.InitialDirectory = formState.SchemeDir; } else { log.WriteError(errMsg); ScadaUiUtils.ShowError(errMsg); } formState.Apply(this); UpdateFormStateDTO(); // запуск механизма редактора схем if (appData.StartEditor()) { // открытие браузера со страницей редактора OpenBrowser(); } else { ScadaUiUtils.ShowInfo(string.Format(AppPhrases.FailedToStartEditor, log.FileName)); Close(); } }
/// <summary> /// Обновить объект состояния формы /// </summary> private void UpdateFormStateDTO(FormState formState) { formStateDTO = formState.GetFormStateDTO(WindowState != FormWindowState.Minimized); }