Esempio n. 1
0
        TranslationSource()
        {
            foreach (var culture in CultureInfo.GetCultures(CultureTypes.AllCultures))
            {
                if (culture.Equals(CultureInfo.InvariantCulture) || culture.Name == "en-US")
                {
                    continue;
                }

                if (culture.Name == "en")
                {
                    AvailableCultures.Add(culture);

                    continue;
                }

                try
                {
                    if (Properties.Resources.ResourceManager.GetResourceSet(culture, true, false) != null)
                    {
                        AvailableCultures.Add(culture);
                    }
                }
                catch
                {
                    // Ignore Culture Not Found and other Exceptions.
                }
            }

            var savedCulture = Settings.Instance.Language;

            CurrentCulture = AvailableCultures.FirstOrDefault(Culture => Culture.Name == savedCulture) ?? new CultureInfo("en");
        }
Esempio n. 2
0
        TranslationSource()
        {
            foreach (var culture in CultureInfo.GetCultures(CultureTypes.SpecificCultures))
            {
                try
                {
                    if (Properties.Resources.ResourceManager.GetResourceSet(culture, true, false) != null)
                    {
                        AvailableCultures.Add(culture);
                    }
                }
                catch
                {
                    // Ignore Culture Not Found and other Exceptions.
                }
            }

            if (!AvailableCultures.Any(culture => culture.Name == "en-US"))
            {
                AvailableCultures.Insert(0, new CultureInfo("en-US"));
            }

            var savedCulture = Settings.Instance.Language;

            CurrentCulture = new CultureInfo(AvailableCultures.Any(culture => culture.Name == savedCulture) ? savedCulture : "en-US");
        }
Esempio n. 3
0
 /// <summary>
 /// Thread-safe access to the AvailableCultures list.
 /// </summary>
 /// <param name="c">The CultureInfo.</param>
 protected void AddCulture(CultureInfo c)
 {
     lock (AvailableCultureListLock)
     {
         if (!AvailableCultures.Contains(c))
         {
             AvailableCultures.Add(c);
         }
     }
 }
Esempio n. 4
0
 // add culture to list of available ones
 private void AddCultureToAvailables(string culture)
 {
     if (!AvailableCultures.ContainsKey(culture))
     {
         if (culture.ToLower() == "default")
         {
             AvailableCultures.Add(culture, string.Empty);
         }
         else
         {
             AvailableCultures.Add(culture, new CultureInfo(culture).EnglishName);
         }
     }
 }
Esempio n. 5
0
        private void LoadCultures()
        {
            var supportedCultures = new string[] { "en", "nl", "da", "ru" };

            foreach (var culture in supportedCultures)
            {
                var cultureInfo = CultureInfo.GetCultureInfo(culture);

                AvailableCultures.Add(new CultureItem
                {
                    DisplayName = cultureInfo.DisplayName.ToUpper(),
                    CultureKey  = cultureInfo.Name
                });
            }

            var settings = settingsRepository.GetSettings();

            SelectedCulture = AvailableCultures.FirstOrDefault
                              (
                x => x.CultureKey == settings.PreferredLocale
                              );

            Toggled = settings.EnableInAllProjects ? DisableText : EnableText;
        }