Jump To:
Leopard Reference Library
Cocoa is an object-oriented application environment designed for developing Mac OS X native applications. The Cocoa frameworks support rapid development and high productivity. Cocoa provides developers starting new Mac OS X projects the fastest way to full-featured implementations. Applications from other platforms can also be brought to Mac OS X quickly using Cocoa.

A guided introduction and learning path for developers new to Cocoa.   Essential information for developers using Objective-C.   Objective-C API references organized by framework.
Document Descriptions
On Off
Display

Sort by
Title
Sorted by
Topic
Sort by
Resource Type
Sort by
Date
NSBundle Class Reference (HTML) (PDF)
Describes a collection of resources used in a program.
Resource Management Reference 2007-07-19
NSCoder Application Kit Additions Reference (HTML) (PDF)
Describes additions for converting archived NXColor objects into NSColor objects.
Resource Management Reference 2006-05-23
NSFileManager Class Reference (HTML) (PDF)
Describes an object that performs file-system operations.
Resource Management Reference 2008-10-15
NSFileWrapper Class Reference (HTML) (PDF)
Describes a representation of a file-system node.
Resource Management Reference 2008-10-15
NSHelpManager Class Reference (HTML) (PDF)
Describes an application-level help system.
Resource Management Reference 2009-02-04
NSNib Class Reference (HTML) (PDF)
Describes an object for unarchiving and instantiating a nib file.
Resource Management Reference 2007-01-22
NSNibAwaking Protocol Reference (HTML) (PDF)
Describes the interface for initializing unarchived nib objects.
Resource Management Reference 2007-02-28
NSNibConnector Class Reference (HTML) (PDF)
Describes a generic connection between nib objects.
Resource Management Reference 2007-01-22
NSNibControlConnector Class Reference (HTML) (PDF)
Describes an action connection between nib objects.
Resource Management Reference 2007-01-31
NSNibOutletConnector Class Reference (HTML) (PDF)
Describes an outlet connection between nib objects.
Resource Management Reference 2007-01-31
NSProcessInfo Class Reference (HTML) (PDF)
Describes the current process.
Resource Management Reference 2007-03-26
NSSound Class Reference (HTML) (PDF)
Describes an object that loads and plays audio files.
Resource Management Reference 2008-10-15
Obtaining the localized application name in Cocoa (HTML)
QA1544: Describes how to obtain several versions of the application name in Cocoa.
Resource Management Technical Q&As 2007-09-21
Preventing sleep (HTML)
QA1160: Explains how your application can prevent the system from sleeping.
Resource Management Technical Q&As 2004-10-22
Programmatically causing restart, shutdown and/or logout (HTML) (日本語 HTML)
QA1134: Describes how to programmatically cause restart, shutdown, sleep or logout.
Resource Management Technical Q&As 2008-09-24
Registering and unregistering for sleep and wake notifications (HTML)
QA1340: Explains how applications can register and unregister for sleep and wake notifications on Mac OS X.
Resource Management Technical Q&As 2008-08-08
Resource Programming Guide (HTML) (PDF)
Explains how to work with nib and bundle resources in Mac OS X applications.
Resource Management Guides 2009-01-06
ViewController (HTML) (DMG) (ZIP)
Demonstrates how to use "NSViewController".
Resource Management Sample Code 2007-06-11
BundleLoader (HTML) (DMG) (ZIP)
Demonstrates how to load multiple Cocoa bundles or NSBundles (also known as plug-ins) into the main NSApplication.
Runtime Architecture Sample Code 2007-09-21
CallMachOFramework (HTML) (DMG) (ZIP)
Shows two ways of calling a Mach-O framework from a CFM application on Mac OS X.
Runtime Architecture Sample Code 2003-07-17
CFM_MachO_CFM (HTML) (DMG) (ZIP)
CFM application calls Mach-O routine, passing in a fixed up CFM function pointer as a callback parameter.
Runtime Architecture Sample Code 2003-07-17
CheckExecutableArchitecture (HTML) (DMG) (ZIP)
Determine whether a particular Mach-O executable contains a version suitable for executing on a given processor architecture.
Runtime Architecture Sample Code 2006-02-07
CocoaInCarbon (HTML) (DMG) (ZIP)
Demonstrates using Cocoa GUI code in a Carbon application.
Runtime Architecture Sample Code 2005-10-04
Detecting specific ROM-in-RAM Mac (HTML) (日本語 HTML)
Deprecated - HW49: Identifying a Mac by name ("iMac"), and better alternatives for determining specific features ("has Firewire").
Runtime Architecture Technical Q&As 1999-10-05
Ensuring Backwards Binary Compatibility - Weak Linking and Availability Macros on Mac OS X (HTML) (日本語 HTML)
TN2064: Ensuring that Mach-O applications built using today's Mac OS X runs on previous versions of the OS.
Runtime Architecture Technical Notes 2003-02-18
Environment Variables (HTML)
QA1255: Describes how a process gets its environment variables.
Runtime Architecture Technical Q&As 2003-10-29
Garbage Collection Programming Guide (HTML) (PDF)
Describes the garbage collection system for Cocoa.
Runtime Architecture Guides 2008-11-19
Mac OS X ABI Dynamic Loader Reference (HTML) (PDF)
Describes the functions used to access Mach-O files.
Runtime Architecture Reference 2005-11-09
Mac OS X ABI Mach-O File Format Reference (HTML) (PDF)
Describes the data structures that make up the Mach-O file format.
Runtime Architecture Reference 2009-02-04
NSApplication Class Reference (HTML) (PDF)
Describes the responder object that manages an application's events and resources.
Runtime Architecture Reference 2009-02-04
Objective-C 2.0 Runtime Programming Guide (HTML) (PDF)
Describes the Objective-C 2.0 runtime support library.
Runtime Architecture Guides 2009-02-04
Setting environment variables for user processes (HTML)
QA1067: Tells how to set environment variables for user processes.
Runtime Architecture Technical Q&As 2001-10-25
SimpleThreads (HTML) (DMG) (ZIP)
Uses the Cocoa threading APIs to coordinate multiple preemptively scheduled secondary threads with the non-reentrant Cocoa framework.
Runtime Architecture Sample Code 2003-01-14
SonOfSillyBalls (HTML) (DMG) (ZIP)
Draws a bunch of randomly colored, randomly placed, silly balls in a window on the screen.
Runtime Architecture Sample Code 2003-01-14
SpellingChecker CarbonCocoa Bundled (HTML) (DMG) (ZIP)
How to load and call a Cocoa bundle from a Carbon CFM or Mach-O application
Runtime Architecture Sample Code 2004-08-17
SpellingChecker-CarbonCocoa (HTML) (DMG) (ZIP)
Implements procedural C wrapper around the Cocoa NSSpellChecker, exports it as a Mach-O bundle called "SpellCheck.bundle"
Runtime Architecture Sample Code 2003-01-14
SpellingChecker-CocoaCarbon (HTML) (DMG) (ZIP)
Demonstrates how to call NSSpellChecker cocoa routines from a Carbon application.
Runtime Architecture Sample Code 2005-08-10
Static linking of user binaries on Mac OS X (HTML) (日本語 HTML)
QA1118: Explains why static linking of user binaries is not supported on Mac OS X, and possible workarounds.
Runtime Architecture Technical Q&As 2002-02-07
TrivialThreads (HTML) (DMG) (ZIP)
Uses the Cocoa threading APIs to coordinate a preemptively scheduled secondary thread with the non-reentrant Cocoa framework.
Runtime Architecture Sample Code 2003-01-14
What is the "main bundle" of a command-line foundation tool? (HTML)
QA1436: Reveals the location of the main bundle of a command-line foundation tool.
Runtime Architecture Technical Q&As 2006-10-10
AppleScript Language Guide (HTML) (PDF)
Defines the AppleScript scripting language. Includes many brief sample scripts.
Scripting & Automation Guides 2008-03-11
AppleScript Overview (HTML) (PDF)
Introduces the technology for writing scripts to control applications. Useful for scripters and application developers.
Scripting & Automation Guides 2007-10-31
AppleScript Studio Terminology Reference (HTML) (PDF)
Describes the scripting terminology for AppleScript Studio, through version 1.4.
Scripting & Automation Reference 2007-10-31
Automator Framework Reference (HTML) (PDF)
Describes the Objective-C API for creating and working with actions used by the Automator application.
Scripting & Automation Reference 2006-10-26
Automator Reference Update (HTML) (PDF)
Summarizes the symbols added to the Automtor framework.
Scripting & Automation Release Notes 2007-07-25
AutoSample (HTML) (DMG) (ZIP)
How to run and display Automator workflows in your application.
Scripting & Automation Sample Code 2007-05-23
Checkout Lets You 'Get a Mac, Start a Store': Madebysofa Does It with Python and Cocoa (HTML)
Success story on how Mac-only Checkout was built using Python and Cocoa.
Scripting & Automation Articles 2007-07-10
Cocoa and AppleScript: From Top to Bottom (HTML)
Learn how to activate AppleScript in your application so that users can create scripts.
Scripting & Automation Articles 2004-08-23
Cocoa Scripting Guide (HTML) (PDF)
Explains how to create scriptable Cocoa applications that use the scripting definition (sdef) format.
Scripting & Automation Guides 2008-03-11
Foundation Release Notes (HTML)
Describes new features, notes, and known issues for the Foundation framework in Mac OS X v10.5.
Scripting & Automation Release Notes 2007-10-31
NSAppleEventDescriptor Class Reference (HTML) (PDF)
Describes the class used to access the basic data structures in an Apple event.
Scripting & Automation Reference 2007-04-10
NSAppleEventManager Class Reference (HTML) (PDF)
Describes the class used to work with Apple event handler routines and to suspend and resume event handling.
Scripting & Automation Reference 2006-05-23
NSAppleScript Additions Reference (HTML) (PDF)
Describes additions to the NSAppleScript class to provide syntax-highlighted script source.
Scripting & Automation Reference 2006-05-23
NSAppleScript Class Reference (HTML) (PDF)
Describes the class that provides the ability to load, compile, and execute scripts.
Scripting & Automation Reference 2007-07-10
NSCloneCommand Class Reference (HTML) (PDF)
Describes the class used to clone a scriptable object or objects.
Scripting & Automation Reference 2006-05-23
NSCloseCommand Class Reference (HTML) (PDF)
Describes the class used to close a scriptable object or objects--typically a document or window.
Scripting & Automation Reference 2006-06-28
NSComparisonMethods Protocol Reference (HTML) (PDF)
Describes the interface for default comparison methods in the NSSpecifierTest class.
Scripting & Automation Reference 2006-05-23
NSCountCommand Class Reference (HTML) (PDF)
Describes the class used to count the number of objects of a specified class in the specified object container.
Scripting & Automation Reference 2006-05-23
NSCreateCommand Class Reference (HTML) (PDF)
Describes the class used to create a specified scriptable object.
Scripting & Automation Reference 2006-05-23
NSDeleteCommand Class Reference (HTML) (PDF)
Describes the class used to delete a specified scriptable object or objects.
Scripting & Automation Reference 2006-05-23
NSExistsCommand Class Reference (HTML) (PDF)
Describes the class used to determine whether a specified scriptable object exists.
Scripting & Automation Reference 2006-05-23
NSGetCommand Class Reference (HTML) (PDF)
Describes the class used to get the specified value or object from the specified scriptable object.
Scripting & Automation Reference 2006-05-23
NSIndexSpecifier Class Reference (HTML) (PDF)
Describes the position of an object in a collection.
Scripting & Automation Reference 2007-04-01
NSLogicalTest Class Reference (HTML) (PDF)
Describes the class used to perform logical operations in determining the scriptable objects a command acts on.
Scripting & Automation Reference 2006-05-23
NSMiddleSpecifier Class Reference (HTML) (PDF)
Describes the class used to specify the middle object in a collection.
Scripting & Automation Reference 2006-05-23
NSMoveCommand Class Reference (HTML) (PDF)
Describes the class used to move the specified scriptable object or objects.
Scripting & Automation Reference 2006-05-23
NSNameSpecifier Class Reference (HTML) (PDF)
Describes the class used to specify an object in a collection (or container) by name.
Scripting & Automation Reference 2006-05-23
NSPositionalSpecifier Class Reference (HTML) (PDF)
Describes the class used to specify an insertion point in a container relative to another object in the container.
Scripting & Automation Reference 2007-06-29
NSPropertySpecifier Class Reference (HTML) (PDF)
Describes the class used to specify a simple attribute value, a one-to-one relationship, or all elements of a to-many relationship.
Scripting & Automation Reference 2006-05-23
NSQuitCommand Class Reference (HTML) (PDF)
Describes the class used to quit the specified application.
Scripting & Automation Reference 2006-05-23
NSRandomSpecifier Class Reference (HTML) (PDF)
Describes the class used to specify an arbitrary object in a collection.
Scripting & Automation Reference 2006-05-23
NSRangeSpecifier Class Reference (HTML) (PDF)
Describes the class used to specify a range of objects in a container through two delimiting objects.
Scripting & Automation Reference 2006-05-23
NSRelativeSpecifier Class Reference (HTML) (PDF)
Describes the class used to specify an object in a collection by its position relative to another object.
Scripting & Automation Reference 2006-06-28
NSScriptClassDescription Class Reference (HTML) (PDF)
Describes the class used to encapsulate the scriptability information for a scriptable class.
Scripting & Automation Reference 2007-07-17
NSScriptCoercionHandler Class Reference (HTML) (PDF)
Describes the class that provides a mechanism for converting one kind of scripting data to another.
Scripting & Automation Reference 2006-05-23
NSScriptCommand Class Reference (HTML) (PDF)
Describes the class used to represent a scripting statement and the information needed to perform the operation it specifies.
Scripting & Automation Reference 2007-07-20
NSScriptCommandDescription Class Reference (HTML) (PDF)
Describes the class used to provide a description of a script command.
Scripting & Automation Reference 2007-04-10
NSScriptExecutionContext Class Reference (HTML) (PDF)
Describes the class that provides a shared instance of the context in which the current script command is executed.
Scripting & Automation Reference 2006-05-23
NSScriptingComparisonMethods Protocol Reference (HTML) (PDF)
Describes the informal protocol used to define a set of methods for comparing script objects.
Scripting & Automation Reference 2006-05-23
NSScriptKeyValueCoding Protocol Reference (HTML) (PDF)
Describes the informal protocol used to provide additional key-value coding capabilities in a scriptable application.
Scripting & Automation Reference 2007-10-31
NSScriptObjectSpecifier Class Reference (HTML) (PDF)
Describes the abstract class used to instantiate objects that represent references to scriptable objects.
Scripting & Automation Reference 2007-06-29
NSScriptObjectSpecifiers Protocol Reference (HTML) (PDF)
Describes the informal protocol used by scriptable objects to provide a fully specified object specifier to themselves.
Scripting & Automation Reference 2006-05-23
NSScriptSuiteRegistry Class Reference (HTML) (PDF)
Describes the class used as the top-level repository of scriptability information for an application at runtime.
Scripting & Automation Reference 2007-04-10
NSScriptWhoseTest Class Reference (HTML) (PDF)
Describes the abstract class used to represent expressions for testing scriptable object inclusion.
Scripting & Automation Reference 2006-05-23
NSSetCommand Class Reference (HTML) (PDF)
Describes the class used to set values in a scriptable object.
Scripting & Automation Reference 2006-05-23
NSSpecifierTest Class Reference (HTML) (PDF)
Describes the class used to apply a test to compare a specified object to another object.
Scripting & Automation Reference 2006-06-28
NSUniqueIDSpecifier Class Reference (HTML) (PDF)
Describes the class used to specify an object in a container by unique ID.
Scripting & Automation Reference 2006-05-23
NSWhoseSpecifier Class Reference (HTML) (PDF)
Describes the class used to specify every object in a container that matches a defined condition.
Scripting & Automation Reference 2006-06-28
NSWindowScripting Protocol Reference (HTML) (PDF)
Describes the category on NSWindow for scripting basic properties and commands of windows in scriptable applications.
Scripting & Automation Reference 2006-05-23
Ruby and Python Programming Topics for Mac OS X (HTML) (PDF)
Describes Ruby and Python on Mac OS X, and especially the bridges between them and Objective-C and OSA (AppleScript).
Scripting & Automation Guides 2007-10-31
SBApplication Class Reference (HTML) (PDF)
Describes an Objective-C representation of a scriptable application.
Scripting & Automation Reference 2007-05-29
SBApplicationDelegate Protocol Reference (HTML) (PDF)
Describes the interface for receiving and handling Apple event errors from applications.
Scripting & Automation Reference 2007-05-29
SBElementArray Class Reference (HTML) (PDF)
Describes a mutable array for storing related Scripting Bridge objects.
Scripting & Automation Reference 2007-05-29
SBObject Class Reference (HTML) (PDF)
Describes an object in a scriptable application.
Scripting & Automation Reference 2007-05-29
SBSendEmail (HTML) (DMG) (ZIP)
Using the Scripting Bridge to tell Mail.app to send an email message with an optional attachment.
Scripting & Automation Sample Code 2008-02-28
SBSetFinderComment (HTML) (DMG) (ZIP)
Set/Get Finder Comments using Scripting Bridge
Scripting & Automation Sample Code 2007-12-04
SBSystemPrefs (HTML) (DMG) (ZIP)
Shows how to use Scripting Bridge to display a preference pane in System Preferences.
Scripting & Automation Sample Code 2008-10-13
Scripting Bridge Programming Guide for Cocoa (HTML) (PDF)
Describes the Scripting Bridge technology, which bridges OSA-compliant applications to Objective-C, and explains how to use it in Cocoa programs.
Scripting & Automation Guides 2008-03-11
Scripting Bridge Release Note (HTML)
A release note that describes the classes and techniques used to control scriptable applications from Objective-C code.
Scripting & Automation Release Notes 2007-10-31
Scripting Interface Guidelines (HTML)
TN2106: Directions for providing a clean and consistent scripting interface for your application.
Scripting & Automation Technical Notes 2004-03-01