private LinearGradientBrush RefreshTrueColorLinearGradient(uint alpha = 255, bool replace = true) { if (UseDefaultBackColor) { return(RefreshTrueColorLinearGradientDefault(alpha, replace)); } LinearGradientBrush ret; uint alphaMask = 0x01000000 * alpha; SDLMMSharp.SDLMMControl.LinearGradientBrushBuilder br1 = new SDLMMSharp.SDLMMControl.LinearGradientBrushBuilder(new Point(0, SliderRect.Top), new Point(0, SliderRect.Bottom), TrueColor, TrueColor); Color myTrueColor = Color.FromArgb((int)alpha, TrueColor); UInt32 shadowColor = alphaMask | (0x888888 & (UInt32)TrueColor.ToArgb()); br1.AddPosition(0).AddColor(myTrueColor) .AddPosition(0.40).AddColor(myTrueColor) .AddPosition(1).AddColor(shadowColor); ret = br1.Build(); if (replace) { if (_TrueColorLinearGradient != null) { _TrueColorLinearGradient.Dispose(); _TrueColorLinearGradient = null; } _TrueColorLinearGradient = ret; } return(ret); }
private LinearGradientBrush ThumbColorLinearGradientTrueDefault(int x, int y, int r, int alpha = 255) { UInt32 shadowColor = 0xff000000 | 0xff000000 & (UInt32)ThumbColorTrue.ToArgb(); Color alphaColor = Color.FromArgb(alpha, ThumbColorTrue); uint alphaMask = 0x01000000 * (uint)alpha; SDLMMSharp.SDLMMControl.LinearGradientBrushBuilder br1 = new SDLMMSharp.SDLMMControl.LinearGradientBrushBuilder(new Point(x, y - r), new Point(x, y + r), alphaColor, alphaColor); br1.AddPosition(0).AddColor(0xb3ffb3 | (alphaMask)) .AddPosition(0.40).AddColor(0x80ff80 | (alphaMask)) .AddPosition(1).AddColor(0x00bf00 | (alphaMask)); return(br1.Build()); }
private LinearGradientBrush ThumbColorLinearGradient(int x, int y, int r, int alpha = 255) { if (DefaultThumbColor) { return(ThumbColorLinearGradientDefault(x, y, r, alpha)); } UInt32 shadowColor = 0xff000000 | 0xffcccccc & (UInt32)ThumbColor.ToArgb(); Color alphaColor = Color.FromArgb(alpha, ThumbColor); SDLMMSharp.SDLMMControl.LinearGradientBrushBuilder br1 = new SDLMMSharp.SDLMMControl.LinearGradientBrushBuilder(new Point(x - r, y - r), new Point(x + r, y + r), alphaColor, alphaColor); br1.AddPosition(0).AddColor(alphaColor) .AddPosition(1).AddColor(shadowColor); return(br1.Build()); }
private LinearGradientBrush RefreshFalseColorLinearGradientDefault(uint alpha = 255, bool replace = true) { LinearGradientBrush ret; SDLMMSharp.SDLMMControl.LinearGradientBrushBuilder br1 = new SDLMMSharp.SDLMMControl.LinearGradientBrushBuilder(new Point(0, SliderRect.Top), new Point(0, SliderRect.Bottom), FalseColor, FalseColor); uint alphaMask = 0x01000000 * alpha; UInt32 shadowColor = 0xff000000 | 0xff888888 & (UInt32)FalseColor.ToArgb(); br1.AddPosition(0).AddColor(0x7c7c7c | alphaMask) .AddPosition(0.40).AddColor(0xa0a0a0 | alphaMask) .AddPosition(1).AddColor(0xa0a0a0 | alphaMask); ret = br1.Build(); if (replace) { if (_FalseColorLinearGradient != null) { _FalseColorLinearGradient.Dispose(); _FalseColorLinearGradient = null; } _FalseColorLinearGradient = ret; } return(ret); }