if (_image.width() < width || _image.height() < height) {
layer.setImage(_image = graphics().createImage(width, height));
}
// clear our image and render our rows
Canvas canvas = _image.canvas();
canvas.clear();
canvas.setFillColor(_bgColor).fillRect(0, 0, width, height);
canvas.setStrokeColor(_textColor).setFillColor(_textColor);
float x = GAP, y = GAP, valueX = labelWidth+2*GAP;
for (Row row : _rows) {
row.render(canvas, x, y, valueX);