예제 #1
0
        private bool SetStyleValue(StylePropertyId id, StyleFloat inlineValue, StyleFloat sharedValue)
        {
            var sv = new StyleValue();

            if (TryGetStyleValue(id, ref sv))
            {
                if (sv.number == inlineValue.value && sv.keyword == inlineValue.keyword)
                {
                    return(false);
                }
            }
            else if (inlineValue.keyword == StyleKeyword.Null)
            {
                return(false);
            }

            sv.id      = id;
            sv.keyword = inlineValue.keyword;
            sv.number  = inlineValue.value;

            SetStyleValue(sv);

            if (inlineValue.keyword == StyleKeyword.Null)
            {
                sv.keyword = sharedValue.keyword;
                sv.number  = sharedValue.value;
            }

            ApplyStyleValue(sv);
            return(true);
        }
        private bool SetInlineStyle(StylePropertyID id, StyleFloat inlineValue, StyleFloat sharedValue)
        {
            var sv = new StyleValue();

            if (TryGetInlineStyleValue(id, ref sv))
            {
                if (sv.number == inlineValue.value && sv.keyword == inlineValue.keyword)
                {
                    return(false);
                }
            }

            sv.id      = id;
            sv.keyword = inlineValue.keyword;
            sv.number  = inlineValue.value;

            SetInlineStyle(sv);

            int specificity = StyleValueExtensions.InlineSpecificity;

            if (inlineValue.keyword == StyleKeyword.Null)
            {
                specificity = sharedValue.specificity;
                sv.keyword  = sharedValue.keyword;
                sv.number   = sharedValue.value;
            }

            ApplyStyleValue(sv, specificity);
            return(true);
        }
예제 #3
0
        public override bool Equals(object obj)
        {
            bool flag = !(obj is StyleFloat);
            bool result;

            if (flag)
            {
                result = false;
            }
            else
            {
                StyleFloat lhs = (StyleFloat)obj;
                result = (lhs == this);
            }
            return(result);
        }
        public StyleFloat GetStyleFloat(StylePropertyId id)
        {
            StyleValue styleValue = default(StyleValue);
            bool       flag       = this.TryGetStyleValue(id, ref styleValue);
            StyleFloat result;

            if (flag)
            {
                result = new StyleFloat(styleValue.number, styleValue.keyword);
            }
            else
            {
                result = StyleKeyword.Null;
            }
            return(result);
        }
예제 #5
0
 public bool Equals(StyleFloat other)
 {
     return(other == this);
 }
예제 #6
0
 public StyleFloat(StyleKeyword keyword)
 {
     this = new StyleFloat(0f, keyword);
 }
예제 #7
0
 public StyleFloat(float v)
 {
     this = new StyleFloat(v, StyleKeyword.Undefined);
 }