pub unsafe trait NSSharingServicePickerDelegate: NSObjectProtocol {
// Provided methods
unsafe fn sharingServicePicker_sharingServicesForItems_proposedSharingServices(
&self,
sharing_service_picker: &NSSharingServicePicker,
items: &NSArray,
proposed_services: &NSArray<NSSharingService>,
) -> Retained<NSArray<NSSharingService>>
where Self: Sized + Message { ... }
unsafe fn sharingServicePicker_delegateForSharingService(
&self,
sharing_service_picker: &NSSharingServicePicker,
sharing_service: &NSSharingService,
mtm: MainThreadMarker,
) -> Option<Retained<ProtocolObject<dyn NSSharingServiceDelegate>>>
where Self: Sized + Message { ... }
unsafe fn sharingServicePicker_didChooseSharingService(
&self,
sharing_service_picker: &NSSharingServicePicker,
service: Option<&NSSharingService>,
)
where Self: Sized + Message { ... }
unsafe fn sharingServicePickerCollaborationModeRestrictions(
&self,
sharing_service_picker: &NSSharingServicePicker,
) -> Option<Retained<NSArray<NSSharingCollaborationModeRestriction>>>
where Self: Sized + Message { ... }
}
NSSharingService
only.Expand description
Provided Methods§
Sourceunsafe fn sharingServicePicker_sharingServicesForItems_proposedSharingServices(
&self,
sharing_service_picker: &NSSharingServicePicker,
items: &NSArray,
proposed_services: &NSArray<NSSharingService>,
) -> Retained<NSArray<NSSharingService>>
unsafe fn sharingServicePicker_sharingServicesForItems_proposedSharingServices( &self, sharing_service_picker: &NSSharingServicePicker, items: &NSArray, proposed_services: &NSArray<NSSharingService>, ) -> Retained<NSArray<NSSharingService>>
Allows the delegate to customize exactly what appears in the sharing service picker by reordering or removing the services before the picker is presented. It’s possible to add custom services by mutating the proposedSharingServices array and adding new NSSharingService instances:
NSMutableArray *sharingServices = [proposedServices mutableCopy];
NSSharingService * customService = [[NSSharingService alloc] initWithTitle:
"
Service Title"
image:image alternateImage:alternateImage
handler:^{ [self doCustomServiceWithItems:items]; } ];
[sharingServices addObject:customService];
return [sharingServices autorelease];
The items represent the objects to be shared and must conform to the <NSPasteboardWriting
protocol or be an NSItemProvider or an NSDocument. (e.g. NSString, NSImage, NSURL, etc.)
Sourceunsafe fn sharingServicePicker_delegateForSharingService(
&self,
sharing_service_picker: &NSSharingServicePicker,
sharing_service: &NSSharingService,
mtm: MainThreadMarker,
) -> Option<Retained<ProtocolObject<dyn NSSharingServiceDelegate>>>
unsafe fn sharingServicePicker_delegateForSharingService( &self, sharing_service_picker: &NSSharingServicePicker, sharing_service: &NSSharingService, mtm: MainThreadMarker, ) -> Option<Retained<ProtocolObject<dyn NSSharingServiceDelegate>>>
Sent when the user has selected a service and the picker is about to execute it.
Sourceunsafe fn sharingServicePicker_didChooseSharingService(
&self,
sharing_service_picker: &NSSharingServicePicker,
service: Option<&NSSharingService>,
)
unsafe fn sharingServicePicker_didChooseSharingService( &self, sharing_service_picker: &NSSharingServicePicker, service: Option<&NSSharingService>, )
Sent when the user has selected a service and before it is executed. Service will be nil if the picker was dismissed.
Sourceunsafe fn sharingServicePickerCollaborationModeRestrictions(
&self,
sharing_service_picker: &NSSharingServicePicker,
) -> Option<Retained<NSArray<NSSharingCollaborationModeRestriction>>>
Available on crate feature NSSharingCollaborationModeRestriction
only.
unsafe fn sharingServicePickerCollaborationModeRestrictions( &self, sharing_service_picker: &NSSharingServicePicker, ) -> Option<Retained<NSArray<NSSharingCollaborationModeRestriction>>>
NSSharingCollaborationModeRestriction
only.Used to specify the case where the share picker should not support some modes of sharing even if they are supported by the items being shared. Disabling all possible modes at the same time is not supported behavior.