lineFragmentRectForProposedRect method

NSRect lineFragmentRectForProposedRect(
  1. NSRect proposedRect, {
  2. required NSLineSweepDirection sweepDirection,
  3. required NSLineMovementDirection movementDirection,
  4. required NSRectPointer remainingRect,
})

lineFragmentRectForProposedRect:sweepDirection:movementDirection:remainingRect:

Implementation

NSRect lineFragmentRectForProposedRect(
  NSRect proposedRect, {
  required NSLineSweepDirection sweepDirection,
  required NSLineMovementDirection movementDirection,
  required NSRectPointer remainingRect,
}) {
  objc.checkOsVersionInternal(
    'NSTextContainer.lineFragmentRectForProposedRect:sweepDirection:movementDirection:remainingRect:',
    iOS: (false, (7, 0, 0)),
    macOS: (false, (10, 0, 0)),
  );
  final _ptr = pkg_ffi.calloc<NSRect>();
  objc.useMsgSendVariants
      ? _objc_msgSend_b4f8tjStret(
          _ptr,
          this.ref.pointer,
          _sel_lineFragmentRectForProposedRect_sweepDirection_movementDirection_remainingRect_,
          proposedRect,
          sweepDirection.value,
          movementDirection.value,
          remainingRect,
        )
      : _ptr.ref = _objc_msgSend_b4f8tj(
          this.ref.pointer,
          _sel_lineFragmentRectForProposedRect_sweepDirection_movementDirection_remainingRect_,
          proposedRect,
          sweepDirection.value,
          movementDirection.value,
          remainingRect,
        );
  final _finalizable = _ptr.cast<ffi.Uint8>().asTypedList(
    ffi.sizeOf<NSRect>(),
    finalizer: pkg_ffi.calloc.nativeFree,
  );
  return ffi.Struct.create<NSRect>(_finalizable);
}