From 6fff34a376fa8935bb34f77b08a7c39823b83991 Mon Sep 17 00:00:00 2001 From: Dmytro Kovalyov Date: Fri, 25 Oct 2024 13:05:52 +0300 Subject: [PATCH] GROK-16812: Summary bar chart: Made it draw border if colorCode = `Values` and use `Color.getRowColor()` if no coloring in column --- packages/PowerGrid/src/sparklines/bar-chart.ts | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/packages/PowerGrid/src/sparklines/bar-chart.ts b/packages/PowerGrid/src/sparklines/bar-chart.ts index 6c7d776367..b8af5c3256 100644 --- a/packages/PowerGrid/src/sparklines/bar-chart.ts +++ b/packages/PowerGrid/src/sparklines/bar-chart.ts @@ -89,13 +89,14 @@ export class BarChartCellRenderer extends DG.GridCellRenderer { const cols = df.columns.byNames(settings.columnNames); const gmin = Math.min(...cols.map((c: DG.Column) => c.min)); const gmax = Math.max(...cols.map((c: DG.Column) => c.max)); + g.strokeStyle = 'lightgray'; for (let i = 0; i < cols.length; i++) { const currentCol = cols[i]; if (!currentCol.isNone(row)) { - const color = settings.colorCode === BarChartColoringType.Values ? currentCol.meta.colors.getType() !== DG.COLOR_CODING_TYPE.OFF ? - currentCol.meta.colors.getColor(row) : DG.Color.fromHtml('#8080ff') : settings.colorCode === BarChartColoringType.Bins ? - DG.Color.getCategoricalColor(i) : DG.Color.fromHtml('#8080ff'); + const color = settings.colorCode === BarChartColoringType.Off ? DG.Color.fromHtml('#8080ff') : + settings.colorCode === BarChartColoringType.Bins ? DG.Color.getCategoricalColor(i) : + currentCol.meta.colors.getType() === DG.COLOR_CODING_TYPE.OFF ? DG.Color.getRowColor(currentCol, row) : currentCol.meta.colors.getColor(row); g.setFillStyle(DG.Color.toRgb(color)); const scaled = settings.globalScale ? (currentCol.getNumber(row) - gmin) / (gmax - gmin) : currentCol?.scale(row); const bb = b @@ -103,6 +104,8 @@ export class BarChartCellRenderer extends DG.GridCellRenderer { .getBottomScaled(scaled > minH ? scaled : minH) .inflateRel(0.9, 1); g.fillRect(bb.left, bb.top, bb.width, bb.height); + if (settings.colorCode === BarChartColoringType.Values) + g.strokeRect(bb.left, bb.top, bb.width, bb.height); } } }