builder method

List<Widget> builder(
  1. BuildContext context,
  2. BoxConstraints constraints
)

Implementation

List<Widget> builder(BuildContext context, BoxConstraints constraints) {

  // left pane
  view0 ??= view(0);
  view1 ??= view(1);

  // ratio box1:box2. if 1, box 1 is 100% size
  var ratio = widget.model.ratio;
  if (ratio < 0) ratio = 0;
  if (ratio > 1) ratio = 1;
  var flex = (ratio * 1000).ceil();

  List<Widget> children = [];

  // left/top view
  view0 ??= view(0);
  view0!.model.setFlex(flex);
  view0!.model.needsLayout = true;
  children.add(view0!);

  // handle
  Widget handle = _buildHandle(constraints);
  children.add(handle);

  // right/bottom view
  view1 ??= view(1);
  view1!.model.setFlex(1000 - flex);
  view1!.model.needsLayout = true;
  children.add(view1!);

  return children;
}