fileNameExtension(forType:saveOperation:)
Returns a filename extension that can be appended to a base filename, for a specified file type and kind of save operation.
Declaration
nonisolated func fileNameExtension(forType typeName: String, saveOperation: NSDocument.SaveOperationType) -> String?Parameters
- typeName:
The file type.
- saveOperation:
The kind of save operation.
Return Value
The filename extension.
Discussion
The default implementation of this method invokes preferredFilenameExtension(forType:) on the shared workspace object if the type is a UTI or, if it is not, for backward binary compatibility with OS X v10.4 and earlier, invokes fileExtensionsFromType: on the shared document controller and chooses the first filename extension in the returned array.
You can override this method to customize the appending of extensions to filenames by NSDocument. Starting in OS X v10.5, it is invoked from only two places in AppKit:
The autosave(withDelegate:didAutosave:contextInfo:) method uses this method when creating a new filename for the autosaved contents.
The handleSave(_:) method uses this method when adding an extension to the filename specified by a script.
In all other cases, the name of any file being saved will have been fully specified by the user with the Save panel (whether they know it or not).