示例#1
0
 private static bool TryParseKeyword(string rawStr, out StyleValueKeyword value)
 {
     if (StyleSheetImporterImpl.s_NameCache == null)
     {
         StyleSheetImporterImpl.s_NameCache = new Dictionary <string, StyleValueKeyword>();
         IEnumerator enumerator = Enum.GetValues(typeof(StyleValueKeyword)).GetEnumerator();
         try
         {
             while (enumerator.MoveNext())
             {
                 StyleValueKeyword value2 = (StyleValueKeyword)enumerator.Current;
                 StyleSheetImporterImpl.s_NameCache[value2.ToString().ToLower()] = value2;
             }
         }
         finally
         {
             IDisposable disposable;
             if ((disposable = (enumerator as IDisposable)) != null)
             {
                 disposable.Dispose();
             }
         }
     }
     return(StyleSheetImporterImpl.s_NameCache.TryGetValue(rawStr.ToLower(), out value));
 }
示例#2
0
        internal static StyleKeyword ToStyleKeyword(this StyleValueKeyword styleValueKeyword)
        {
            StyleKeyword result;

            if (styleValueKeyword != StyleValueKeyword.Initial)
            {
                if (styleValueKeyword != StyleValueKeyword.Auto)
                {
                    if (styleValueKeyword != StyleValueKeyword.None)
                    {
                        result = StyleKeyword.Undefined;
                    }
                    else
                    {
                        result = StyleKeyword.None;
                    }
                }
                else
                {
                    result = StyleKeyword.Auto;
                }
            }
            else
            {
                result = StyleKeyword.Initial;
            }
            return(result);
        }
        protected override bool MatchKeyword(string keyword)
        {
            StylePropertyValue current = this.current;
            bool flag = current.handle.valueType == StyleValueType.Keyword;
            bool result;

            if (flag)
            {
                StyleValueKeyword valueIndex = (StyleValueKeyword)current.handle.valueIndex;
                result = (valueIndex.ToUssString() == keyword.ToLower());
            }
            else
            {
                bool flag2 = current.handle.valueType == StyleValueType.Enum;
                if (flag2)
                {
                    string a = current.sheet.ReadEnum(current.handle);
                    result = (a == keyword.ToLower());
                }
                else
                {
                    result = false;
                }
            }
            return(result);
        }
        public static string ToUssString(this StyleValueKeyword svk)
        {
            switch (svk)
            {
            case StyleValueKeyword.Inherit:
                return("inherit");

            case StyleValueKeyword.Initial:
                return("initial");

            case StyleValueKeyword.Auto:
                return("auto");

            case StyleValueKeyword.Unset:
                return("unset");

            case StyleValueKeyword.True:
                return("true");

            case StyleValueKeyword.False:
                return("false");

            case StyleValueKeyword.None:
                return("none");

            default:
                throw new ArgumentOutOfRangeException(nameof(svk), svk, $"Unknown {nameof(StyleValueKeyword)}");
            }
        }
示例#5
0
        public void AddProperty(string name, StyleValueKeyword value, string comment = "")
        {
            var property = builder.BeginProperty(name);

            options.AddComment(property, comment);
            builder.AddValue(value);
            builder.EndProperty();
        }
        public bool IsKeyword(int index, StyleValueKeyword keyword)
        {
            if (m_CurrentStyleValue.keyword == StyleKeyword.Undefined)
            {
                return(false);
            }

            return(m_CurrentStyleValue.keyword == keyword.ToStyleKeyword());
        }
 static bool TryParseKeyword(string rawStr, out StyleValueKeyword value)
 {
     if (s_NameCache == null)
     {
         s_NameCache = new Dictionary <string, StyleValueKeyword>();
         foreach (StyleValueKeyword kw in Enum.GetValues(typeof(StyleValueKeyword)))
         {
             s_NameCache[kw.ToString().ToLower()] = kw;
         }
     }
     return(s_NameCache.TryGetValue(rawStr.ToLower(), out value));
 }
示例#8
0
        internal static StyleKeyword ToStyleKeyword(this StyleValueKeyword styleValueKeyword)
        {
            switch (styleValueKeyword)
            {
            case StyleValueKeyword.Auto:
                return(StyleKeyword.Auto);

            case StyleValueKeyword.None:
                return(StyleKeyword.None);

            case StyleValueKeyword.Initial:
                return(StyleKeyword.Initial);
            }

            return(StyleKeyword.Undefined);
        }
示例#9
0
        public StyleLength ReadStyleLength(int index)
        {
            StylePropertyValue stylePropertyValue = this.m_Values[this.m_CurrentValueIndex + index];
            bool        flag = stylePropertyValue.handle.valueType == StyleValueType.Keyword;
            StyleLength result;

            if (flag)
            {
                StyleValueKeyword valueIndex = (StyleValueKeyword)stylePropertyValue.handle.valueIndex;
                result = new StyleLength(valueIndex.ToStyleKeyword());
            }
            else
            {
                result = new StyleLength(stylePropertyValue.sheet.ReadDimension(stylePropertyValue.handle).ToLength());
            }
            return(result);
        }
