Exemplo n.º 1
0
        private void InitializeFromSettings()
        {
            var localization = AvailableLocalizations.FirstOrDefault(localization => localization.CultureName == Settings.Default.SelectedLanguage);

            if (localization != null)
            {
                Current = localization;
            }
        }
Exemplo n.º 2
0
        public void SetLocalization(string code)
        {
            SelectedLocalization = AvailableLocalizations.First(a => a.Abbreviation.Equals(code));
            var translationsQuery =
                from keyvalues in Localization.Values.Where(a => a.Localization.Code.Equals(SelectedLocalization.Abbreviation))
                join keys in Localization.Keys
                on keyvalues.Key.Id equals keys.Id
                select new { keyvalues.Key.KeyName, keyvalues.KeyLocalizationValue };

            SelectedLocalization.Translations = new Dictionary <string, string>();
            foreach (var translation in translationsQuery)
            {
                SelectedLocalization.Translations.Add(translation.KeyName, translation.KeyLocalizationValue);
            }
        }
Exemplo n.º 3
0
        public static string GetEnumDescriptions(AvailableLocalizations value)
        {
            FieldInfo fi = value.GetType().GetField(value.ToString());

            DescriptionAttribute attribute = fi.GetCustomAttribute <DescriptionAttribute>(false);

            if (attribute != null)
            {
                return(attribute.Description);
            }
            else
            {
                return(value.ToString());
            }
        }
Exemplo n.º 4
0
        public LocalizationManager(IEnumerable <RealLocalization <TKeys> > realLocalizations, bool useAutoLocalization = true)
        {
            _realLocalizations = realLocalizations.ToArray();
            if (_realLocalizations.Length <= 0)
            {
                throw new ArgumentException($"At least one localization should be specified.", nameof(realLocalizations));
            }

            _fallbackLocalization = _realLocalizations.FirstOrDefault(loc => loc.Keys.IsFallback) ?? _realLocalizations.First();

            _systemLocalization = _realLocalizations.FirstOrDefault(localization => localization.CultureName == _defaultSystemCultureName);

            _useAutoLocalization = useAutoLocalization;
            InitializeAutoLocalization();

            _current = AvailableLocalizations.First();
        }