Пример #1
0
        /// <summary>
        /// Method to extract all translatable strings from an object.
        /// </summary>
        /// <returns></returns>
        public override List<string> GetXlateStrings()
        {
            List<string> xlateStrings = base.GetXlateStrings();

            xlateStrings.AddRange(PreselectedValues
                .Where(e => e.IsStandardValue)
                .Select(e => e.Value.Value));

            return xlateStrings;
        }
Пример #2
0
        /// <summary>
        /// Method to extract all translatable strings from an object.
        /// </summary>
        /// <returns></returns>
        public override List <string> GetXlateStrings()
        {
            var xlateStrings = base.GetXlateStrings();

            //Add preselected values to translation
            xlateStrings.AddRange(PreselectedValues
                                  .Where(e => e.IsStandardValue)
                                  .Select(element => element.Value));

            return(xlateStrings);
        }
Пример #3
0
        /// <summary>
        /// Method to set all translatable strings on an object.  The "key" is the original string
        /// value and the "value" is the translated string value.
        /// </summary>
        /// <param name="xlateStrings"></param>
        public override void SetXlateStrings(IDictionary<string, string> xlateStrings)
        {
            base.SetXlateStrings(xlateStrings);

            foreach (IQVarElement<IQEnum> element in PreselectedValues.Where(e => e.IsStandardValue))
            {
                string xlateString;
                if (xlateStrings.TryGetValue(element.Value.Value, out xlateString))
                    element.Value.Value = xlateString;
            }
        }
Пример #4
0
        private int GetNextKey()
        {
            var orderedEnums = PreselectedValues.Select(e => e.Value).OrderBy(e => e.Key);

            int currentValue = 1;

            foreach(IQEnum e in orderedEnums)
            {
                if (e.Key != currentValue)
                    return currentValue;

                currentValue++;
            }
            return currentValue;
        }
Пример #5
0
        /// <summary>
        /// Performs additional validation of pre-defined values for the IQVarEnumActivity.
        /// </summary>
        /// <param name="errors"></param>
        /// <param name="pValidationMode"></param>
        public override void ValidatePreselectedValues(IList<ValidationError> errors, ValidationMode pValidationMode)
        {
            if(PreselectedValues.Count == 0)
            {
                //Hack to clear the selected values if no pre-selected values exist.
                if (SetToNoneAction != null)
                    SetToNoneAction();
                else
                    SetStateToNotSet();
            }

            var groups = PreselectedValues.GroupBy(e => e.Value);

            if (groups.Any(group => group.Count() > 1))
                errors.Add(new ValidationError(Strings.IQEnumVarActivity_DuplicateKey, false, "Config"));

            base.ValidatePreselectedValues(errors, pValidationMode);
        }
Пример #6
0
 private IQEnum FindPreselectedIQEnumByKey(int pKey)
 {
     return PreselectedValues.Where(e => e.IsStandardValue)
         .Select(e => e.Value)
         .FirstOrDefault(e => e.Key == pKey);
 }