public override IEnumerable<Tuple<object, object>> GetResourceKeyValues(MyHighlightingColor hlColor) { var br = new RadialGradientBrush() { RadiusX = 1, RadiusY = 1, }; if (RelativeTransform != null) br.RelativeTransform = RelativeTransform; if (Center != null) br.Center = Center.Value; if (GradientOrigin != null) br.GradientOrigin = GradientOrigin.Value; if (RadiusX != null) br.RadiusX = RadiusX.Value; if (RadiusY != null) br.RadiusY = RadiusY.Value; if (Opacity != null) br.Opacity = Opacity.Value; for (int i = 0; i < GradientOffsets.Length; i++) br.GradientStops.Add(new GradientStop(((SolidColorBrush)hlColor.GetHighlightingBrush(i).GetBrush(null)).Color, GradientOffsets[i])); br.Freeze(); yield return new Tuple<object, object>(ResourceKey, br); }
public override IEnumerable<Tuple<object, object>> GetResourceKeyValues(MyHighlightingColor hlColor) { var br = new LinearGradientBrush() { StartPoint = StartPoint, EndPoint = EndPoint, }; if (MappingMode != null) br.MappingMode = MappingMode.Value; for (int i = 0; i < GradientOffsets.Length; i++) br.GradientStops.Add(new GradientStop(((SolidColorBrush)hlColor.GetHighlightingBrush(i).GetBrush(null)).Color, GradientOffsets[i])); br.Freeze(); yield return new Tuple<object, object>(ResourceKey, br); }