buildWidget method

  1. @override
dynamic buildWidget(
  1. BuildContext context
)

Implementation

@override
buildWidget(BuildContext context) {
  // Just rebuild objects if its necessary
  return LayoutBuilder(
      builder: (BuildContext context, BoxConstraints constraints) {
    EdgeInsets? localMargin;
    MediaQueryData mediaQuery = MediaQuery.of(context);

    if (gridOffsetSizes != null) {
      double offset = getColumnSize(gridOffsetSizes, mediaQuery.size.width);

      if (offset != 1) {
        offset *= constraints.maxWidth;

        if (alignment == Alignment.topLeft ||
            alignment == Alignment.centerLeft ||
            alignment == Alignment.bottomLeft) {
          localMargin = EdgeInsets.only(left: offset)
              .add(margin ?? EdgeInsets.zero) as EdgeInsets?;
        }
        if (alignment == Alignment.topRight ||
            alignment == Alignment.centerRight ||
            alignment == Alignment.bottomRight) {
          localMargin = EdgeInsets.only(left: offset)
              .add(margin ?? EdgeInsets.zero) as EdgeInsets?;
        }
      }
    }

    return Container(
      alignment: alignment ?? Alignment.topLeft,
      decoration: decoration,
      width: getColumnSize(gridSizes, mediaQuery.size.width) *
          constraints.maxWidth,
      height: getWidgetHeight(constraints.maxHeight),
      padding: padding,
      margin: localMargin ?? margin,
      color: backgroundColor,
      child: children != null ? Wrap(children: children!) : null,
    );
  });
}