writeText method
Implementation
@override
void writeText(StringBuffer out, int depth) {
var pad = ViewNode._pad(depth);
var widths = [
for (var (i, column) in columns.indexed)
rows.fold(column.length, (w, row) {
var cell = i < row.length ? row[i] : '';
return cell.length > w ? cell.length : w;
}),
];
void writeRow(List<String> cells) {
var parts = [
for (var (i, width) in widths.indexed)
(i < cells.length ? cells[i] : '').padRight(width),
];
out.writeln('$pad${parts.join(' ').trimRight()}');
}
writeRow(columns);
for (var row in rows) {
writeRow(row);
}
if (truncated > 0) {
out.writeln('$pad… $truncated more');
}
}