/// <summary> /// すべての設定を保存する /// </summary> public async void SaveSettingsAsync() => await WPFHelper.InvokeAsync(() => { SpellPanelTable.Instance.Save(); SpellTable.Instance.Save(); TickerTable.Instance.Save(); TagTable.Instance.Save(); TimelineSettings.Save(); Settings.Default.Save(); }, DispatcherPriority.Background);
/// <summary> /// 後片付けをする /// </summary> public void DeInitPluginCore() { if (!this.isLoaded) { return; } try { // 付加情報オーバーレイを閉じる LPSView.CloseLPS(); POSView.ClosePOS(); PluginMainWorker.Instance.End(); PluginMainWorker.Free(); TimelineController.Free(); this.RemoveSwitchVisibleButton(); this.PluginStatusLabel.Text = "Plugin Exited"; // 設定ファイルを保存する TimelineSettings.Save(); Settings.Default.Save(); Settings.Default.DeInit(); FFXIV.Framework.Config.Save(); FFXIV.Framework.Config.Free(); Thread.Sleep(50); Logger.Write("Plugin Exited."); } catch (Exception ex) { ActGlobals.oFormActMain.WriteExceptionLog( ex, "Plugin deinit error."); Logger.Write("Plugin deinit error.", ex); if (this.PluginStatusLabel != null) { this.PluginStatusLabel.Text = "Plugin Exit Error"; } } Logger.DeInit(); }
/// <summary> /// 後片付けをする /// </summary> public void DeInitPluginCore() { try { // 付加情報オーバーレイを閉じる LPSView.CloseLPS(); POSView.ClosePOS(); PluginMainWorker.Instance.End(); PluginMainWorker.Free(); TimelineController.Free(); this.RemoveSwitchVisibleButton(); this.PluginStatusLabel.Text = "Plugin Exited"; // 設定ファイルを保存する TimelineSettings.Save(); Settings.Default.Save(); Logger.Write("Plugin Exited."); } catch (Exception ex) { ActGlobals.oFormActMain.WriteExceptionLog( ex, "Plugin deinit error."); Logger.Write("Plugin deinit error.", ex); if (this.PluginStatusLabel != null) { this.PluginStatusLabel.Text = "Plugin Exit Error"; } ModernMessageBox.ShowDialog( "Plugin deinit error !", "ACT.SpecialSpellTimer", System.Windows.MessageBoxButton.OK, ex); } Logger.DeInit(); }