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
Sort by
Topic
Sort by
Resource Type
Sorted by
Date
SecurityInterface Data Types Reference (HTML) (PDF)
Describes the data types found in the Security Interface framework.
Security Reference 2006-05-23
SFAuthorizationView Class Reference (HTML) (PDF)
Describes the class that displays a lock icon that indicates a user interface has restricted access.
Security Reference 2006-05-23
SFCertificatePanel Class Reference (HTML) (PDF)
Describes the class that displays one or more certificates in a panel or sheet.
Security Reference 2006-05-23
SFCertificateTrustPanel Class Reference (HTML) (PDF)
Describes the class that enables the user to edit the trust settings in a certificate.
Security Reference 2006-05-23
SFCertificateView Class Reference (HTML) (PDF)
Describes the class that displays the contents of a certificate.
Security Reference 2006-05-23
SFChooseIdentityPanel Class Reference (HTML) (PDF)
Describes the class that allows a user to select an identity from a list.
Security Reference 2006-05-23
SFKeychainSavePanel Class Reference (HTML) (PDF)
Describes the class that displays a sheet or panel that allows the user to create a keychain.
Security Reference 2006-05-23
SFKeychainSettingsPanel Class Reference (HTML) (PDF)
Describes the class that displays a panel or sheet that allows users to change their keychain settings.
Security Reference 2006-05-23
WebDocumentRepresentation Protocol Reference (HTML) (PDF)
Describes the protocol adopted by document representation classes that handle specific MIME types.
User Experience Reference 2006-05-23
WebDocumentSearching Protocol Reference (HTML) (PDF)
Describes the protocol adopted by document view objects to support searching.
User Experience Reference 2006-05-23
WebUndefined Class Reference (HTML) (PDF)
Describes the class used to represent the JavaScript "undefined" value.
User Experience Reference 2006-05-23
AudioDeviceNotify (HTML) (DMG) (ZIP)
Demonstrates how to enumerate audio devices attached to the system and how to handle device notifications
Audio Sample Code 2006-04-21
JNI Development on Mac OS X (HTML)
TN2147: Discusses use of native APIs and UI elements from Java applications
Java Technical Notes 2006-04-17
Address Book Programming Guide for Mac OS X (HTML) (PDF)
Explains how to add, search, remove, and customize Address Book records.
Apple Applications Guides 2006-04-04
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 Guides 2006-04-04
Assertions and Logging (HTML) (PDF)
Explains how to use assertions and logging to diagnose problems in Cocoa applications.
Objective-C Language, Performance Guides 2006-04-04
Coding Guidelines for Cocoa (HTML) (PDF)
Naming guidelines for Cocoa API and design advice to framework developers.
Design Guidelines, Objective-C Language Guides 2006-04-04
Drawing Performance Guidelines (HTML) (PDF)
Guidelines for improving the speed of drawing code.
Performance Guides 2006-04-04
Interacting with the Operating System (HTML) (PDF)
Explains how Cocoa applications manage tasks and get information about hosts and processes.
Interapplication Communication, Process Management, Resource Management Guides 2006-04-04
Launch Time Performance Guidelines (HTML) (PDF)
Guidelines for improving the launch performance of an application.
Performance Guides 2006-04-04
Table View Programming Guide (HTML) (PDF)
Explains how to use Cocoa table views.
User Experience Guides 2006-04-04
ExtractMovieAudioToAIFF (HTML) (DMG) (ZIP)
Demonstrates how to extract audio from QuickTime Movies and write the data to an AIFF file.
Audio, QuickTime Sample Code 2006-03-31
CoreAudio Overload Warnings (HTML)
QA1467: Describes CoreAudio overload warnings what they mean and how to avoid them.
Audio Technical Q&As 2006-03-29
MovieAudioExtraction - Ensure a Movie is fully loaded before starting an extraction session (HTML)
QA1469: Describes the importance of making sure a Movie is fully loaded before extracting audio.
QuickTime Technical Q&As 2006-03-29
Using NSSound with CoreAudio on Mac OS 10.3.x (HTML)
QA1394: Workaround the NULL input buffers in a Core Audio IOProc callback when using NSSound by using AudioDeviceAddIOProc
Audio Technical Q&As 2006-03-29
DragItemAround (HTML) (DMG) (ZIP)
Illustrates creating a custom subclass of NSView.
Graphics & Imaging Sample Code 2006-03-16
SpecialPictureProtocol (HTML) (DMG) (ZIP)
Use a custom NSURLProtocol to create jpeg images in memory for display in a webView.
Internet & Web Sample Code 2006-03-13
Spotlight Query Programming Guide (HTML) (PDF)
Describes how to add Spotlight searching to your applications.
File Management Guides 2006-03-08
Making the most of Cocoa bindings in Quartz Composer (HTML)
TN2146: Describes how to best use Cocoa bindings with Quartz Composer.
Graphics & Imaging Technical Notes 2006-03-03
Taking Advantage of PDF Kit in Your Cocoa Application (HTML)
Learn to handle PDF documents in your Cocoa application without writing a lot of custom code.
Graphics & Imaging Articles 2006-02-20
Working with Quartz Composer (HTML)
Learn to build a sample composition without having to write code.
Graphics & Imaging Articles 2006-02-13
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
Mac OS X Printing System Overview (HTML) (PDF)
Introduces Apple's printing architecture. Includes a road map for developing software.
Printing Guides 2006-02-07
Segmented Controls Programming Guide for Cocoa (HTML) (PDF)
Explains how to use Cocoa segmented controls.
User Experience Guides 2006-02-07
SillyFrequencyLevels (HTML) (DMG) (ZIP)
Demonstrates how to obtain audio frequency levels from a Movie using SetMovieAudioFrequencyMeteringNumBands and GetMovieAudioFrequencyLevels APIs.
QuickTime Sample Code 2006-01-25
Debugging Graphics with QuartzDebug (HTML) (日本語 HTML)
QA1236: Explains how to use QuartzDebug to debug graphics issues.
Graphics & Imaging Technical Q&As 2006-01-12
filesystem_examples (HTML) (DMG) (ZIP)
Collection of command line tools illustrating filesystem features.
File Management Sample Code 2006-01-10
QTKitMovieShuffler (HTML) (DMG) (ZIP)
Demonstrates a simple QTKit movie player application.
QuickTime Sample Code 2006-01-03
ThreadsExportMovie (HTML) (DMG) (ZIP)
Demonstrates movie exporting using the QuickTime movie export component on separate threads of a Cocoa application.
QuickTime Sample Code 2006-01-03
Search Kit Programming Guide (HTML) (PDF)
Describes Search Kit architecture and workflow, and how to add search capabilities to Carbon and Cocoa applications.
Data Management, Text & Fonts, User Experience Guides 2005-12-06
Bundle Programming Guide (HTML) (PDF)
Explains how to use Core Foundation bundle objects to organize resources.
Resource Management Guides 2005-11-09
Mac OS X ABI Dynamic Loader Reference (HTML) (PDF)
Describes the functions used to access Mach-O files.
Runtime Architecture Reference 2005-11-09
QuickTime Kit Programming Guide (HTML) (PDF)
Provides a tutorial on how to build and extend a QTKitPlayer application using the QuickTime Kit framework in Cocoa.
QuickTime Guides 2005-11-09
The Sound of Opportunity Knocking: The Audio Units Community Takes Off (HTML)
Learn how one developer created a successful business using audio units.
Audio Articles 2005-10-31
FileNotification (HTML) (DMG) (ZIP)
kqueue file notification introduced in 10.3. Notification API to detect file system modifications.
File Management Sample Code 2005-10-27
GetPrimaryMACAddress (HTML) (DMG) (ZIP)
Demonstrates retrieving the MAC address of the built-in Ethernet controller. Useful for uniquely identifying a Macintosh system.
Networking, Security Sample Code 2005-10-27
Designing Network-Friendly Applications (HTML)
Learn to make your application management-aware and reliably accessible on a network.
Design Guidelines Articles 2005-10-24
LoginItemsAE (HTML) (DMG) (ZIP)
Uses Apple events to manipulate the list of login items (items launched when you log in).
Process Management Sample Code 2005-10-17
CocoaInCarbon (HTML) (DMG) (ZIP)
Demonstrates using Cocoa GUI code in a Carbon application.
Runtime Architecture Sample Code 2005-10-04
Getting images in and out from Quartz Composer compositions (HTML)
TN2143: Describes how to efficiently pass images into and out of Quartz Composer
Graphics & Imaging Technical Notes 2005-10-04
QTQuartzPlayer (HTML) (DMG) (ZIP)
QTQuartzPlayer demonstrates how to render QuickTime Movies and live video with OpenGL and CoreVideo.
QuickTime Sample Code 2005-10-04
Taking Advantage of the Accelerate Framework (HTML)
Learn how your application can run on PowerPC- or Intel-based Macs without processor-specific customization.
Performance Articles 2005-10-03
Scoping Your Transition Projects (HTML)
Learn how to transition to Intel-based Macs.
Intel-Based Macs, Porting Articles 2005-09-27
AltiVec/SSE Migration Guide (HTML) (PDF)
Explains how to convert PowerPC AltiVec code to Intel SSE code.
Intel-Based Macs Guides 2005-09-08
Adopting Universal Binaries on Mac OS X (HTML)
Learn about universal binaries and how to get your applications ready for Intel-based Macs.
Intel-Based Macs, Porting Articles 2005-08-26
Using PyObjC for Developing Cocoa Applications with Python (HTML)
Learn how to build a sample Cocoa app using the Cocoa-Python bridge PyOjbC.
Scripting & Automation, Tools Articles 2005-08-15
Cocoa Performance Guidelines (HTML) (PDF)
Guidelines for improving the performance of Cocoa applications.
Performance Guides 2005-08-11
QuickTime Overview (HTML) (PDF)
Introduces the main concepts and services of QuickTime.
QuickTime Guides 2005-08-11
Text System Storage Layer Overview (HTML) (PDF)
Explains how the Cocoa text system stores the information it needs to lay out text.
Text & Fonts Guides 2005-08-11
PasteboardPeeker (HTML) (DMG) (ZIP)
Using pasteboards for Copy and Paste, Drag and Drop, service support and filter services.
Interapplication Communication, Text & Fonts Sample Code 2005-08-10
PDFKitLinker2 (HTML) (DMG) (ZIP)
Demonstrates many aspects of PDFKit including navigation, display modes, searching, and PDFView subclassing.
Graphics & Imaging Sample Code 2005-08-10
SpellingChecker-CocoaCarbon (HTML) (DMG) (ZIP)
Demonstrates how to call NSSpellChecker cocoa routines from a Carbon application.
Runtime Architecture Sample Code 2005-08-10
CIAnnotation (HTML) (DMG) (ZIP)
Image annotation application using Core Image Filters. Demonstrates creation and usage of Image Units.
Graphics & Imaging Sample Code 2005-08-01
VideoViewer (HTML) (DMG) (ZIP)
Simple example of video rendering using QuickTime visual contexts, OpenGL, Core Video and Core Image.
Graphics & Imaging, QuickTime Sample Code 2005-08-01
ThreadsExporter (HTML) (DMG) (ZIP)
Demonstrates importing and exporting still images in different formats on separate threads.
QuickTime Sample Code 2005-07-26
BackgroundExporter (HTML) (DMG) (ZIP)
Demonstrates techniques which can be used to export QuickTime movies in a separate export process.
QuickTime Sample Code 2005-07-22
QTCoreImage101 (HTML) (DMG) (ZIP)
Demonstrates how to render a QuickTime Movie using Core Image filters and the new video pipeline.
Graphics & Imaging, QuickTime Sample Code 2005-07-19
Simplifying Data Handling with Uniform Type Identifiers (HTML)
Learn to use UTIs to take advantage of key Mac OS X technologies in your application.
Data Management, File Management, Interapplication Communication Articles 2005-07-12
Code Speed Performance Guidelines (HTML) (PDF)
Guidelines for improving the performance and efficiency of code.
Performance Guides 2005-07-07
Color Management Overview (HTML) (PDF)
Introduces basic concepts and defines color spaces.
Graphics & Imaging Guides 2005-07-07
Creating Printing Presets for iPhoto (HTML) (PDF)
Rules for creating and installing printer-specific collections of settings. Includes a sample file.
Apple Applications Guides 2005-07-07
File-System Performance Guidelines (HTML) (PDF)
Guidelines for improving the performance of file-related code.
Performance Guides 2005-07-07
Using PostScript Printer Description Files (HTML) (PDF)
Information for printer vendors. Includes installing files, PPD/PDE binding, and grouping features.
Printing Guides 2005-07-07
EnhancedAudioBurn (HTML) (DMG) (ZIP)
This Objective-C sample demonstrates how to burn RedBook Audio CDs.
File Management Sample Code 2005-07-06
Problems getting Bonjour TXT record information (HTML)
QA1389: Explains why you might have problems retrieving TXT record information from a CFNetServiceRef or NSNetService.
Networking Technical Q&As 2005-07-06
Quartz Composer QCTV (HTML) (DMG) (ZIP)
Shows how to build a fake TV system using Quartz Composer as the foundation motion graphics.
Graphics & Imaging Sample Code 2005-07-06
QTAudioExtractionPanel (HTML) (DMG) (ZIP)
Enhances the QTKitPlayer to add an Audio Channel Mapping and Extraction panel
QuickTime Sample Code 2005-06-27
Frequently Asked Text Services Manager (TSM) Questions (HTML)
TN2128: Regroups a collection of Text Services Manager (TSM) questions frequently asked by Input Method Developers
Events & Other Input, Text & Fonts Technical Notes 2005-06-24
Porting Multithreaded Applications from Win32 to Mac OS X (HTML)
Learn how Mac OS X handles multithreading, before porting your Win32 application.
Performance, Porting, Process Management Articles 2005-06-20
CocoaSOAP (HTML) (DMG) (ZIP)
Demonstrates implementing a SOAP client and server in Cocoa.
Networking Sample Code 2005-06-06
Integrating Sync Services into Your Application (HTML)
Learn how to sync any kind of data in your application using Sync Services.
Apple Applications, Internet & Web, Syncing Articles 2005-06-06
Reducer (HTML) (DMG) (ZIP)
Simple utility for rescaling bitmapped images. Demonstrates use of Core Image, NSAnimation, view drawing redirection.
Graphics & Imaging, User Experience Sample Code 2005-06-06
UnsharpMask (HTML) (DMG) (ZIP)
Demonstrates how to build Automator actions using Cocoa frameworks.
Apple Applications, Graphics & Imaging Sample Code 2005-06-06
Weak Linking To Spotlight (HTML)
QA1422: Describes a problem with weak linking to Spotlight (the Metadata framework), and its solution.
File Management Technical Q&As 2005-06-03
AutoUpdater (HTML) (DMG) (ZIP)
This sample demonstrates Cocoa networking using the NSURL loading classes, NSURLConnection and NSURLDownload.
Networking Sample Code 2005-06-01
BindingsJoystick (HTML) (DMG) (ZIP)
Illustrates a bindings-enabled subclass of NSView.
Data Management, Design Guidelines, Events & Other Input Sample Code 2005-06-01
CocoaEcho (HTML) (DMG) (ZIP)
Cocoa example code showing how to write a simple client and server using NSStream.
Networking Sample Code 2005-06-01
CocoaHTTPServer (HTML) (DMG) (ZIP)
A Cocoa example showing how to write a very basic HTTP service.
Networking Sample Code 2005-06-01
CoreRecipes (HTML) (DMG) (ZIP)
Demonstrates the use of Core Data (persistency and object-graph management) with a variety of application projects.
Data Management Sample Code 2005-06-01
GridCalendar (HTML) (DMG) (ZIP)
Demonstrates how to add a custom job submission UI to the GridSample project.
Networking Sample Code 2005-06-01
How can I optimize a Quartz Composer composition depending on the hardware it runs on? (HTML)
QA1433: Explains how to design compositions that adapt to the hardware limitations.
Graphics & Imaging Technical Q&As 2005-06-01
ImageClient (HTML) (DMG) (ZIP)
Demonstrates how to use CFNetwork for synchronous and asynchronous operations, network diagnostics, proxy navigation, and authentication.
Networking Sample Code 2005-06-01
ImageMapExample (HTML) (DMG) (ZIP)
Implements a custom NSView, an image map, and accessorizes it (i.e. makes it work with accessibility).
Accessibility Sample Code 2005-06-01
iSpend (HTML) (DMG) (ZIP)
Demonstrates how to incorporate a number of Cocoa Tiger features into a simple application.
Data Management, User Experience Sample Code 2005-06-01
Link Snoop (HTML) (DMG) (ZIP)
Shows how to use PDFKit to scan for and highlight link annotations in PDFs.
Graphics & Imaging Sample Code 2005-06-01
ManagedObjectDataFormatter (HTML) (DMG) (ZIP)
A Data Formatter for Xcode 2.0 and 2.1 that displays NSManagedObject * variables.
Data Management Sample Code 2005-06-01
OpenALExample (HTML) (DMG) (ZIP)
Basic example showing OpenAL usage in a 2D OpenGL environment
Games Sample Code 2005-06-01
People (HTML) (DMG) (ZIP)
This program demonstrates the use of the SyncServices framework.
Data Management, Syncing Sample Code 2005-06-01
Quartz Composer Live DV (HTML) (DMG) (ZIP)
Shows how to export a Quartz Composer composition as a real-time DV stream on the FireWire port.
Graphics & Imaging Sample Code 2005-06-01
Quartz Composer Matrix (HTML) (DMG) (ZIP)
Shows how to use Quartz Composer to display a QuickTime movie as a series of frames in a 3D world.
Graphics & Imaging Sample Code 2005-06-01