implement static method
NSPathControlDelegate
implement({
- bool pathControl_shouldDragItem_withPasteboard_()?,
- bool pathControl_shouldDragPathComponentCell_withPasteboard_()?,
- NSDragOperation pathControl_validateDrop_()?,
- bool pathControl_acceptDrop_()?,
- void pathControl_willDisplayOpenPanel_()?,
- void pathControl_willPopUpMenu_()?,
- bool $keepIsolateAlive = true,
Builds an object that implements the NSPathControlDelegate protocol. To implement
multiple protocols, use addToBuilder or objc.ObjCProtocolBuilder directly.
If $keepIsolateAlive is true, this protocol will keep this isolate
alive until it is garbage collected by both Dart and ObjC.
Implementation
static NSPathControlDelegate implement({
bool Function(NSPathControl, NSPathControlItem, NSPasteboard)?
pathControl_shouldDragItem_withPasteboard_,
bool Function(NSPathControl, NSPathComponentCell, NSPasteboard)?
pathControl_shouldDragPathComponentCell_withPasteboard_,
NSDragOperation Function(NSPathControl, NSDraggingInfo)?
pathControl_validateDrop_,
bool Function(NSPathControl, NSDraggingInfo)? pathControl_acceptDrop_,
void Function(NSPathControl, NSOpenPanel)?
pathControl_willDisplayOpenPanel_,
void Function(NSPathControl, NSMenu)? pathControl_willPopUpMenu_,
bool $keepIsolateAlive = true,
}) {
final builder = objc.ObjCProtocolBuilder(
debugName: 'NSPathControlDelegate',
);
NSPathControlDelegate.pathControl_shouldDragItem_withPasteboard_.implement(
builder,
pathControl_shouldDragItem_withPasteboard_,
);
NSPathControlDelegate
.pathControl_shouldDragPathComponentCell_withPasteboard_
.implement(
builder,
pathControl_shouldDragPathComponentCell_withPasteboard_,
);
NSPathControlDelegate.pathControl_validateDrop_.implement(
builder,
pathControl_validateDrop_,
);
NSPathControlDelegate.pathControl_acceptDrop_.implement(
builder,
pathControl_acceptDrop_,
);
NSPathControlDelegate.pathControl_willDisplayOpenPanel_.implement(
builder,
pathControl_willDisplayOpenPanel_,
);
NSPathControlDelegate.pathControl_willPopUpMenu_.implement(
builder,
pathControl_willPopUpMenu_,
);
builder.addProtocol($protocol);
return NSPathControlDelegate.castFrom(
builder.build(keepIsolateAlive: $keepIsolateAlive),
);
}