newCellNode function
dynamic
newCellNode(
- Node tableNode,
- dynamic n
)
Implementation
dynamic newCellNode(Node tableNode, n) {
final row = n.attributes[TableCellBlockKeys.rowPosition] as int;
final col = n.attributes[TableCellBlockKeys.colPosition] as int;
final int rowsLen = tableNode.attributes[TableBlockKeys.rowsLen];
final int colsLen = tableNode.attributes[TableBlockKeys.colsLen];
if (!n.attributes.containsKey(TableCellBlockKeys.height)) {
double nodeHeight = double.tryParse(
tableNode.attributes[TableBlockKeys.rowDefaultHeight].toString(),
)!;
if (row < rowsLen) {
nodeHeight = double.tryParse(
getCellNode(tableNode, 0, row)!
.attributes[TableCellBlockKeys.height]
.toString(),
) ??
nodeHeight;
}
n.updateAttributes({TableCellBlockKeys.height: nodeHeight});
}
if (!n.attributes.containsKey(TableCellBlockKeys.width)) {
double nodeWidth = double.tryParse(
tableNode.attributes[TableBlockKeys.colDefaultWidth].toString(),
)!;
if (col < colsLen) {
nodeWidth = double.tryParse(
getCellNode(tableNode, col, 0)!
.attributes[TableCellBlockKeys.width]
.toString(),
) ??
nodeWidth;
}
n.updateAttributes({TableCellBlockKeys.width: nodeWidth});
}
return n;
}