- override
In debug mode, paints a border around this render box.
Called for every RenderBox
when debugPaintSizeEnabled
is true.
Source
@override void debugPaintSize(PaintingContext context, Offset offset) { super.debugPaintSize(context, offset); assert(() { Paint paint; if (child != null && !child.size.isEmpty) { Path path; paint = new Paint() ..style = PaintingStyle.stroke ..strokeWidth = 1.0 ..color = debugPaintArrowColor; path = new Path(); final BoxParentData childParentData = child.parentData; if (childParentData.offset.dy > 0.0) { // vertical alignment arrows double headSize = math.min(childParentData.offset.dy * 0.2, 10.0); path ..moveTo(offset.dx + size.width / 2.0, offset.dy) ..relativeLineTo(0.0, childParentData.offset.dy - headSize) ..relativeLineTo(headSize, 0.0) ..relativeLineTo(-headSize, headSize) ..relativeLineTo(-headSize, -headSize) ..relativeLineTo(headSize, 0.0) ..moveTo(offset.dx + size.width / 2.0, offset.dy + size.height) ..relativeLineTo(0.0, -childParentData.offset.dy + headSize) ..relativeLineTo(headSize, 0.0) ..relativeLineTo(-headSize, -headSize) ..relativeLineTo(-headSize, headSize) ..relativeLineTo(headSize, 0.0); context.canvas.drawPath(path, paint); } if (childParentData.offset.dx > 0.0) { // horizontal alignment arrows double headSize = math.min(childParentData.offset.dx * 0.2, 10.0); path ..moveTo(offset.dx, offset.dy + size.height / 2.0) ..relativeLineTo(childParentData.offset.dx - headSize, 0.0) ..relativeLineTo(0.0, headSize) ..relativeLineTo(headSize, -headSize) ..relativeLineTo(-headSize, -headSize) ..relativeLineTo(0.0, headSize) ..moveTo(offset.dx + size.width, offset.dy + size.height / 2.0) ..relativeLineTo(-childParentData.offset.dx + headSize, 0.0) ..relativeLineTo(0.0, headSize) ..relativeLineTo(-headSize, -headSize) ..relativeLineTo(headSize, -headSize) ..relativeLineTo(0.0, headSize); context.canvas.drawPath(path, paint); } } else { paint = new Paint() ..color = debugPaintSpacingColor; context.canvas.drawRect(offset & size, paint); } return true; }); }