in lib/src/hierarchy_view.dart [197:257]
void _renderRow(TreeTableRow row, LogicalRow logicalRow) {
Map<String, dynamic> props = logicalRow.data;
List<TableCellElement> cells = [_cell(props['kind']),];
switch (props['kind']) {
case 'function':
case 'closure':
case 'constructor':
case 'method':
case 'field':
var span = new SpanElement();
span.text = props['name'];
var anchor = new AnchorElement();
anchor.onClick.listen((_) {
HistoryState
.switchTo(new HistoryState('dep', depTarget: props['id']));
});
anchor.children.add(
new ImageElement(src: 'packages/dump_viz/src/deps_icon.svg')
..style.float = 'right');
cells.addAll([
new TableCellElement()..children.addAll([span, anchor]),
_cell(props['size'], align: 'right'),
_cell(_model.triviallyOwnedSize(props['id']), align: 'right'),
_cell(props['size_percent'], align: 'right'),
_cell(props['type'], pre: true)
]);
break;
case 'library':
cells.addAll([
_cell(props['canonicalUri']),
_cell(props['size'], align: 'right'),
_cell(''),
_cell(props['size_percent'], align: 'right'),
_cell('')
]);
break;
case 'typedef':
cells.addAll([
_cell(props['name']),
_cell('0', align: 'right'),
_cell('0', align: 'right'),
_cell('0.00%', align: 'right')
]);
break;
case 'class':
cells.addAll([
_cell(props['name']),
_cell(props['size'], align: 'right'),
_cell(''),
_cell(props['size_percent'], align: 'right'),
_cell(props['name'], pre: true)
]);
break;
default:
throw new StateError("Unknown element type: ${props['kind']}");
}
row.data = cells;
}