优化TooltipLineStyle支持设置Shadow时的颜色

This commit is contained in:
monitor1394
2022-11-27 16:54:09 +08:00
parent b6702be558
commit 32f98b6d5a
2 changed files with 7 additions and 6 deletions

View File

@@ -562,7 +562,7 @@ namespace XCharts.Runtime
break;
Vector2 sp = new Vector2(pX, grid.context.y);
Vector2 ep = new Vector2(pX, grid.context.y + grid.context.height);
var lineColor = TooltipHelper.GetLineColor(tooltip, chart.theme);
var lineColor = TooltipHelper.GetLineColor(tooltip, chart.theme.tooltip.lineColor);
ChartDrawer.DrawLineStyle(vh, lineType, lineWidth, sp, ep, lineColor);
if (tooltip.type == Tooltip.Type.Corss)
{
@@ -584,7 +584,8 @@ namespace XCharts.Runtime
Vector3 p2 = new Vector3(pX, pY);
Vector3 p3 = new Vector3(pX + tooltipSplitWid, pY);
Vector3 p4 = new Vector3(pX + tooltipSplitWid, grid.context.y);
UGL.DrawQuadrilateral(vh, p1, p2, p3, p4, chart.theme.tooltip.areaColor);
var areaColor = TooltipHelper.GetLineColor(tooltip, chart.theme.tooltip.areaColor);
UGL.DrawQuadrilateral(vh, p1, p2, p3, p4, areaColor);
}
break;
}
@@ -625,7 +626,7 @@ namespace XCharts.Runtime
break;
Vector2 sp = new Vector2(grid.context.x, pY);
Vector2 ep = new Vector2(grid.context.x + grid.context.width, pY);
var lineColor = TooltipHelper.GetLineColor(tooltip, chart.theme);
var lineColor = TooltipHelper.GetLineColor(tooltip, chart.theme.tooltip.lineColor);
ChartDrawer.DrawLineStyle(vh, lineType, lineWidth, sp, ep, lineColor);
if (tooltip.type == Tooltip.Type.Corss)
{
@@ -660,7 +661,7 @@ namespace XCharts.Runtime
if (tooltip.context.angle < 0) return;
var theme = chart.theme;
var m_AngleAxis = ComponentHelper.GetAngleAxis(chart.components, m_Polar.index);
var lineColor = TooltipHelper.GetLineColor(tooltip, theme);
var lineColor = TooltipHelper.GetLineColor(tooltip, theme.tooltip.lineColor);
var lineType = tooltip.lineStyle.GetType(theme.tooltip.lineType);
var lineWidth = tooltip.lineStyle.GetWidth(theme.tooltip.lineWidth);
var cenPos = m_Polar.context.center;

View File

@@ -87,7 +87,7 @@ namespace XCharts.Runtime
else return tooltip.numericFormatter;
}
public static Color32 GetLineColor(Tooltip tooltip, ThemeStyle theme)
public static Color32 GetLineColor(Tooltip tooltip, Color32 defaultColor)
{
var lineStyle = tooltip.lineStyle;
if (!ChartHelper.IsClearColor(lineStyle.color))
@@ -96,7 +96,7 @@ namespace XCharts.Runtime
}
else
{
var color = theme.tooltip.lineColor;
var color = defaultColor;
ChartHelper.SetColorOpacity(ref color, lineStyle.opacity);
return color;
}