Jump To:
Leopard Guides
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.

A guided introduction for developers new to adopting the Mac OS X user experience.   Essential information for developers implementing application user interfaces.   APIs for implementing the look and feel of Mac OS X application software.
Document Descriptions
On Off
Display

Sort by
Title
Sorted by
Topic
Sort by
Date
Accessibility Overview (HTML) (PDF)
Explains how to use the accessibility features built into Mac OS X.
Accessibility 2008-03-11
Accessibility Programming Guidelines for Carbon (HTML) (PDF)
Explains how to access-enable Carbon applications.
Accessibility 2007-02-08
Accessibility Programming Guidelines for Cocoa (HTML) (PDF)
Explains how Cocoa applications make their user interface available to external assistive applications.
Accessibility 2007-02-08
Apple Human Interface Guidelines (HTML) (PDF)
Introduces the Mac OS X user experience and explains how to design an application for Aqua.
Accessibility 2008-06-09
Mac OS X Technology Overview (HTML) (PDF)
Introduces Mac OS X and its technologies.
Accessibility 2008-10-15
Speech (HTML) (PDF)
Explains Cocoa's interfaces to the speech synthesis and speech recognition technologies.
Accessibility 2003-08-08
Dashboard Programming Topics (HTML) (PDF)
Explains Dashboard and WebKit technologies used in widgets.
Apple Applications 2009-02-04
Identity Services Programming Guide (HTML) (PDF)
Explains how identities work and how to use them in applications.
Apple Applications 2008-10-15
Mail Programming Topics (HTML) (PDF)
Explains how to customize Mail features.
Apple Applications 2007-05-22
Accessibility Programming Guidelines for Carbon (HTML) (PDF)
Explains how to access-enable Carbon applications.
Carbon 2007-02-08
Apple Help Programming Guide (HTML) (PDF)
Explains how to author, package, and display user help content in Mac OS X.
Carbon 2007-10-31
Apple Human Interface Guidelines (HTML) (PDF)
Introduces the Mac OS X user experience and explains how to design an application for Aqua.
Carbon 2008-06-09
Creating Carbon Menus (HTML) (PDF)
Describes how to create menus in Carbon applications.
Carbon 2004-02-23
Data Browser Programming Guide (HTML) (PDF)
Explains how to present data in lists similar to the list and column views in the Finder.
Carbon 2007-08-07
Desktop Icons (HTML)
Explains how to provide custom icons for a Carbon application and its documents.
Carbon 2002-08-19
Dock Tile Programming Guide (HTML) (PDF)
Explains how to provide an icon and contextual menu in Carbon applications.
Carbon 2009-03-04
Handling Carbon Windows and Controls (HTML) (PDF)
A guidebook for implementing windows and controls in Carbon applications.
Carbon 2005-07-07
HIArchive Programming Guide (HTML) (PDF)
Describes how to store data objects using HIArchive. Also includes information to make custom HIObjects archivable.
Carbon 2005-08-11
HIToolbar Programming Guide (HTML) (PDF)
Explains how to create toolbars in Carbon applications.
Carbon 2005-07-07
HIView Programming Guide (HTML) (PDF)
Describes view-based controls and how to implement them in Carbon applications.
Carbon 2007-10-31
Navigation Services for Carbon: An Overview (HTML) (PDF)
Introduces changes to the Navigation Services API for CarbonLib and Carbon in Mac OS X.
Carbon 2003-12-10
Navigation Services Programming Guide (HTML) (PDF)
Explains how to provide a user interface for navigating to, opening, and saving files.
Carbon 2007-07-10
Obtaining and Using Icons With Icon Services (HTML) (PDF)
Explains how to obtain and display icons for a Carbon application or extension.
Carbon 2003-02-01
Programming with the Appearance Manager (HTML)
Explains how to make an application's user interface look like the Mac OS user interface.
Carbon 2001-11-20
Providing Help Tags in Carbon (HTML) (PDF)
Explains how to add contextually sensitive help content to an application's user interface.
Carbon 2002-07-01
Quick Look Programming Guide (HTML) (PDF)
Describes the purporse and architecture of Quick Look generators and explains how to create them.
Carbon 2008-02-08
Resolution Independence Guidelines (HTML) (PDF)
Describes resolution independence and how to start updating applications to support high-resolution monitors.
Carbon 2007-05-04
Search Kit Programming Guide (HTML) (PDF)
Describes Search Kit architecture and workflow, and how to add search capabilities to Carbon and Cocoa applications.
Carbon 2005-12-06
Setting Up Your Carbon Application to Use the Services Menu (HTML) (PDF)
Explains how to make a Carbon application share functionality with other applications.
Carbon 2003-12-10
Unarchiving Interface Objects With Interface Builder Services (HTML) (PDF)
Explains how to reconstitute user interface elements in Carbon applications.
Carbon 2004-02-17
Upgrading to the Mac OS X HIToolbox (HTML) (PDF)
A porting guide for Carbon developers seeking to adopt Mac OS X HIToolbox features such as nib-based windows and HIViews.
Carbon 2004-06-28
Accessibility Programming Guidelines for Cocoa (HTML) (PDF)
Explains how Cocoa applications make their user interface available to external assistive applications.
Cocoa 2007-02-08
Apple Help Programming Guide (HTML) (PDF)
Explains how to author, package, and display user help content in Mac OS X.
Cocoa 2007-10-31
Apple Human Interface Guidelines (HTML) (PDF)
Introduces the Mac OS X user experience and explains how to design an application for Aqua.
Cocoa 2008-06-09
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.
Cocoa 2007-06-26
Boxes (HTML) (PDF)
Explains how to use Cocoa boxes.
Cocoa 2003-02-15
Browsers (HTML) (PDF)
Explains how to use Cocoa browsers.
Cocoa 2004-08-31
Button Programming Topics for Cocoa (HTML) (PDF)
Explains how to use Cocoa buttons.
Cocoa 2008-10-15
Combo Box Programming Topics (HTML) (PDF)
Explains how to use Cocoa combo boxes.
Cocoa 2002-11-12
Control and Cell Programming Topics for Cocoa (HTML) (PDF)
Explains the relationship between Cocoa control and cell objects.
Cocoa 2008-10-15
Dialogs and Special Panels (HTML) (PDF)
Explains how to create alert panels. Includes links to documents about other types of panels.
Cocoa 2009-02-04
Dock Tile Programming Guide (HTML) (PDF)
Explains how to provide an icon and contextual menu in Carbon applications.
Cocoa 2009-03-04
Drag and Drop Programming Topics for Cocoa (HTML) (PDF)
Explains how to implement drag and drop in Cocoa.
Cocoa 2006-06-28
Drawers (HTML) (PDF)
Explains how to use Cocoa drawers.
Cocoa 2003-02-04
Font Panel (HTML) (PDF)
Explains how to use the Cocoa Font panel.
Cocoa 2004-08-31
Forms (HTML) (PDF)
Explains how to use Cocoa forms.
Cocoa 2002-11-12
Image Views (HTML) (PDF)
Explains how to use Cocoa image views.
Cocoa 2002-11-12
Matrix Programming Guide for Cocoa (HTML) (PDF)
Explains how to use Cocoa matrices.
Cocoa 2006-11-07
Online Help (HTML) (PDF)
Explains how to add help to a Cocoa application.
Cocoa 2006-06-28
Outline View Programming Topics for Cocoa (HTML) (PDF)
Explains how to use Cocoa outline views.
Cocoa 2006-06-28
Pasteboard Programming Topics for Cocoa (HTML) (PDF)
Explains how to transfer data using pasteboard operations in Cocoa.
Cocoa 2007-07-13
Preference Panes (HTML) (PDF)
Explains how to create dynamically loaded plug-ins that provide a graphical interface to user preferences.
Cocoa 2006-10-03
Progress Indicators (HTML) (PDF)
Explains how to use Cocoa progress indicators.
Cocoa 2002-11-12
Quick Look Programming Guide (HTML) (PDF)
Describes the purporse and architecture of Quick Look generators and explains how to create them.
Cocoa 2008-02-08
Resolution Independence Guidelines (HTML) (PDF)
Describes resolution independence and how to start updating applications to support high-resolution monitors.
Cocoa 2007-05-04
Search Fields (HTML) (PDF)
Explains how to use Cocoa search fields.
Cocoa 2008-02-08
Search Kit Programming Guide (HTML) (PDF)
Describes Search Kit architecture and workflow, and how to add search capabilities to Carbon and Cocoa applications.
Cocoa 2005-12-06
Segmented Controls Programming Guide for Cocoa (HTML) (PDF)
Explains how to use Cocoa segmented controls.
Cocoa 2006-02-07
Sheet Programming Topics for Cocoa (HTML) (PDF)
Explains how to use Cocoa sheets.
Cocoa 2006-09-05
Slider Programming Topics for Cocoa (HTML) (PDF)
Explains how to use Cocoa sliders.
Cocoa 2006-10-03
Speech (HTML) (PDF)
Explains Cocoa's interfaces to the speech synthesis and speech recognition technologies.
Cocoa 2003-08-08
Spell Checking (HTML) (PDF)
Explains how to use the spell-checking facilities in the Cocoa text system.
Cocoa 2004-02-09
Status Bars (HTML) (PDF)
Explains how to use Cocoa status bars.
Cocoa 2002-11-12
Steppers (HTML) (PDF)
Explains how to use Cocoa steppers.
Cocoa 2002-11-12
System Services (HTML) (PDF)
Explains how Cocoa applications can extend their capabilities seamlessly to other applications.
Cocoa 2002-11-12
Tab Views (HTML) (PDF)
Explains how to use Cocoa tab views.
Cocoa 2003-11-06
Table View Programming Guide (HTML) (PDF)
Explains how to use Cocoa table views.
Cocoa 2006-04-04
Text Fields (HTML) (PDF)
Explains how to use Cocoa text fields.
Cocoa 2004-02-09
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.
Cocoa 2006-06-28
Text Views (HTML) (PDF)
Explains how to use Cocoa text views.
Cocoa 2004-02-09
Token Field Programming Guide for Cocoa (HTML) (PDF)
Describes how to set up and programatically manage a token field.
Cocoa 2007-12-11
Toolbar Programming Topics for Cocoa (HTML) (PDF)
Explains how to use Cocoa toolbars.
Cocoa 2009-02-04
Undo Architecture (HTML) (PDF)
Explains how to record information in Cocoa so a user can reverse an operation's effect.
Cocoa 2002-11-12
User Defaults Programming Topics for Cocoa (HTML) (PDF)
Explains how to use the Cocoa defaults system to create and save user preferences.
Cocoa 2007-10-31
User Interface Validation (HTML) (PDF)
Explains how to use the standard mechanism to validate user interface items in Cocoa.
Cocoa 2007-07-10
WebKit Objective-C Programming Guide (HTML) (PDF)
Explains how to use the WebKit to embed web content in both Cocoa and Carbon applications.
Cocoa 2008-10-15
Window Programming Guide for Cocoa (HTML) (PDF)
Explains how to use Cocoa windows and panels.
Cocoa 2009-02-04
File System Overview (HTML) (PDF)
Conceptual information and guidelines describing the structure and usage of the Mac OS X file system.
Files & Software Installation 2008-07-11
Quick Look Programming Guide (HTML) (PDF)
Describes the purporse and architecture of Quick Look generators and explains how to create them.
Files & Software Installation 2008-02-08
Software Delivery Guide (HTML) (PDF)
Explains how to distribute and install Mac OS X software using PackageMaker and Installer.
Files & Software Installation 2006-07-24
Apple Human Interface Guidelines (HTML) (PDF)
Introduces the Mac OS X user experience and explains how to design an application for Aqua.
General 2008-06-09
Apple Publications Style Guide (PDF)
Describes style and usage of Apple terms, including user interface terms that should be used in applications.
General 2008-10-16
Apple Help Programming Guide (HTML) (PDF)
Explains how to author, package, and display user help content in Mac OS X.
Help Technologies 2007-10-31
Online Help (HTML) (PDF)
Explains how to add help to a Cocoa application.
Help Technologies 2006-06-28
Providing Help Tags in Carbon (HTML) (PDF)
Explains how to add contextually sensitive help content to an application's user interface.
Help Technologies 2002-07-01
Apple Human Interface Guidelines (HTML) (PDF)
Introduces the Mac OS X user experience and explains how to design an application for Aqua.
Java 2008-06-09
Apple Human Interface Guidelines (HTML) (PDF)
Introduces the Mac OS X user experience and explains how to design an application for Aqua.
Porting 2008-06-09
Accessibility Overview (HTML) (PDF)
Explains how to use the accessibility features built into Mac OS X.
Speech Technologies 2008-03-11
Speech Synthesis Programming Guide (HTML) (PDF)
Describes speech synthesis in Mac OS X and explains how your application can produce customized spoken output.
Speech Technologies 2006-09-05
Dictionary Services Programming Guide (HTML) (PDF)
Explains how to create a dictionary and access it programmatically.
Text & Fonts 2007-05-30
Apple Publications Style Guide (PDF)
Describes style and usage of Apple terms, including user interface terms that should be used in applications.
Tools 2008-10-16
AppleScript Studio Programming Guide (HTML) (PDF)
Explains how to create script-driven applications with complex user interfaces based on Cocoa UI classes. Includes tutorials.
Tools 2006-04-04
Dashcode User Guide (HTML) (PDF)
Explains how to use Dashcode to create Dashboard widgets.
Tools 2009-03-04
Interface Builder User Guide (HTML) (PDF)
Conceptual information and tasks explaining how to use the Interface Builder application to design user interfaces.
Tools 2008-11-19
Xcode Quick Tour for Mac OS X (HTML) (PDF)
Provides a hands-on introduction to Xcode, Apple's comprehensive suite of software development tools for Mac OS X.
Tools 2008-10-15