示例#10
0
        public StyleBackground ReadStyleBackground(int index)
        {
            ImageSource        imageSource        = default(ImageSource);
            StylePropertyValue stylePropertyValue = this.m_Values[this.m_CurrentValueIndex + index];
            bool flag = stylePropertyValue.handle.valueType == StyleValueType.Keyword;

            if (flag)
            {
                bool flag2 = stylePropertyValue.handle.valueIndex != 6;
                if (flag2)
                {
                    string            arg_68_0   = "Invalid keyword for image source ";
                    StyleValueKeyword valueIndex = (StyleValueKeyword)stylePropertyValue.handle.valueIndex;
                    Debug.LogWarning(arg_68_0 + valueIndex.ToString());
                }
            }
            else
            {
                bool flag3 = !StylePropertyReader.TryGetImageSourceFromValue(stylePropertyValue, this.dpiScaling, out imageSource);
                if (flag3)
                {
                    imageSource.texture = (Panel.LoadResource("d_console.warnicon", typeof(Texture2D), this.dpiScaling) as Texture2D);
                }
            }
            bool            flag4 = imageSource.texture != null;
            StyleBackground result;

            if (flag4)
            {
                result = new StyleBackground(imageSource.texture);
            }
            else
            {
                bool flag5 = imageSource.vectorImage != null;
                if (flag5)
                {
                    result = new StyleBackground(imageSource.vectorImage);
                }
                else
                {
                    result = default(StyleBackground);
                }
            }
            return(result);
        }
示例#11
0
        internal static StyleValueHandle AddValue(
            this StyleSheet styleSheet, StyleProperty property, StyleValueKeyword value, string undoMessage = null)
        {
            // Undo/Redo
            if (string.IsNullOrEmpty(undoMessage))
            {
                undoMessage = BuilderConstants.ChangeUIStyleValueUndoMessage;
            }
            Undo.RegisterCompleteObjectUndo(styleSheet, undoMessage);

            // Add value data to data array.
            var index = styleSheet.AddValueToArray(value);

            // Add value object to property.
            var newValue = styleSheet.AddValueHandle(property, index, StyleValueType.Keyword);

            return(newValue);
        }
示例#12
0
        public StyleInt ReadStyleEnum(StyleEnumType enumType, int index)
        {
            StylePropertyValue stylePropertyValue = this.m_Values[this.m_CurrentValueIndex + index];
            StyleValueHandle   handle             = stylePropertyValue.handle;
            bool   flag = handle.valueType == StyleValueType.Keyword;
            string value;

            if (flag)
            {
                StyleValueKeyword svk = stylePropertyValue.sheet.ReadKeyword(handle);
                value = svk.ToUssString();
            }
            else
            {
                value = stylePropertyValue.sheet.ReadEnum(handle);
            }
            int enumIntValue = StylePropertyUtil.GetEnumIntValue(enumType, value);

            return(new StyleInt(enumIntValue));
        }
示例#13
0
        public static string ToUssString(this StyleValueKeyword svk)
        {
            string result;

            switch (svk)
            {
            case StyleValueKeyword.Inherit:
                result = "inherit";
                break;

            case StyleValueKeyword.Initial:
                result = "initial";
                break;

            case StyleValueKeyword.Auto:
                result = "auto";
                break;

            case StyleValueKeyword.Unset:
                result = "unset";
                break;

            case StyleValueKeyword.True:
                result = "true";
                break;

            case StyleValueKeyword.False:
                result = "false";
                break;

            case StyleValueKeyword.None:
                result = "none";
                break;

            default:
                throw new ArgumentOutOfRangeException("svk", svk, "Unknown StyleValueKeyword");
            }
            return(result);
        }
示例#14
0
 public static int AddValueToArray(this StyleSheet styleSheet, StyleValueKeyword value)
 {
     return((int)value);
 }
示例#15
0
 public static void SetValue(this StyleSheet styleSheet, StyleValueHandle valueHandle, StyleValueKeyword value)
 {
     throw new InvalidOperationException("Style value cannot be set if its a keyword!");
 }
示例#16
0
        public bool IsKeyword(int index, StyleValueKeyword keyword)
        {
            StylePropertyValue stylePropertyValue = this.m_Values[this.m_CurrentValueIndex + index];

            return(stylePropertyValue.handle.valueType == StyleValueType.Keyword && stylePropertyValue.handle.valueIndex == (int)keyword);
        }
示例#17
0
 public UIStyleValue(StyleValueKeyword k)
 {
     value     = default;
     keyword   = k;
     isKeyword = true;
 }
 public void AddValue(StyleValueKeyword keyword)
 {
     // for keyword we use the index to store the enum value
     m_CurrentValues.Add(new StyleValueHandle((int)keyword, StyleValueType.Keyword));
 }
示例#19
0
 public FloatOrKeyword(StyleValueKeyword kw)
 {
     isKeyword  = true;
     keyword    = kw;
     floatValue = 0;
 }
示例#20
0
 public void AddValue(StyleValueKeyword keyword)
 {
     this.m_CurrentValues.Add(new StyleValueHandle((int)keyword, StyleValueType.Keyword));
 }
        public bool IsKeyword(int index, StyleValueKeyword keyword)
        {
            var value = m_Values[index];

            return(value.handle.valueType == StyleValueType.Keyword && (StyleValueKeyword)value.handle.valueIndex == keyword);
        }
 StyleValueHandle AddKeywordToStyleSheet(StyleValueKeyword keyword)
 {
     return(styleSheet.AddValue(styleProperty, keyword));
 }
示例#23
0
 public static int AddValueToArray(this StyleSheet styleSheet, StyleValueKeyword value)
 {
     styleSheet.UpdateContentHash();
     return((int)value);
 }
示例#24
0
 public UIStyleValue(T v)
 {
     value     = v;
     keyword   = StyleValueKeyword.None;
     isKeyword = false;
 }