implementAsBlocking static method
NSUserInterfaceItemSearching
implementAsBlocking({
- required void searchForItemsWithSearchString_resultLimit_matchedItemHandler_(
- NSString,
- DartNSInteger,
- ObjCBlock<
Void Function(NSArray)>
- required NSArray localizedTitlesForItem_(
- ObjCObjectBase originalChild
- void performActionForItem_(
- ObjCObjectBase
- void showAllHelpTopicsForSearchString_()?,
- bool $keepIsolateAlive = true,
Builds an object that implements the NSUserInterfaceItemSearching protocol. To implement
multiple protocols, use addToBuilder or objc.ObjCProtocolBuilder directly. All
methods that can be implemented as blocking listeners will be.
If $keepIsolateAlive is true, this protocol will keep this isolate
alive until it is garbage collected by both Dart and ObjC.
Implementation
static NSUserInterfaceItemSearching implementAsBlocking({
required void Function(
objc.NSString,
DartNSInteger,
objc.ObjCBlock<ffi.Void Function(objc.NSArray)>,
)
searchForItemsWithSearchString_resultLimit_matchedItemHandler_,
required objc.NSArray Function(objc.ObjCObjectBase) localizedTitlesForItem_,
void Function(objc.ObjCObjectBase)? performActionForItem_,
void Function(DartCAMediaTimingFillMode)? showAllHelpTopicsForSearchString_,
bool $keepIsolateAlive = true,
}) {
final builder = objc.ObjCProtocolBuilder(
debugName: 'NSUserInterfaceItemSearching',
);
NSUserInterfaceItemSearching
.searchForItemsWithSearchString_resultLimit_matchedItemHandler_
.implementAsBlocking(
builder,
searchForItemsWithSearchString_resultLimit_matchedItemHandler_,
);
NSUserInterfaceItemSearching.localizedTitlesForItem_.implement(
builder,
localizedTitlesForItem_,
);
NSUserInterfaceItemSearching.performActionForItem_.implementAsBlocking(
builder,
performActionForItem_,
);
NSUserInterfaceItemSearching.showAllHelpTopicsForSearchString_
.implementAsBlocking(builder, showAllHelpTopicsForSearchString_);
builder.addProtocol($protocol);
return NSUserInterfaceItemSearching.castFrom(
builder.build(keepIsolateAlive: $keepIsolateAlive),
);
}