drawHighlighted method
Draws all highlight indicators for the values that are currently highlighted.
@param c @param indices the highlighted values
Implementation
@override
void drawHighlighted(Canvas c, List<Highlight>? indices) {
ChartPainter? chart = _painter;
if (chart == null) return;
for (DataRenderer renderer in _renderers) {
ChartData? data;
if (renderer is BarChartRenderer) {
data = renderer.provider!.getBarData();
} else if (renderer is LineChartRenderer) {
data = renderer.provider!.getLineData();
} else if (renderer is CandleStickChartRenderer) {
data = renderer.porvider!.getCandleData();
} else if (renderer is ScatterChartRenderer) {
data = renderer.provider!.getScatterData();
} else if (renderer is BubbleChartRenderer) {
data = renderer.provider!.getBubbleData();
}
int dataIndex = data == null
? -1
: (chart.getData() as CombinedData)
.getAllData()
.indexOf(data as BarLineScatterCandleBubbleData);
mHighlightBuffer.clear();
for (Highlight h in indices!) {
if (h.dataIndex == dataIndex || h.dataIndex == -1) {
mHighlightBuffer.add(h);
}
}
renderer.drawHighlighted(c, mHighlightBuffer);
}
}