Expand description
§Bindings to the PhotosUI
framework
See Apple’s docs and the general docs on framework crates for more information.
Structs§
- PHLive
Photo View PHLivePhotoView
andobjc2-app-kit
and macOS - Apple’s documentation
- PHLive
Photo View Content Mode PHLivePhotoView
- Apple’s documentation
- PHLive
Photo View Playback Style PHLivePhotoView
- Apple’s documentation
- PHPicker
Capabilities PHPicker
- Constants that specify one or a set of
PHPickerViewController
capabilities. - PHPicker
Configuration PHPicker
- A configuration for
PHPickerViewController.
- PHPicker
Configuration Asset Representation Mode PHPicker
- A mode that determines which representation
PHPickerViewController
should provide for an asset given a type identifier, if multiple representations are available. - PHPicker
Configuration Selection PHPicker
- An enum that determines how
PHPickerViewController
handles user selection. - PHPicker
Filter PHPicker
- A filter that restricts which types of assets
PHPickerViewController
can show. - PHPicker
Mode PHPicker
- An enum that determines the mode of
PHPickerViewController.
- PHPicker
Result PHPicker
- A user selected asset from
PHPickerViewController.
- PHPicker
Update Configuration PHPicker
- An update configuration for
PHPickerViewController.
- PHPicker
View Controller PHPicker
andobjc2-app-kit
and macOS - Apple’s documentation
- PHProject
Asset Element PHProjectInfo
- 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.
- PHProject
Creation Source PHProjectInfo
- 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.
- PHProject
Element PHProjectInfo
- 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.
- PHProject
Extension Context PHProjectExtensionContext
- 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.
- PHProject
Info PHProjectInfo
- 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.
- PHProject
Journal Entry Element PHProjectInfo
- 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.
- PHProject
MapElement PHProjectInfo
- A PHProjectMapElement object representing a map with annotations. In general, these will only be included for projects created from existing Apple Print Product projects.
- PHProject
Region OfInterest PHProjectInfo
- 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.
- PHProject
Section PHProjectInfo
- 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:
- PHProject
Section Content PHProjectInfo
- 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.
- PHProject
Section Type PHProjectInfo
- Options for the sectionType property in PHProjectSection which provides a hint to a section’s intended usage.
- PHProject
Text Element PHProjectInfo
- 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.
- PHProject
Text Element Type PHProjectInfo
- Options for PHProjectTextElementType
- PHProject
Type Description PHProjectTypeDescription
- 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§
- PHProject
Category ⚠Book PhotosUITypes
- Apple’s documentation
- PHProject
Category ⚠Calendar PhotosUITypes
- Apple’s documentation
- PHProject
Category ⚠Card PhotosUITypes
- Apple’s documentation
- PHProject
Category ⚠Other PhotosUITypes
- Apple’s documentation
- PHProject
Category ⚠Prints PhotosUITypes
- Apple’s documentation
- PHProject
Category ⚠Slideshow PhotosUITypes
- Apple’s documentation
- PHProject
Category ⚠Undefined PhotosUITypes
- PHProjectCategoryUndefined is used to indicate that -[PHProjectExtensionController typeDescriptionDataSourceForCategory:invalidator:] should return the data source which provides all project types descriptions.
- PHProject
Category ⚠Wall Decor PhotosUITypes
- Apple’s documentation
- PHProject
Type ⚠Undefined PhotosUITypes
- Apple’s documentation
Traits§
- PHContent
Editing Controller PHContentEditingController
- Apple’s documentation
- PHLive
Photo View Delegate PHLivePhotoView
- Apple’s documentation
- PHPicker
View Controller Delegate PHPicker
- A set of methods that the delegate must implement to respond to
PHPickerViewController
user events. - PHProject
Extension Controller PHProjectExtensionController
- 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.
- PHProject
Type Description Data Source PHProjectTypeDescriptionDataSource
- Apple’s documentation
- PHProject
Type Description Invalidator PHProjectTypeDescriptionDataSource
- Apple’s documentation
Type Aliases§
- PHProject
Category PhotosUITypes
- 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.
- PHProject
Region OfInterest Identifier PHProjectInfo
- Apple’s documentation
- PHProject
Type PhotosUITypes
- Extensible enumerator for PHProjectType. See PHProjectExtensionController.h for more information.