Binary subtraction operator for Size.
Subtracting a Size from a Size returns the Offset that describes how
much bigger the left-hand-side operand is than the right-hand-side
operand. Adding that resulting Offset to the Size that was the
right-hand-side operand would return a Size equal to the Size that was the
left-hand-side operand. (i.e. if sizeA - sizeB -> offsetA
, then `offsetA
- sizeB -> sizeA`)
Subtracting an Offset from a Size returns the Size that is smaller than the Size operand by the difference given by the Offset operand. In other words, the returned Size has a width consisting of the width of the left-hand-side operand minus the Offset.dx dimension of the right-hand-side operand, and a height consisting of the height of the left-hand-side operand minus the Offset.dy dimension of the right-hand-side operand.
Source
dynamic operator -(OffsetBase other) { if (other is Size) return new Offset(width - other.width, height - other.height); if (other is Offset) return new Size(width - other.dx, height - other.dy); throw new ArgumentError(other); }