Skip to content

Commit c5f58e8

Browse files
committed
Show indices on array tracers
1 parent cdd3c27 commit c5f58e8

File tree

2 files changed

+29
-7
lines changed

2 files changed

+29
-7
lines changed

src/frontend/core/renderers/Array2DRenderer/index.jsx

+23-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import React from 'react';
2-
import { Renderer } from '/core/renderers';
2+
import { Array1DRenderer, Renderer } from '/core/renderers';
33
import styles from './stylesheet.scss';
44
import { classes } from '/common/util';
55

@@ -14,13 +14,35 @@ class Array2DRenderer extends Renderer {
1414
renderData() {
1515
const { data } = this.props.data;
1616

17+
const isArray1D = this instanceof Array1DRenderer;
18+
let longestRow = data.reduce((longestRow, row) => longestRow.length < row.length ? row : longestRow, []);
19+
1720
return (
1821
<table className={styles.array_2d}
1922
style={{ marginLeft: -this.centerX * 2, marginTop: -this.centerY * 2, fontSize: this.zoom }}>
2023
<tbody>
24+
<tr className={styles.row}>
25+
{
26+
!isArray1D &&
27+
<td className={classes(styles.col, styles.index)} />
28+
}
29+
{
30+
longestRow.map((_, i) => (
31+
<td className={classes(styles.col, styles.index)}>
32+
<span className={styles.value}>{i}</span>
33+
</td>
34+
))
35+
}
36+
</tr>
2137
{
2238
data.map((row, i) => (
2339
<tr className={styles.row} key={i}>
40+
{
41+
!isArray1D &&
42+
<td className={classes(styles.col, styles.index)}>
43+
<span className={styles.value}>{i}</span>
44+
</td>
45+
}
2446
{
2547
row.map((col, j) => (
2648
<td className={classes(styles.col, col.selected && styles.selected, col.patched && styles.patched)}

src/frontend/core/renderers/Array2DRenderer/stylesheet.scss

+6-6
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,6 @@
99
display: table-row;
1010
height: 28em;
1111

12-
&:empty:after {
13-
content: '';
14-
display: table-cell;
15-
border-left: 1em solid $theme-light;
16-
}
17-
1812
.col {
1913
display: table-cell;
2014
text-align: center;
@@ -34,6 +28,12 @@
3428
&.patched {
3529
background-color: $color-patched;
3630
}
31+
32+
&.index {
33+
background: none;
34+
border: none;
35+
color: $theme-light;
36+
}
3737
}
3838
}
3939
}

0 commit comments

Comments
 (0)