Skip to content

Commit

Permalink
Wait for save to apply config changes
Browse files Browse the repository at this point in the history
  • Loading branch information
NPittinger committed Nov 10, 2021
1 parent 9938b84 commit 72ed5c7
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 11 deletions.
26 changes: 17 additions & 9 deletions Dalamud.RichPresence/Interface/RichPresenceConfigWindow.cs
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,20 @@

using Dalamud.Logging;

using Dalamud.RichPresence.Configuration;
using Dalamud.RichPresence.Models;

namespace Dalamud.RichPresence.Interface
{
internal class RichPresenceConfigWindow
{
private bool IsOpen = false;
private RichPresenceConfig RichPresenceConfig;

public RichPresenceConfigWindow()
{
RichPresenceConfig = RichPresencePlugin.DalamudPluginInterface.GetPluginConfig() as RichPresenceConfig ?? new RichPresenceConfig();
}

public void DrawRichPresenceConfigWindow()
{
Expand All @@ -36,16 +43,16 @@ public void DrawRichPresenceConfigWindow()

ImGui.PushStyleVar(ImGuiStyleVar.ItemSpacing, new Vector2(1, 3));

ImGui.Checkbox(RichPresencePlugin.LocalizationManager.Localize("DalamudRichPresenceShowName", LocalizationLanguage.Plugin), ref RichPresencePlugin.RichPresenceConfig.ShowName);
ImGui.Checkbox(RichPresencePlugin.LocalizationManager.Localize("DalamudRichPresenceShowFreeCompany", LocalizationLanguage.Plugin), ref RichPresencePlugin.RichPresenceConfig.ShowFreeCompany);
ImGui.Checkbox(RichPresencePlugin.LocalizationManager.Localize("DalamudRichPresenceShowWorld", LocalizationLanguage.Plugin), ref RichPresencePlugin.RichPresenceConfig.ShowWorld);
ImGui.Checkbox(RichPresencePlugin.LocalizationManager.Localize("DalamudRichPresenceShowName", LocalizationLanguage.Plugin), ref RichPresenceConfig.ShowName);
ImGui.Checkbox(RichPresencePlugin.LocalizationManager.Localize("DalamudRichPresenceShowFreeCompany", LocalizationLanguage.Plugin), ref RichPresenceConfig.ShowFreeCompany);
ImGui.Checkbox(RichPresencePlugin.LocalizationManager.Localize("DalamudRichPresenceShowWorld", LocalizationLanguage.Plugin), ref RichPresenceConfig.ShowWorld);
ImGui.Separator();
ImGui.Checkbox(RichPresencePlugin.LocalizationManager.Localize("DalamudRichPresenceShowStartTime", LocalizationLanguage.Plugin), ref RichPresencePlugin.RichPresenceConfig.ShowStartTime);
ImGui.Checkbox(RichPresencePlugin.LocalizationManager.Localize("DalamudRichPresenceResetTimeWhenChangingZones", LocalizationLanguage.Plugin), ref RichPresencePlugin.RichPresenceConfig.ResetTimeWhenChangingZones);
ImGui.Checkbox(RichPresencePlugin.LocalizationManager.Localize("DalamudRichPresenceShowStartTime", LocalizationLanguage.Plugin), ref RichPresenceConfig.ShowStartTime);
ImGui.Checkbox(RichPresencePlugin.LocalizationManager.Localize("DalamudRichPresenceResetTimeWhenChangingZones", LocalizationLanguage.Plugin), ref RichPresenceConfig.ResetTimeWhenChangingZones);
ImGui.Separator();
ImGui.Checkbox(RichPresencePlugin.LocalizationManager.Localize("DalamudRichPresenceShowJob", LocalizationLanguage.Plugin), ref RichPresencePlugin.RichPresenceConfig.ShowJob);
ImGui.Checkbox(RichPresencePlugin.LocalizationManager.Localize("DalamudRichPresenceAbbreviateJob", LocalizationLanguage.Plugin), ref RichPresencePlugin.RichPresenceConfig.AbbreviateJob);
ImGui.Checkbox(RichPresencePlugin.LocalizationManager.Localize("DalamudRichPresenceShowLevel", LocalizationLanguage.Plugin), ref RichPresencePlugin.RichPresenceConfig.ShowLevel);
ImGui.Checkbox(RichPresencePlugin.LocalizationManager.Localize("DalamudRichPresenceShowJob", LocalizationLanguage.Plugin), ref RichPresenceConfig.ShowJob);
ImGui.Checkbox(RichPresencePlugin.LocalizationManager.Localize("DalamudRichPresenceAbbreviateJob", LocalizationLanguage.Plugin), ref RichPresenceConfig.AbbreviateJob);
ImGui.Checkbox(RichPresencePlugin.LocalizationManager.Localize("DalamudRichPresenceShowLevel", LocalizationLanguage.Plugin), ref RichPresenceConfig.ShowLevel);

ImGui.PopStyleVar();

Expand All @@ -56,7 +63,8 @@ public void DrawRichPresenceConfigWindow()
if (ImGui.Button(RichPresencePlugin.LocalizationManager.Localize("DalamudRichPresenceSaveAndClose", LocalizationLanguage.Plugin)))
{
this.Close();
RichPresencePlugin.DalamudPluginInterface.SavePluginConfig(RichPresencePlugin.RichPresenceConfig);
RichPresencePlugin.DalamudPluginInterface.SavePluginConfig(RichPresenceConfig);
RichPresencePlugin.RichPresenceConfig = this.RichPresenceConfig;
PluginLog.Log("Settings saved.");
}

Expand Down
4 changes: 2 additions & 2 deletions Dalamud.RichPresence/RichPresencePlugin.cs
Original file line number Diff line number Diff line change
Expand Up @@ -45,8 +45,8 @@ internal class RichPresencePlugin : IDalamudPlugin, IDisposable
internal static LocalizationManager LocalizationManager { get; private set; }
internal static DiscordPresenceManager DiscordPresenceManager { get; private set; }

private RichPresenceConfigWindow RichPresenceConfigWindow;
internal static RichPresenceConfig RichPresenceConfig { get; private set; }
private static RichPresenceConfigWindow RichPresenceConfigWindow;
internal static RichPresenceConfig RichPresenceConfig { get; set; }

private List<TerritoryType> Territories;
private DateTime startTime = DateTime.UtcNow;
Expand Down

0 comments on commit 72ed5c7

Please sign in to comment.