getConstraints method

Constraint getConstraints()

Implementation

Constraint getConstraints() {
  Constraint constraint = Constraint();

    constraint.minHeight =
        height ?? _modelConstraints.minHeight ?? minHeight ??  0.0;
    constraint.minWidth =
        width ?? _modelConstraints.minWidth ?? minWidth ?? 0.0;
  constraint.maxHeight =
      height ?? _modelConstraints.maxHeight ?? maxHeight ?? double.infinity;
  constraint.maxWidth =
      width ?? _modelConstraints.maxWidth ?? maxWidth ?? double.infinity;

  // ensure not negative
  if (constraint.minHeight! < 0) constraint.minHeight = 0;
  if (constraint.maxHeight! < 0) constraint.maxHeight = double.infinity;

  // ensure max > min
  if (constraint.minHeight! > constraint.maxHeight!) {
    if (_modelConstraints.maxHeight != null)
      constraint.minHeight = constraint.maxHeight;
    else
      constraint.maxHeight = constraint.minHeight;
  }

  // ensure not negative
  if (constraint.minWidth! < 0) constraint.minWidth = 0;
  if (constraint.maxWidth! < 0) constraint.maxWidth = double.infinity;

  // ensure max > min
  if (constraint.minWidth! > constraint.maxWidth!) {
    if (_modelConstraints.maxWidth != null)
      constraint.minWidth = constraint.maxWidth;
    else
      constraint.maxWidth = constraint.minWidth;
  }
  return constraint;
}