Exemplo n.º 1
0
        public virtual RuntimeThemeColorValues GetColors(Color accentColor, RuntimeThemeOptions options)
        {
            if (options.UseHSL)
            {
                var accentColorWithoutTransparency = Color.FromRgb(accentColor.R, accentColor.G, accentColor.B);

                return(new RuntimeThemeColorValues(options)
                {
                    AccentColor = accentColor,
                    AccentBaseColor = accentColor,
                    PrimaryAccentColor = accentColor,

                    AccentColor80 = HSLColor.GetTintedColor(accentColorWithoutTransparency, 0.2),
                    AccentColor60 = HSLColor.GetTintedColor(accentColorWithoutTransparency, 0.4),
                    AccentColor40 = HSLColor.GetTintedColor(accentColorWithoutTransparency, 0.6),
                    AccentColor20 = HSLColor.GetTintedColor(accentColorWithoutTransparency, 0.8),

                    HighlightColor = GetHighlightColor(accentColorWithoutTransparency),

                    IdealForegroundColor = GetIdealTextColor(accentColorWithoutTransparency),
                });
            }
            else
            {
                return(new RuntimeThemeColorValues(options)
                {
                    AccentColor = accentColor,
                    AccentBaseColor = accentColor,
                    PrimaryAccentColor = accentColor,

                    AccentColor80 = Color.FromArgb(204 /* 255 * 0.8 */, accentColor.R, accentColor.G, accentColor.B),
                    AccentColor60 = Color.FromArgb(153 /* 255 * 0.6 */, accentColor.R, accentColor.G, accentColor.B),
                    AccentColor40 = Color.FromArgb(102 /* 255 * 0.4 */, accentColor.R, accentColor.G, accentColor.B),
                    AccentColor20 = Color.FromArgb(51 /* 255 * 0.2 */, accentColor.R, accentColor.G, accentColor.B),

                    HighlightColor = GetHighlightColor(accentColor),

                    IdealForegroundColor = GetIdealTextColor(accentColor),
                });
            }
        }
Exemplo n.º 2
0
 public RuntimeThemeColorValues(RuntimeThemeOptions options)
 {
     Options = options;
 }