コード例 #1
0
ファイル: MonotoneUtils.cs プロジェクト: tpetzold-ts/Monotone
        /// <summary>
        /// Derive all colors from the given base color
        /// </summary>
        /// <param name="dictionary">Dictionary to store new Colors</param>
        /// <param name="baseColor"></param>
        public static void CalculateColors(ref ResourceDictionary dictionary, Color baseColor)
        {
            HSV bc = HSV.FromColor(baseColor);

            HSV baseborder = HSV.FromColor(Color.FromRgb(102, 102, 102));

            baseborder.H = bc.H;
            baseborder.S = bc.S * 0.5;
            Color selectedcolorhover = HSV.FromHSV(bc.H, bc.S, bc.V * 0.7);

            selectedcolorhover.A = 80;

            Color transm3 = baseborder.ToColor(0, 0, 0.1);

            transm3.A = 119;
            Color transm2t = baseborder.ToColor(0, 0, -0.2);

            transm2t.A = 34;

            dictionary["BaseColor"]                = HSV.FromHSV(bc.H, bc.S * 0.7, bc.V * 0.4);
            dictionary["SelectedColor"]            = bc.ToColor();
            dictionary["DarkerSelectedColor"]      = HSV.FromHSV(bc.H, bc.S, bc.V * 0.7);
            dictionary["DarkerSelectedColorHover"] = selectedcolorhover;
            dictionary["BaseM2Color"]              = baseborder.ToColor(0, 0, -0.2);
            dictionary["BaseM2TColor"]             = transm2t;
            dictionary["BaseM1Color"]              = baseborder.ToColor(0, 0, -0.15);
            dictionary["Base1Color"]               = baseborder.ToColor(0, 0, 0.025);
            dictionary["Base2Color"]               = baseborder.ToColor(0, 0, 0.05);
            dictionary["Base3Color"]               = baseborder.ToColor(0, 0, 0.1);
            dictionary["Base3TColor"]              = transm3;
            dictionary["Base4Color"]               = baseborder.ToColor(0, 0, 0.125);
            dictionary["Base5Color"]               = baseborder.ToColor(0, 0, 0.15);
            dictionary["Base6Color"]               = baseborder.ToColor(0, 0, 0.175);
            dictionary["TextColor"]                = Colors.White;
            dictionary["ErrorColor"]               = Color.FromRgb(255, 136, 136);
            dictionary["DarkErrorColor"]           = Color.FromRgb(170, 68, 68);
        }