buildChildren method
List<Widget>
buildChildren(
- List<
ResponsiveRowColumnItem> children, - bool rowColumn,
- double? spacing
Logic to construct widget children
.
Implementation
List<Widget> buildChildren(
List<ResponsiveRowColumnItem> children, bool rowColumn, double? spacing) {
// Sort ResponsiveRowColumnItems by their order.
List<ResponsiveRowColumnItem> childrenHolder = [];
childrenHolder.addAll(children);
childrenHolder.sort((a, b) {
if (rowColumn) {
return a.rowOrder.compareTo(b.rowOrder);
} else {
return a.columnOrder.compareTo(b.columnOrder);
}
});
// Add padding between widgets..
List<Widget> widgetList = [];
for (int i = 0; i < childrenHolder.length; i++) {
widgetList.add(childrenHolder[i].copyWith(rowColumn: rowColumn));
if (spacing != null && i != childrenHolder.length - 1) {
widgetList.add(Padding(
padding: rowColumn
? EdgeInsets.only(right: spacing)
: EdgeInsets.only(bottom: spacing)));
}
}
return widgetList;
}