Jump To:
Reference Library: Cocoa
User experience encompasses the visual appearance, interactive behavior, and assistive capabilities of software. From an application's graphical user interface to its use of additional technologies such as speech recognition and speech synthesis, a cohesive and professional user experience is what Mac users have come to expect. Cocoa provides a complete suite of Interface Builder palettes and programmatic interfaces that developers can use to deliver this experience in their applications.

View all User Experience Reference Library.
Document Descriptions
On Off
Display

Sort by
Title
Sorted by
Resource Type
Sort by
Date
Binding your Preferences in Cocoa (HTML)
Learn to use bindings by creating a simple app.
Articles 2004-04-26
Using the Web Kit for Application Registration (HTML)
Learn how to use the Web Kit to handle your application's online registration.
Articles 2004-03-09
Apple Human Interface Guidelines (HTML) (PDF)
Introduces the Mac OS X user experience and explains how to design an application for Aqua.
Guides 2008-06-09
Cursor Management (HTML) (PDF)
Explains how to set the cursor and handle cursor-update events in Cocoa applications.
Guides 2008-03-11
Quick Look Programming Guide (HTML) (PDF)
Describes the purporse and architecture of Quick Look generators and explains how to create them.
Guides 2008-02-08
Search Fields (HTML) (PDF)
Explains how to use Cocoa search fields.
Guides 2008-02-08
Button Programming Topics for Cocoa (HTML) (PDF)
Explains how to use Cocoa buttons.
Guides 2007-12-11
Token Field Programming Guide for Cocoa (HTML) (PDF)
Describes how to set up and programatically manage a token field.
Guides 2007-12-11
Apple Help Programming Guide (HTML) (PDF)
Explains how to author, package, and display user help content in Mac OS X.
Guides 2007-10-31
User Defaults Programming Topics for Cocoa (HTML) (PDF)
Explains how to use the Cocoa defaults system to create and save user preferences.
Guides 2007-10-31
Pasteboard Programming Topics for Cocoa (HTML) (PDF)
Explains how to transfer data using pasteboard operations in Cocoa.
Guides 2007-07-13
User Interface Validation (HTML) (PDF)
Explains how to use the standard mechanism to validate user interface items in Cocoa.
Guides 2007-07-10
Application Menu and Pop-up List Programming Topics for Cocoa (HTML) (PDF)
Explains how Cocoa menus and lists work and how to manipulate items within them.
Guides 2007-06-26
Cocoa Bindings Programming Topics (HTML) (PDF)
Explains how to rapidly develop sophisticated user interfaces using Cocoa binding technology.
Guides 2007-05-22
Resolution Independence Guidelines (HTML) (PDF)
Describes resolution independence and how to start updating applications to support high-resolution monitors.
Guides 2007-05-04
Accessibility Programming Guidelines for Cocoa (HTML) (PDF)
Explains how Cocoa applications make their user interface available to external assistive applications.
Guides 2007-02-08
Toolbar Programming Topics for Cocoa (HTML) (PDF)
Explains how to use Cocoa toolbars.
Guides 2007-01-08
Matrix Programming Guide for Cocoa (HTML) (PDF)
Explains how to use Cocoa matrices.
Guides 2006-11-07
Control and Cell Programming Topics for Cocoa (HTML) (PDF)
Explains the relationship between Cocoa control and cell objects.
Guides 2006-10-16
Preference Panes (HTML) (PDF)
Explains how to create dynamically loaded plug-ins that provide a graphical interface to user preferences.
Guides 2006-10-03
Slider Programming Topics for Cocoa (HTML) (PDF)
Explains how to use Cocoa sliders.
Guides 2006-10-03
Window Programming Guide for Cocoa (HTML) (PDF)
Explains how to use Cocoa windows and panels.
Guides 2006-10-03
Sheet Programming Topics for Cocoa (HTML) (PDF)
Explains how to use Cocoa sheets.
Guides 2006-09-05
Speech Synthesis Programming Guide (HTML) (PDF)
Describes speech synthesis in Mac OS X and explains how your application can produce customized spoken output.
Guides 2006-09-05
Software Delivery Guide (HTML) (PDF)
Explains how to distribute and install Mac OS X software using PackageMaker and Installer.
Guides 2006-07-24
Drag and Drop Programming Topics for Cocoa (HTML) (PDF)
Explains how to implement drag and drop in Cocoa.
Guides 2006-06-28
Online Help (HTML) (PDF)
Explains how to add help to a Cocoa application.
Guides 2006-06-28
Outline View Programming Topics for Cocoa (HTML) (PDF)
Explains how to use Cocoa outline views.
Guides 2006-06-28
Scroll View Programming Guide for Cocoa (HTML) (PDF)
Describes how to use scroll views in Cocoa applications.
Guides 2006-06-28
Text System User Interface Layer Programming Guide for Cocoa (HTML) (PDF)
Explains how to implement the main, high-level interface to the Cocoa text system.
Guides 2006-06-28
Web Kit Objective-C Programming Guide (HTML) (PDF)
Explains how to use the Web Kit to embed web content in both Cocoa and Carbon applications.
Guides 2006-05-23
Table View Programming Guide (HTML) (PDF)
Explains how to use Cocoa table views.
Guides 2006-04-04
Segmented Controls Programming Guide for Cocoa (HTML) (PDF)
Explains how to use Cocoa segmented controls.
Guides 2006-02-07
Search Kit Programming Guide (HTML) (PDF)
Describes Search Kit architecture and workflow, and how to add search capabilities to Carbon and Cocoa applications.
Guides 2005-12-06
Browsers (HTML) (PDF)
Explains how to use Cocoa browsers.
Guides 2004-08-31
Font Panel (HTML) (PDF)
Explains how to use the Cocoa Font panel.
Guides 2004-08-31
Spell Checking (HTML) (PDF)
Explains how to use the spell-checking facilities in the Cocoa text system.
Guides 2004-02-09
Text Fields (HTML) (PDF)
Explains how to use Cocoa text fields.
Guides 2004-02-09
Text Views (HTML) (PDF)
Explains how to use Cocoa text views.
Guides 2004-02-09
Tab Views (HTML) (PDF)
Explains how to use Cocoa tab views.
Guides 2003-11-06
Speech (HTML) (PDF)
Explains Cocoa's interfaces to the speech synthesis and speech recognition technologies.
Guides 2003-08-08
Dialogs and Special Panels (HTML) (PDF)
Explains how to create alert panels. Includes links to documents about other types of panels.
Guides 2003-08-01
Boxes (HTML) (PDF)
Explains how to use Cocoa boxes.
Guides 2003-02-15
Drawers (HTML) (PDF)
Explains how to use Cocoa drawers.
Guides 2003-02-04
Combo Boxes (HTML) (PDF)
Explains how to use Cocoa combo boxes.
Guides 2002-11-12
Forms (HTML) (PDF)
Explains how to use Cocoa forms.
Guides 2002-11-12
Image Views (HTML) (PDF)
Explains how to use Cocoa image views.
Guides 2002-11-12
Progress Indicators (HTML) (PDF)
Explains how to use Cocoa progress indicators.
Guides 2002-11-12
Status Bars (HTML) (PDF)
Explains how to use Cocoa status bars.
Guides 2002-11-12
Steppers (HTML) (PDF)
Explains how to use Cocoa steppers.
Guides 2002-11-12
System Services (HTML) (PDF)
Explains how Cocoa applications can extend their capabilities seamlessly to other applications.
Guides 2002-11-12
Undo Architecture (HTML) (PDF)
Explains how to record information in Cocoa so a user can reverse an operation's effect.
Guides 2002-11-12
NSPanel Class Reference (HTML) (PDF)
Describes the class that implements a lightweight, easy-access window.
Reference 2008-07-11
NSSavePanel Class Reference (HTML) (PDF)
Describes the class used to present a dialog that allows users to browse the file system before saving files.
Reference 2008-07-11
Web Kit Constants Reference (HTML) (PDF)
Describes the types and constants found in the Web Kit framework.
Reference 2008-06-19
WebBackForwardList Class Reference (HTML) (PDF)
Describes the class for tracking a list of visited pages with relation to the most recent page.
Reference 2008-06-19
WebFrame Class Reference (HTML) (PDF)
Describes the class for encapsulating the data displayed within a WebFrameView object.
Reference 2008-06-19
WebFrameLoadDelegate Protocol Reference (HTML) (PDF)
Describes the protocol adopted by WebView frame load delegates to be notified while frame loads are in progress.
Reference 2008-06-19
WebFrameView Class Reference (HTML) (PDF)
Describes the class for displaying the actual web content contained in a frame.
Reference 2008-06-19
WebPreferences Class Reference (HTML) (PDF)
Describes the class for the preferences you can change per WebView object, such as font, text encoding, and image settings.
Reference 2008-06-19
WebResourceLoadDelegate Protocol Reference (HTML) (PDF)
Describes the protocol used to be notified on the progress of loading individual resources.
Reference 2008-06-19
WebScripting Protocol Reference (HTML) (PDF)
Describes the protocol that defines methods that classes can implement to expose their interfaces to a WebScript environment.
Reference 2008-06-19
WebScriptObject Class Reference (HTML) (PDF)
Describes the class for bridging a web view's scripting environment and the Objective-C runtime.
Reference 2008-06-19
WebUIDelegate Protocol Reference (HTML) (PDF)
Describes the protocol used to control user interface-related aspects, such as opening windows and augmenting default menus.
Reference 2008-06-19
WebView Class Reference (HTML) (PDF)
Describes the class for embedding web content in a window.
Reference 2008-06-19
NSDatePicker Class Reference (HTML) (PDF)
Describes the class that provides a control for displaying and editing a date.
Reference 2008-06-09
NSDatePickerCell Class Reference (HTML) (PDF)
Describes the class that provides a cell for displaying and editing a date.
Reference 2008-06-09
Disc Recording UI Framework Reference (HTML)
Describes the Objective-C and C API for presenting a user interface when burning audio and data CDs and DVDs.
Reference 2008-04-08
NSProgressIndicator Class Reference (HTML) (PDF)
Describes the class used to display a progress indicator that shows that a lengthy task is under way.
Reference 2008-03-11
NSSearchFieldCell Class Reference (HTML) (PDF)
Describes the class for managing search-field cells.
Reference 2008-03-11
NSCursor Class Reference (HTML) (PDF)
Describes the class used to manage the appearance of the cursor.
Reference 2008-02-08
NSLocale Class Reference (HTML) (PDF)
Describes the class used to encapsulate information about linguistic, cultural, and technological conventions and standards.
Reference 2008-02-08
NSMenu Class Reference (HTML) (PDF)
Describes the class for managing an application's menus.
Reference 2008-02-08
NSMenuItem Class Reference (HTML) (PDF)
Describes the class for creating and managing command items in menus.
Reference 2008-02-08
NSRuleEditor Class Reference (HTML) (PDF)
Describes the class used to present and manage a graphical rule editor.
Reference 2008-02-08
NSButtonCell Class Reference (HTML) (PDF)
Describes the class that implements the functionality of a button.
Reference 2007-12-11
NSCollectionView Class Reference (HTML) (PDF)
Describes the class used for creating groups of views from a prototype view.
Reference 2007-12-11
NSUserDefaults Class Reference (HTML) (PDF)
Describes the class for managing preference information.
Reference 2007-12-11
Application Kit Framework Reference (HTML) (PDF)
Describes the Cocoa Objective-C API for the Application Kit framework.
Reference 2007-10-31
Cocoa Bindings Reference (HTML) (PDF)
Describes the bindings, including options and placeholders, for classes that support Cocoa bindings.
Reference 2007-10-31
NSAnimation Class Reference (HTML) (PDF)
Describes the class for managing the timing and progress of animations in the user interface.
Reference 2007-10-31
NSCell Class Reference (HTML) (PDF)
Describes the base class for managing cells.
Reference 2007-10-31
NSNumberFormatter Class Reference (HTML) (PDF)
Describes the class used to convert between the textual representation of NSNumbers objects and their stored values.
Reference 2007-10-31
NSSecureTextFieldCell Class Reference (HTML) (PDF)
Describes the class that implements the user interface of NSSecureTextField.
Reference 2007-10-31
NSTableColumn Class Reference (HTML) (PDF)
Describes the class that encapsulates the display characteristics and attribute identifiers for a column in an table view.
Reference 2007-10-31
NSTableView Class Reference (HTML) (PDF)
Describes the class that displays and edits record-oriented data in a table.
Reference 2007-10-31
NSTextField Class Reference (HTML) (PDF)
Describes the class used to display text that the user can select or edit.
Reference 2007-10-31
NSWindow Class Reference (HTML) (PDF)
Describes the class used to manipulate windows and distribute window events to the appropriate view.
Reference 2007-10-31
QLThumbnailRequest Reference (HTML) (PDF)
Describes the opaque type used by Quick Look generators to create thumbnail images for documents.
Reference 2007-10-31
NSOutlineView Class Reference (HTML) (PDF)
Describes the class used to present a row-and-column format view to display hierarchical data that can be expanded and collapsed.
Reference 2007-07-26
NSSpeechSynthesizer Class Reference (HTML) (PDF)
Describes the class used to parse text into speech.
Reference 2007-07-23
NSDockTile Class Reference (HTML) (PDF)
Describes the class that supports customizing application and window icons in the dock.
Reference 2007-07-20
Preference Panes Reference Update (HTML) (PDF)
Summarizes the symbols added to the Preference Panes framework.
Reference 2007-07-18
NSControl Class Reference (HTML) (PDF)
Describes the base class for implementing controls.
Reference 2007-07-13
NSFormatter Class Reference (HTML) (PDF)
Describes the abstract superclass for objects that create, interpret, and validate the textual representation of cell contents.
Reference 2007-07-09
NSSplitView Class Reference (HTML) (PDF)
Describes the class that displays multiple subviews within a single view and allows the user to change their relative sizes.
Reference 2007-06-13
NSBox Class Reference (HTML) (PDF)
Describes the class that implements a view that can display its border and a title.
Reference 2007-05-30
NSViewController Class Reference (HTML) (PDF)
Describes the class used to manage a view, usually a view stored in a nib file.
Reference 2007-05-02
NSColorPickingDefault Protocol Reference (HTML) (PDF)
Describes the protocol that color pickers implement to provide a basic user interface for color panels.
Reference 2007-04-27
NSAlert Class Reference (HTML) (PDF)
Describes the class used to display a message and obtain the user's response to it.
Reference 2007-04-25