beginSheet(forDirectory:file:modalFor:modalDelegate:didEnd:contextInfo:)
Displays a sheet that allows a user to create a new keychain.
Declaration
func beginSheet(forDirectory path: String!, file name: String!, modalFor docWindow: NSWindow!, modalDelegate delegate: Any!, didEnd didEndSelector: Selector!, contextInfo: UnsafeMutableRawPointer!)Parameters
- path:
The path to the folder where the keychain is created. Specify
nilfor~/Library/Keychains. - name:
The keychain name to be automatically displayed in the Save As field of the sheet.
- docWindow:
The parent window to which the sheet is attached. If this parameter is
nil, the behavior defaults to a standalone modal window. - delegate:
The delegate object in which the method specified in the
didEndSelectorparameter is implemented. - didEndSelector:
A method selector for a delegate method called after the modal session has ended, but before the sheet has been dismissed. Implementation of this delegate method is optional.
- contextInfo:
A pointer to data that is passed to the delegate method. You can use this data pointer for any purpose you wish.
Discussion
The delegate method has the following signature:
- (void)createPanelDidEnd:(NSWindow *)sheet
returnCode:(int)returnCode
contextInfo:(void *)contextInfoThe parameters for the delegate method are:
sheetThe window to which the sheet was attached.
returnCodeThe result code indicating which button the user clicked: either NSFileHandlingPanelOKButton or NSFileHandlingPanelCancelButton.
contextInfoClient-defined contextual data that is passed in the
contextInfoparameter of the beginSheet(forDirectory:file:modalFor:modalDelegate:didEnd:contextInfo:) method.
The delegate method may dismiss the keychain settings sheet itself; if it does not, the sheet is dismissed on return from the beginSheetForDirectory:... method.
Use the keychain() method to obtain the keychain created by the user.