e97fe36ba0
* Remove unused dalamud packager overrides * Use category tags, add actual description * Use .net7 * Update DalamudPackager, update for Api8 * Remove hardcoded images, we'll use lumina to get these dynamically * Add KamiLib * Refactor Currency Alert * Add LocalizationManager.cs * remove trailing comma * Add No Decoration flag * More touchups and features * Increase Version Number 0.5.0.0 * Move Chat Notifications to its own category * Hide overlay if not logged in or there are no warnings to show * Increase update frequency to 4x per second
41 lines
1.0 KiB
C#
41 lines
1.0 KiB
C#
using System;
|
|
using System.Globalization;
|
|
using Dalamud.Logging;
|
|
|
|
namespace CurrencyAlert.Localization;
|
|
|
|
internal class LocalizationManager : IDisposable
|
|
{
|
|
private static LocalizationManager? _instance;
|
|
public static LocalizationManager Instance => _instance ??= new LocalizationManager();
|
|
|
|
public void Initialize()
|
|
{
|
|
Strings.Culture = new CultureInfo(Service.PluginInterface.UiLanguage);
|
|
|
|
Service.PluginInterface.LanguageChanged += OnLanguageChange;
|
|
}
|
|
|
|
public static void Cleanup()
|
|
{
|
|
_instance?.Dispose();
|
|
}
|
|
|
|
public void Dispose()
|
|
{
|
|
Service.PluginInterface.LanguageChanged -= OnLanguageChange;
|
|
}
|
|
|
|
private void OnLanguageChange(string languageCode)
|
|
{
|
|
try
|
|
{
|
|
PluginLog.Information($"Loading Localization for {languageCode}");
|
|
Strings.Culture = new CultureInfo(languageCode);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
PluginLog.Error(ex, "Unable to Load Localization");
|
|
}
|
|
}
|
|
} |