Exemple #1
0
        public string TranslateName(IconName name, IconVariant variant)
        {
            string n;
            string v = "";

            switch (variant)
            {
            case IconVariant.Outline:
                v = "-outline";
                break;

            case IconVariant.Default:
            default:
                break;
            }

            switch (name)
            {
            case IconName.Home:
                n = "home";
                break;

            default:
                n = "help";
                break;
            }

            return($"{n}{v}");
        }
Exemple #2
0
        private Texture2D GetItem(string name, IconSize size, IconColor color)
        {
            var variant = new IconVariant(name, size, color);

            if (!_icons.ContainsKey(variant))
            {
                variant = new IconVariant(name, IconSize.Large, color);
            }

            if (!_icons.ContainsKey(variant))
            {
                variant = new IconVariant(name, IconSize.Large, IconColor.Gray);
            }

            return(_icons[variant]);
        }
Exemple #3
0
        private Icons()
        {
            const string iconPath = "Packages/org.visualpinball.engine.unity/VisualPinball.Unity/VisualPinball.Unity.Editor/Resources/Icons";

            foreach (var name in Names)
            {
                foreach (var size in Enum.GetValues(typeof(IconSize)).Cast <IconSize>())
                {
                    foreach (var color in Enum.GetValues(typeof(IconColor)).Cast <IconColor>())
                    {
                        var variant = new IconVariant(name, size, color);
                        var path    = $"{iconPath}/{size.ToString().ToLower()}_{color.ToString().ToLower()}/{name}.png";
                        if (File.Exists(path))
                        {
                            _icons[variant] = AssetDatabase.LoadAssetAtPath <Texture2D>(path);
                        }
                    }
                }
            }
        }
Exemple #4
0
        private Texture2D GetItem(string name, IconSize size, IconColor color)
        {
            var variant = new IconVariant(name, size, color);

            if (!_icons.ContainsKey(variant))
            {
                variant = new IconVariant(name, IconSize.Large, color);
            }

            if (!_icons.ContainsKey(variant))
            {
                variant = new IconVariant(name, IconSize.Large, IconColor.Gray);
            }

            if (!_icons.ContainsKey(variant))
            {
                throw new InvalidOperationException($"Cannot find {variant.Size} {variant.Name} icon of color {variant.Color}.");
            }

            return(_icons[variant]);
        }