AppKit Framework Reference

Introduction

AppKit is a framework containing all the objects you need to implement your graphical, event-driven user interface: windows, panels, buttons, menus, scrollers, and text fields. AppKit handles all the details for you as it efficiently draws on the screen, communicates with hardware devices and screen buffers, clears areas of the screen before drawing, and clips views. The number of classes in AppKit may seem daunting at first. However, most AppKit classes are support classes that you use indirectly. You also have the choice at which level you use AppKit:

  • Use Interface Builder to create connections from user interface objects to your application objects. In this case, all you need to do is implement your application classes—implement those action and delegate methods. For example, implement the method that is invoked when the user selects a menu item.

  • Control the user interface programmatically, which requires more familiarity with AppKit classes and protocols. For example, allowing the user to drag an icon from one window to another requires some programming and familiarity with the NSDragging... protocols.

  • Implement your own objects by subclassing NSView or other classes. When subclassing NSView you write your own drawing methods using graphics functions. Subclassing requires a deeper understanding of how AppKit works.

To learn more about AppKit, review the NSApplication, NSWindow, and NSView class specifications, paying close attention to delegate methods. For a deeper understanding of how AppKit works, see the specifications for NSResponder and NSRunLoop (NSRunLoop is in the Foundation framework).

[More]

Framework
/System/Library/Frameworks/AppKit.framework
Header file directories
/System/Library/Frameworks/AppKit.framework/Headers
Companion guide

    Class References
  1. CIColor Additions
  2. CIImage Additions
  3. NSActionCell
  4. NSAffineTransform Additions
  5. NSAlert
  6. NSAnimation
  7. NSAnimationContext
  8. NSAppleScript AppKit Additions
  9. NSApplication
  10. NSArrayController
  11. NSATSTypesetter
  12. NSAttributedString AppKit Additions
  13. NSBezierPath
  14. NSBitmapImageRep
  15. NSBox
  16. NSBrowser
  17. NSBrowserCell
  18. NSBundle AppKit Additions
  19. NSButton
  20. NSButtonCell
  21. NSCachedImageRep
  22. NSCell
  23. NSCIImageRep
  24. NSClipView
  25. NSCoder AppKit Additions
  26. NSCollectionView
  27. NSCollectionViewItem
  28. NSColor
  29. NSColorList
  30. NSColorPanel
  31. NSColorPicker
  32. NSColorSpace
  33. NSColorWell
  34. NSComboBox
  35. NSComboBoxCell
  36. NSControl
  37. NSController
  38. NSCursor
  39. NSCustomImageRep
  40. NSDatePicker
  41. NSDatePickerCell
  42. NSDictionaryController
  43. NSDockTile
  44. NSDocument
  45. NSDocumentController
  46. NSDraggingImageComponent
  47. NSDraggingItem
  48. NSDraggingSession
  49. NSDrawer
  50. NSEPSImageRep
  51. NSEvent
  52. NSFileWrapper AppKit Additions
  53. NSFont
  54. NSFontCollection
  55. NSFontDescriptor
  56. NSFontManager
  57. NSFontPanel
  58. NSForm
  59. NSFormCell
  60. NSGlyphGenerator
  61. NSGlyphInfo
  62. NSGradient
  63. NSGraphicsContext
  64. NSHelpManager
  65. NSImage
  66. NSImageCell
  67. NSImageRep
  68. NSImageView
  69. NSLayoutConstraint
  70. NSLayoutManager
  71. NSLevelIndicator
  72. NSLevelIndicatorCell
  73. NSMatrix
  74. NSMediaLibraryBrowserController
  75. NSMenu
  76. NSMenuItem
  77. NSMenuItemCell
  78. NSMenuView
  79. NSMutableAttributedString Additions
  80. NSMutableFontCollection
  81. NSMutableParagraphStyle
  82. NSNib
  83. NSObjectController
  84. NSOpenGLContext
  85. NSOpenGLLayer
  86. NSOpenGLPixelBuffer
  87. NSOpenGLPixelFormat
  88. NSOpenGLView
  89. NSOpenPanel
  90. NSOutlineView
  91. NSPageController
  92. NSPageLayout
  93. NSPanel
  94. NSParagraphStyle
  95. NSPasteboard
  96. NSPasteboardItem
  97. NSPathCell
  98. NSPathComponentCell
  99. NSPathControl
  100. NSPDFImageRep
  101. NSPersistentDocument
  102. NSPICTImageRep
  103. NSPopover
  104. NSPopUpButton
  105. NSPopUpButtonCell
  106. NSPredicateEditor
  107. NSPredicateEditorRowTemplate
  108. NSPrinter
  109. NSPrintInfo
  110. NSPrintOperation
  111. NSPrintPanel
  112. NSProgressIndicator
  113. NSResponder
  114. NSRuleEditor
  115. NSRulerMarker
  116. NSRulerView
  117. NSRunningApplication
  118. NSSavePanel
  119. NSScreen
  120. NSScroller
  121. NSScrollView
  122. NSSearchField
  123. NSSearchFieldCell
  124. NSSecureTextField
  125. NSSecureTextFieldCell
  126. NSSegmentedCell
  127. NSSegmentedControl
  128. NSShadow
  129. NSSharingService
  130. NSSharingServicePicker
  131. NSSlider
  132. NSSliderCell
  133. NSSound
  134. NSSpeechRecognizer
  135. NSSpeechSynthesizer
  136. NSSpellChecker
  137. NSSplitView
  138. NSStackView
  139. NSStatusBar
  140. NSStatusItem
  141. NSStepper
  142. NSStepperCell
  143. NSString Application Kit Additions
  144. NSTableCellView
  145. NSTableColumn
  146. NSTableHeaderCell
  147. NSTableHeaderView
  148. NSTableRowView
  149. NSTableView
  150. NSTabView
  151. NSTabViewItem
  152. NSText
  153. NSTextAttachment
  154. NSTextAttachmentCell
  155. NSTextBlock
  156. NSTextContainer
  157. NSTextField
  158. NSTextFieldCell
  159. NSTextFinder
  160. NSTextInputContext
  161. NSTextList
  162. NSTextStorage
  163. NSTextTab
  164. NSTextTable
  165. NSTextTableBlock
  166. NSTextView
  167. NSTokenField
  168. NSTokenFieldCell
  169. NSToolbar
  170. NSToolbarItem
  171. NSToolbarItemGroup
  172. NSTouch
  173. NSTrackingArea
  174. NSTreeController
  175. NSTreeNode
  176. NSTypesetter
  177. NSURL Additions
  178. NSUserDefaultsController
  179. NSView
  180. NSViewAnimation
  181. NSViewController
  182. NSWindow
  183. NSWindowController
  184. NSWorkspace
    Protocol References
  1. NSAccessibility
  2. NSAlertDelegate
  3. NSAnimatablePropertyContainer
  4. NSAnimationDelegate
  5. NSApplicationDelegate
  6. NSBrowserDelegate
  7. NSChangeSpelling
  8. NSCollectionViewDelegate
  9. NSColorPickingCustom
  10. NSColorPickingDefault
  11. NSComboBoxCellDataSource
  12. NSComboBoxDataSource
  13. NSComboBoxDelegate
  14. NSControlTextEditingDelegate
  15. NSDatePickerCellDelegate
  16. NSDictionaryControllerKeyValuePair
  17. NSDockTilePlugIn
  18. NSDraggingDestination
  19. NSDraggingInfo
  20. NSDraggingSource
  21. NSDrawerDelegate
  22. NSEditor
  23. NSEditorRegistration
  24. NSFontPanelValidation
  25. NSGlyphStorage
  26. NSIgnoreMisspelledWords
  27. NSImageDelegate
  28. NSKeyValueBindingCreation
  29. NSLayerDelegateContentsScaleUpdating
  30. NSLayoutManagerDelegate
  31. NSMatrixDelegate
  32. NSMenuDelegate
  33. NSMenuValidation
  34. NSNibAwaking
  35. NSOpenSavePanelDelegate
  36. NSOutlineViewDataSource
  37. NSOutlineViewDelegate
  38. NSPageControllerDelegate
  39. NSPasteboardItemDataProvider
  40. NSPasteboardReading
  41. NSPasteboardWriting
  42. NSPathCellDelegate
  43. NSPathControlDelegate
  44. NSPlaceholders
  45. NSPopoverDelegate
  46. NSPrintPanelAccessorizing
  47. NSRuleEditorDelegate
  48. NSServicesMenuRequestor
  49. NSSharingServiceDelegate
  50. NSSharingServicePickerDelegate
  51. NSSoundDelegate
  52. NSSpeechRecognizerDelegate
  53. NSSpeechSynthesizerDelegate
  54. NSSplitViewDelegate
  55. NSStackViewDelegate
  56. NSTableViewDataSource
  57. NSTableViewDelegate
  58. NSTabViewDelegate
  59. NSTextAttachmentCell
  60. NSTextDelegate
  61. NSTextFieldDelegate
  62. NSTextFinderBarContainer
  63. NSTextFinderClient
  64. NSTextInput
  65. NSTextInputClient
  66. NSTextLayoutOrientationProvider
  67. NSTextViewDelegate
  68. NSTokenFieldCellDelegate
  69. NSTokenFieldDelegate
  70. NSToolbarDelegate
  71. NSToolbarItemValidation
  72. NSToolTipOwner
  73. NSUserInterfaceItemIdentification
  74. NSUserInterfaceItemSearchDataSource
  75. NSUserInterfaceItemSearching
  76. NSUserInterfaceValidations
  77. NSValidatedUserInterfaceItem
  78. NSWindowDelegate
  79. NSWindowRestoration
  80. NSWindowScripting