addToBuilder static method

void addToBuilder(
  1. ObjCProtocolBuilder builder, {
  2. required NSWindow? draggingDestinationWindow(),
  3. required NSDragOperation draggingSourceOperationMask(),
  4. required CGPoint draggingLocation(),
  5. required CGPoint draggedImageLocation(),
  6. required NSImage? draggedImage(),
  7. required NSPasteboard draggingPasteboard(),
  8. required ObjCObjectBase? draggingSource(),
  9. required int draggingSequenceNumber(),
  10. required void slideDraggedImageTo_(
    1. CGPoint point
    ),
  11. required NSArray? namesOfPromisedFilesDroppedAtDestination_(
    1. NSURL dropDestination
    ),
  12. required NSDraggingFormation draggingFormation(),
  13. required void setDraggingFormation_(
    1. NSDraggingFormation
    ),
  14. required bool animatesToDestination(),
  15. required void setAnimatesToDestination_(
    1. bool restartFlag
    ),
  16. required int numberOfValidItemsForDrop(),
  17. required void setNumberOfValidItemsForDrop_(
    1. DartThreadID threadDeleted
    ),
  18. required void enumerateDraggingItemsWithOptions_forView_classes_searchOptions_usingBlock_(
    1. NSDraggingItemEnumerationOptions,
    2. NSView?,
    3. NSArray,
    4. NSDictionary,
    5. ObjCBlock<Void Function(NSDraggingItem, Long, Pointer<Bool>)>,
    ),
  19. required NSSpringLoadingHighlight springLoadingHighlight(),
  20. required void resetSpringLoading(),
  21. bool $keepIsolateAlive = true,
})

Adds the implementation of the NSDraggingInfo protocol to an existing objc.ObjCProtocolBuilder.

Note: You cannot call this method after you have called builder.build.

Implementation

static void addToBuilder(
  objc.ObjCProtocolBuilder builder, {
  required NSWindow? Function() draggingDestinationWindow,
  required NSDragOperation Function() draggingSourceOperationMask,
  required NSPoint Function() draggingLocation,
  required NSPoint Function() draggedImageLocation,
  required NSImage? Function() draggedImage,
  required NSPasteboard Function() draggingPasteboard,
  required objc.ObjCObjectBase? Function() draggingSource,
  required DartNSInteger Function() draggingSequenceNumber,
  required void Function(NSPoint) slideDraggedImageTo_,
  required objc.NSArray? Function(objc.NSURL)
  namesOfPromisedFilesDroppedAtDestination_,
  required NSDraggingFormation Function() draggingFormation,
  required void Function(NSDraggingFormation) setDraggingFormation_,
  required bool Function() animatesToDestination,
  required void Function(bool) setAnimatesToDestination_,
  required DartNSInteger Function() numberOfValidItemsForDrop,
  required void Function(DartNSInteger) setNumberOfValidItemsForDrop_,
  required void Function(
    NSDraggingItemEnumerationOptions,
    NSView?,
    objc.NSArray,
    objc.NSDictionary,
    objc.ObjCBlock<
      ffi.Void Function(NSDraggingItem, ffi.Long, ffi.Pointer<ffi.Bool>)
    >,
  )
  enumerateDraggingItemsWithOptions_forView_classes_searchOptions_usingBlock_,
  required NSSpringLoadingHighlight Function() springLoadingHighlight,
  required void Function() resetSpringLoading,
  bool $keepIsolateAlive = true,
}) {
  NSDraggingInfo.draggingDestinationWindow.implement(
    builder,
    draggingDestinationWindow,
  );
  NSDraggingInfo.draggingSourceOperationMask.implement(
    builder,
    draggingSourceOperationMask,
  );
  NSDraggingInfo.draggingLocation.implement(builder, draggingLocation);
  NSDraggingInfo.draggedImageLocation.implement(
    builder,
    draggedImageLocation,
  );
  NSDraggingInfo.draggedImage.implement(builder, draggedImage);
  NSDraggingInfo.draggingPasteboard.implement(builder, draggingPasteboard);
  NSDraggingInfo.draggingSource.implement(builder, draggingSource);
  NSDraggingInfo.draggingSequenceNumber.implement(
    builder,
    draggingSequenceNumber,
  );
  NSDraggingInfo.slideDraggedImageTo_.implement(
    builder,
    slideDraggedImageTo_,
  );
  NSDraggingInfo.namesOfPromisedFilesDroppedAtDestination_.implement(
    builder,
    namesOfPromisedFilesDroppedAtDestination_,
  );
  NSDraggingInfo.draggingFormation.implement(builder, draggingFormation);
  NSDraggingInfo.setDraggingFormation_.implement(
    builder,
    setDraggingFormation_,
  );
  NSDraggingInfo.animatesToDestination.implement(
    builder,
    animatesToDestination,
  );
  NSDraggingInfo.setAnimatesToDestination_.implement(
    builder,
    setAnimatesToDestination_,
  );
  NSDraggingInfo.numberOfValidItemsForDrop.implement(
    builder,
    numberOfValidItemsForDrop,
  );
  NSDraggingInfo.setNumberOfValidItemsForDrop_.implement(
    builder,
    setNumberOfValidItemsForDrop_,
  );
  NSDraggingInfo
      .enumerateDraggingItemsWithOptions_forView_classes_searchOptions_usingBlock_
      .implement(
        builder,
        enumerateDraggingItemsWithOptions_forView_classes_searchOptions_usingBlock_,
      );
  NSDraggingInfo.springLoadingHighlight.implement(
    builder,
    springLoadingHighlight,
  );
  NSDraggingInfo.resetSpringLoading.implement(builder, resetSpringLoading);
  builder.addProtocol($protocol);
}