Crate objc2_photos_ui

Source
Expand description

§Bindings to the PhotosUI framework

See Apple’s docs and the general docs on framework crates for more information.

Structs§

PHLivePhotoViewPHLivePhotoView and objc2-app-kit and macOS
Apple’s documentation
PHLivePhotoViewContentModePHLivePhotoView
Apple’s documentation
PHLivePhotoViewPlaybackStylePHLivePhotoView
Apple’s documentation
PHPickerCapabilitiesPHPicker
Constants that specify one or a set of PHPickerViewControllercapabilities.
PHPickerConfigurationPHPicker
A configuration for PHPickerViewController.
PHPickerConfigurationAssetRepresentationModePHPicker
A mode that determines which representation PHPickerViewControllershould provide for an asset given a type identifier, if multiple representations are available.
PHPickerConfigurationSelectionPHPicker
An enum that determines how PHPickerViewControllerhandles user selection.
PHPickerFilterPHPicker
A filter that restricts which types of assets PHPickerViewControllercan show.
PHPickerModePHPicker
An enum that determines the mode of PHPickerViewController.
PHPickerResultPHPicker
A user selected asset from PHPickerViewController.
PHPickerUpdateConfigurationPHPicker
An update configuration for PHPickerViewController.
PHPickerViewControllerPHPicker and objc2-app-kit and macOS
Apple’s documentation
PHProjectAssetElementPHProjectInfo
A PHProjectAssetElement object represents a media asset within a PHProjectSectionContent. The underlying PHAsset can be accessed by converting the provided cloudAssetIdentifier to a localIdentifier, then using the fetchAssetsWithLocalIdentifiers:options: class method defined in PHAsset.h.
PHProjectCreationSourcePHProjectInfo
PHProjectCreationSource is provided as a hint to project extensions of the user context at the time of project creation. For example, if a user is viewing a Memory in the Photos app and from that chooses the ‘Create Project’ option, the creationSource provided in PHProjectInfo will be PHProjectCreationSourceMemory.
PHProjectElementPHProjectInfo
PHProjectElement is the superclass for all element objects. It is never directly used, but defines the shared properties of any element in an instance of PHProjectSectionContent.
PHProjectExtensionContextPHProjectExtensionContext
When a Photos project extension is initialized, it is handed a PHProjectExtensionContext object. This object provides the extension access to the underlying project as well as the photo library from which assets can be fetched.
PHProjectInfoPHProjectInfo
A PHProjectInfo object is created by Photos and passed along with a PHProjectExtensionContext any time Photos creates a new project. It comprises the complete content description which a Photos Project Extension can leverage to influence things like project layout, auto-flow, or theme selection. The properties in this class are inmutable and the class cannot be instatiated by an extension directly.
PHProjectJournalEntryElementPHProjectInfo
A PHProjectJournalEntryElement object represents auxilary, date specific information that may be interesting to include in a project. For example, callouts for specific birthdays or holidays. In general, these will only be included for projects created from existing Apple Calendar projects.
PHProjectMapElementPHProjectInfo
A PHProjectMapElement object representing a map with annotations. In general, these will only be included for projects created from existing Apple Print Product projects.
PHProjectRegionOfInterestPHProjectInfo
In PHProjectAssetElement objects, an array of PHProjectRegionOfInterest objects may be provided. These regions represent specific areas in an asset that have signficant meaning. For example, faces that are relevant to the user (as opposed to faces in a crowd) will be highlighted in the asset to help with things like auto-pan, auto-zoom, or focusing on specific areas in the asset during animations or transitions. Regions representing the same person or object across multiple assets are cross-referenced through the use of the identifier.
PHProjectSectionPHProjectInfo
A PHProjectSection object represents a collection of content for the project including asset elements and text elements. Each section contains one or more PHProjectSectionContent objects which provide suggested levels of “curation” for the content contained in the section. The number of sections included in PHProjectInfo will vary depending on the creation source at the time of the project initiation. For example:
PHProjectSectionContentPHProjectInfo
A PHProjectSectionContent object contains all the elements and suggested layout information for a specific level of curation within a PHProjectSection. A section can provide multiple content objects, but only one is intended to be used in a project based on the amount of content detail desired.
PHProjectSectionTypePHProjectInfo
Options for the sectionType property in PHProjectSection which provides a hint to a section’s intended usage.
PHProjectTextElementPHProjectInfo
A PHProjectTextElement object represents formatted, positioned text that should be considered for inclusion in a project. In this case of a Memory, this will always be the Title and Subtitle show in the Memory header view. For projects created from Apple Book, Card, and Calendar projects, text appearing on any page.
PHProjectTextElementTypePHProjectInfo
Options for PHProjectTextElementType
PHProjectTypeDescriptionPHProjectTypeDescription
A PHProjectTypeDescription object represents one project type choice in the project picker that is presented to a user when creating a project via a project extension. These objects are returned from the PHProjectTypeDescriptionDataSource object returned from -[PHProjectExtensionController typeDescriptionDataSourceForCategory:invalidator:]. The info includes a type, localized title, localized (attributed) description, image and optional subtype descriptions.

Statics§

PHProjectCategoryBookPhotosUITypes
Apple’s documentation
PHProjectCategoryCalendarPhotosUITypes
Apple’s documentation
PHProjectCategoryCardPhotosUITypes
Apple’s documentation
PHProjectCategoryOtherPhotosUITypes
Apple’s documentation
PHProjectCategoryPrintsPhotosUITypes
Apple’s documentation
PHProjectCategorySlideshowPhotosUITypes
Apple’s documentation
PHProjectCategoryUndefinedPhotosUITypes
PHProjectCategoryUndefined is used to indicate that -[PHProjectExtensionController typeDescriptionDataSourceForCategory:invalidator:] should return the data source which provides all project types descriptions.
PHProjectCategoryWallDecorPhotosUITypes
Apple’s documentation
PHProjectTypeUndefinedPhotosUITypes
Apple’s documentation

Traits§

PHContentEditingControllerPHContentEditingController
Apple’s documentation
PHLivePhotoViewDelegatePHLivePhotoView
Apple’s documentation
PHPickerViewControllerDelegatePHPicker
A set of methods that the delegate must implement to respond to PHPickerViewControlleruser events.
PHProjectExtensionControllerPHProjectExtensionController
The principal view controller for any Photos Project Extension must conform to the PHProjectExtensionController protocol. Methods in this protocol define the basic lifecycle of the extension controller as well as optionally allow for definition of project types supported by the extension.
PHProjectTypeDescriptionDataSourcePHProjectTypeDescriptionDataSource
Apple’s documentation
PHProjectTypeDescriptionInvalidatorPHProjectTypeDescriptionDataSource
Apple’s documentation

Type Aliases§

PHProjectCategoryPhotosUITypes
Extensible enumerator for PHProjectCategory. Add a PHProjectCategory key to the NSExtensionAttributes dictionary of your project extension’s Info.plist. The value for the key should be an array which can contain any of the PHProjectCategory values declared in this framework.
PHProjectRegionOfInterestIdentifierPHProjectInfo
Apple’s documentation
PHProjectTypePhotosUITypes
Extensible enumerator for PHProjectType. See PHProjectExtensionController.h for more information.