Example #1
0
        RangeValueGenerator CreateRangeValueGenerator(XElement rangeValueElement)
        {
            int?min = null;
            int?max = null;

            //Get min
            XAttribute minAttribute = rangeValueElement.Attribute("min");

            if (minAttribute != null)
            {
                int value;
                if (TryParseIntegerAttribute(rangeValueElement, minAttribute, out value))
                {
                    min = value;
                }
            }
            else
            {
                _errorCollection.AddAttributeNotFound("min", rangeValueElement);
            }

            //Get max
            XAttribute maxAttribute = rangeValueElement.Attribute("max");

            if (maxAttribute != null)
            {
                int value;
                if (TryParseIntegerAttribute(rangeValueElement, maxAttribute, out value))
                {
                    max = value;
                }
            }
            else
            {
                _errorCollection.AddAttributeNotFound("max", rangeValueElement);
            }

            if (!min.HasValue || !max.HasValue)
            {
                return(null);
            }

            RangeValueGenerator rangeValueGenerator = new RangeValueGenerator(min.Value, max.Value);

            //Optionally get step
            XAttribute stepAttribute = rangeValueElement.Attribute("step");

            if (stepAttribute != null)
            {
                int value;
                if (TryParseIntegerAttribute(rangeValueElement, stepAttribute, out value))
                {
                    rangeValueGenerator.Step = value;
                }
            }

            return(rangeValueGenerator);
        }
Example #2
0
    public static AbstractValueGenerator getValueGenerator(XmlNode generator)
    {
        AbstractValueGenerator gen = null;

        if (generator != null)
        {
            if ("RangeValueGenerator".Equals(generator["type"].InnerText))
            {
                gen = new RangeValueGenerator(float.Parse(generator["min"].InnerText), float.Parse(generator["max"].InnerText));
            }
            if ("ConstantValueGenerator".Equals(generator["type"].InnerText))
            {
                gen = new ConstantValueGenerator(float.Parse(generator["value"].InnerText));
            }
        }
        return(gen);
    }