예제 #1
0
        public SettingsLoader(IThemeLoader themeLoader,

                              ILocalizationLoader localizationLoader)
        {
            _themeLoader        = themeLoader;
            _localizationLoader = localizationLoader;
        }
예제 #2
0
        // ReSharper restore MemberCanBePrivate.Global

        #endregion Properties

        #region Construction

        /// <summary>
        /// Initializes a new instance of the <see cref="LocalizationRegistry" /> class.
        /// </summary>
        /// <param name="eventAggregator">The event aggregator.</param>
        /// <param name="localizationLoader">The localization loader.</param>
        /// <exception cref="System.ArgumentNullException">eventAggregator
        /// or
        /// logger</exception>
        // ReSharper disable once MemberCanBeProtected.Global
        public LocalizationRegistry(IEventAggregator eventAggregator, ILocalizationLoader localizationLoader)
        {
            if (eventAggregator == null)
            {
                throw new ArgumentNullException(nameof(eventAggregator));
            }
            if (localizationLoader == null)
            {
                throw new ArgumentNullException(nameof(localizationLoader));
            }

            eventAggregator.GetEvent <LocalizationChangingEvent>().Subscribe(OnLocalizationChangingEvent);
            _providers      = localizationLoader.SelectProviders().ToList();
            CurrentProvider = _providers.FirstOrDefault();
        }
예제 #3
0
    private void Awake()
    {
        ILocalizationLoader loader = null;

        if (loaderType == LoaderType.Resources)
        {
            loader = new LocalizationResourcesLoader();
        }
        else if (loaderType == LoaderType.AssetBudnle)
        {
            loader = new LocalizationAssetBundleLoader();
        }
        else if (loaderType == LoaderType.Addressable)
        {
            loader = new LocalizationAddressableLoader();
        }
        // var loader = new LocalizationResourcesLoader();

        LocalizationManager.Init(loader, LocalizationFileType.Txt);
        index = LocalizationManager.Singleton.CurrentLanguageIndex;
    }
 private void GetWebGLLocalozationLoader() => localizationLoader = GetComponent <LocalizationLoaderWebGL>();
 private void GetDesktopLocalozationLoader() => localizationLoader = GetComponent <LocalizationLoaderDesktop>();
예제 #6
0
 public static async Task LoadStrings(ILocalizationLoader localizationLoader)
 {
     _localizedStringsByLanguage = await localizationLoader.LoadLocalizedStrings();
 }