Jump To:
Leopard Guides
Carbon is a set of C APIs offering developers an advanced user interface tool kit, event handling, the Quartz 2D graphics library, and multiprocessing support. Developers have access to other C and C++ APIs, including the OpenGL drawing system and the Mach microkernel.

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

Sort by
Title
Sorted by
Topic
Sort by
Date
Strings Programming Guide for Core Foundation (HTML) (PDF)
Explains how to create, manipulate, and search strings in Core Foundation, and how strings interact with encodings and character sets.
Internationalization 2008-03-11
Supporting Unicode Input (HTML) (PDF)
Introduces international text in Mac OS X and lists the tasks an application needs to perform.
Internationalization 2005-07-07
Understanding Text Input and the Text Services Manager in Carbon (HTML) (PDF)
Discusses keyboard input, including Unicode, and explains how events are routed and handled.
Internationalization 2002-12-11
Using the Japanese Analysis Engine and Access Method (HTML) (PDF)
Describes dictionary access and the environments used by the Japanese Analysis Engine.
Internationalization 2003-05-01
Web Services Core Programming Guide (HTML) (PDF)
Explains how to use the new Web Services client-side frameworks available in Mac OS X.
Internet & Web 2009-01-06
WebKit Objective-C Programming Guide (HTML) (PDF)
Explains how to use the WebKit to embed web content in both Cocoa and Carbon applications.
Internet & Web 2008-10-15
XML Programming Topics for Core Foundation (HTML) (PDF)
Explains how to parse XML documents into structured objects.
Internet & Web 2008-10-15
XML-RPC and SOAP Programming Guide (HTML) (PDF)
Explains how to make remote procedure calls from applications or from AppleScript scripts.
Internet & Web 2005-03-03
Network Services Location Manager (Legacy) (HTML) (PDF)
Deprecated - Explains how to have a Carbon application discover available network services.
Networking 2006-05-23
Web Services Core Programming Guide (HTML) (PDF)
Explains how to use the new Web Services client-side frameworks available in Mac OS X.
Networking 2009-01-06
64-Bit Guide for Carbon Developers (HTML) (PDF)
Explains the changes necessary to create a 64-bit executable version of a Carbon application.
Performance 2007-12-11
Code Size Performance Guidelines (HTML) (PDF)
Guidelines for reducing the size of an application binary.
Performance 2006-06-28
Code Speed Performance Guidelines (HTML) (PDF)
Guidelines for improving the performance and efficiency of code.
Performance 2005-07-07
Debugging Programming Topics for Core Foundation (HTML) (PDF)
Tips and techniques for debugging Core Foundation code.
Performance 2003-01-17
Drawing Performance Guidelines (HTML) (PDF)
Guidelines for improving the speed of drawing code.
Performance 2006-04-04
File-System Performance Guidelines (HTML) (PDF)
Guidelines for improving the performance of file-related code.
Performance 2005-07-07
Launch Time Performance Guidelines (HTML) (PDF)
Guidelines for improving the launch performance of an application.
Performance 2006-04-04
Memory Usage Performance Guidelines (HTML) (PDF)
Guidelines for improving the performance of memory-related code.
Performance 2006-06-28
Multiprocessing Services Programming Guide (HTML) (PDF)
Explains how to implement preemptive tasks in Carbon applications.
Performance 2007-10-31
Performance Overview (HTML) (PDF)
Introduces the factors that determine performance.
Performance 2006-10-03
Threading Programming Guide (HTML) (PDF)
Explains how to use threads in Cocoa applications.
Performance 2008-02-08
64-Bit Guide for Carbon Developers (HTML) (PDF)
Explains the changes necessary to create a 64-bit executable version of a Carbon application.
Porting 2007-12-11
Porting CodeWarrior Projects to Xcode (HTML) (PDF)
Explains how to move software projects from CodeWarrior to Xcode and compares the two development environments.
Porting 2006-10-26
Universal Binary Programming Guidelines, Second Edition (HTML) (PDF)
Conceptual information and tips for writing code that runs on PowerPC-based and Intel-based Macintosh computers.
Porting 2009-02-04
Creating Printing Presets for iPhoto (HTML) (PDF)
Rules for creating and installing printer-specific collections of settings. Includes a sample file.
Printing 2005-07-07
Extending Printing Dialogs (HTML) (PDF)
A guide to developing printing dialog extensions, including basic concepts and a documented Carbon-based sample project.
Printing 2006-10-03
Mac OS X Printing System Overview (HTML) (PDF)
Introduces Apple's printing architecture. Includes a road map for developing software.
Printing 2006-02-07
Providing PDF Workflow Options in the Print Dialog (HTML) (PDF)
Installation information and examples, including the use of Automator workflows.
Printing 2007-10-31
Supporting Printing in Your Carbon Application (HTML) (PDF)
Explains how to support printing in Carbon applications. Includes creating PDFs and porting from Mac OS 9.
Printing 2004-08-31
Using PostScript Printer Description Files (HTML) (PDF)
Information for printer vendors. Includes installing files, PPD/PDE binding, and grouping features.
Printing 2005-07-07
Multiprocessing Services Programming Guide (HTML) (PDF)
Explains how to implement preemptive tasks in Carbon applications.
Process Management 2007-10-31
Plug-ins (HTML) (PDF)
Explains how to use the plug-in architecture provided by Core Foundation.
Process Management 2005-03-03
Threading Programming Guide (HTML) (PDF)
Explains how to use threads in Cocoa applications.
Process Management 2008-02-08
QuickTime Movie Basics (HTML) (PDF)
Introduces some of the basic concepts you need to understand when working with QuickTime movies.
QuickTime 2006-01-10
QuickTime Overview (HTML) (PDF)
Introduces the main concepts and services of QuickTime.
QuickTime 2005-08-11
Bundle Programming Guide (HTML) (PDF)
Explains how to use Core Foundation bundle objects to organize resources.
Resource Management 2005-11-09
Memory Management Programming Guide for Core Foundation (HTML) (PDF)
Explains how to allocate and deallocate objects in Core Foundation.
Resource Management 2008-10-15
Resource Programming Guide (HTML) (PDF)
Explains how to work with nib and bundle resources in Mac OS X applications.
Resource Management 2009-01-06
Plug-ins (HTML) (PDF)
Explains how to use the plug-in architecture provided by Core Foundation.
Runtime Architecture 2005-03-03
Apple Events Programming Guide (HTML) (PDF)
Provides conceptual information and programming examples for working with Apple events.
Scripting & Automation 2007-10-31
AppleScript Language Guide (HTML) (PDF)
Defines the AppleScript scripting language. Includes many brief sample scripts.
Scripting & Automation 2008-03-11
AppleScript Overview (HTML) (PDF)
Introduces the technology for writing scripts to control applications. Useful for scripters and application developers.
Scripting & Automation 2007-10-31
XML-RPC and SOAP Programming Guide (HTML) (PDF)
Explains how to make remote procedure calls from applications or from AppleScript scripts.
Scripting & Automation 2005-03-03
Authorization Services Programming Guide (HTML) (PDF)
Explains how to add fine-grained control of privileged operations in an application.
Security 2009-01-06
Certificate, Key, and Trust Services Programming Guide (HTML) (PDF)
Shows how to evaluate trust for a certificate and recover from a trust failure.
Security 2008-11-19
CFNetwork Programming Guide (HTML) (PDF)
Explains how to use Core Foundation networking functions to work with low-level BSD sockets.
Security 2009-05-06
Code Signing Guide (HTML) (PDF)
Explains how you can sign your code and why you should.
Security 2008-11-19
Keychain Services Programming Guide (HTML) (PDF)
This document explains how to use Keychain Services to store and retrieve passwords.
Security 2009-03-12
Secure Coding Guide (HTML) (PDF)
Describes techniques to use and factors to consider to make your code more secure from attack.
Security 2008-05-23
Security Overview (HTML) (PDF)
An introduction to computer security concepts and the security APIs in Mac OS X and iPhone OS.
Security 2008-10-15
Apple Type Services for Fonts Programming Guide (HTML) (PDF)
Explains how to access fonts using the ATS-based font management API. Includes implementing the Fonts window.
Text & Fonts 2007-12-11
ATSUI Programming Guide (HTML) (PDF)
Explains how to lay out, process, and draw Unicode text.
Text & Fonts 2007-07-10
Attributed Strings Programming Guide (HTML) (PDF)
Explains how to use attributed strings, which manage attributes of character strings or individual characters.
Text & Fonts 2007-06-04
Core Text Programming Guide (HTML) (PDF)
Explains how to do text layout and font-related operations using the Core Text programming interfaces.
Text & Fonts 2008-06-09
Dictionary Services Programming Guide (HTML) (PDF)
Explains how to create a dictionary and access it programmatically.
Text & Fonts 2007-05-30
Managing Fonts: QuickDraw (HTML) (PDF)
Deprecated - Explains how to use the deprecated QuickDraw-based font-management API replaced by Core Text or ATS.
Text & Fonts 2007-12-11
Programming With the Text Encoding Conversion Manager (HTML) (PDF)
Explains character encodings, Unicode conversion, and custom converter plug-ins. Lists encoding variants.
Text & Fonts 2005-07-07
Search Kit Programming Guide (HTML) (PDF)
Describes Search Kit architecture and workflow, and how to add search capabilities to Carbon and Cocoa applications.
Text & Fonts 2005-12-06
Strings Programming Guide for Core Foundation (HTML) (PDF)
Explains how to create, manipulate, and search strings in Core Foundation, and how strings interact with encodings and character sets.
Text & Fonts 2008-03-11
Supporting Unicode Input (HTML) (PDF)
Introduces international text in Mac OS X and lists the tasks an application needs to perform.
Text & Fonts 2005-07-07
Understanding Text Input and the Text Services Manager in Carbon (HTML) (PDF)
Discusses keyboard input, including Unicode, and explains how events are routed and handled.
Text & Fonts 2002-12-11
Using Ink Services in Your Application (HTML) (PDF)
Explains how Ink Services works and how to customize handwriting recognition.
Text & Fonts 2003-07-24
Cross-Development Programming Guide (HTML) (PDF)
Explains how to build software for versions of Mac OS X other than the one the development tools are running on.
Tools 2006-11-07
Debugging with GDB (HTML)
Open-source document that explains how to use GDB to debug programs.
Tools 2008-06-19
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
Porting CodeWarrior Projects to Xcode (HTML) (PDF)
Explains how to move software projects from CodeWarrior to Xcode and compares the two development environments.
Tools 2006-10-26
Software Delivery Guide (HTML) (PDF)
Explains how to distribute and install Mac OS X software using PackageMaker and Installer.
Tools 2006-07-24
Xcode Design Tools for Class Modeling (HTML) (PDF)
Describes the Xcode Design Tools for Class Modeling.
Tools 2009-02-04
Xcode Overview (HTML) (PDF)
Describes the Xcode IDE and its major components, and provides and overview of the development process.
Tools 2009-01-06
Xcode Project Management Guide (HTML) (PDF)
Provides practical descriptions of the major development tasks developers perform with Xcode.
Tools 2009-01-06
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
Xcode Workspace Guide (HTML) (PDF)
Provides an overview of the Xcode workspace, and shows how to use its components and features.
Tools 2009-01-06
Accessibility Programming Guidelines for Carbon (HTML) (PDF)
Explains how to access-enable Carbon applications.
User Experience 2007-02-08
Apple Help Programming Guide (HTML) (PDF)
Explains how to author, package, and display user help content in Mac OS X.
User Experience 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.
User Experience 2008-06-09
Creating Carbon Menus (HTML) (PDF)
Describes how to create menus in Carbon applications.
User Experience 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.
User Experience 2007-08-07
Desktop Icons (HTML)
Explains how to provide custom icons for a Carbon application and its documents.
User Experience 2002-08-19
Dock Tile Programming Guide (HTML) (PDF)
Explains how to provide an icon and contextual menu in Carbon applications.
User Experience 2009-03-04
Handling Carbon Windows and Controls (HTML) (PDF)
A guidebook for implementing windows and controls in Carbon applications.
User Experience 2005-07-07
HIArchive Programming Guide (HTML) (PDF)
Describes how to store data objects using HIArchive. Also includes information to make custom HIObjects archivable.
User Experience 2005-08-11
HIToolbar Programming Guide (HTML) (PDF)
Explains how to create toolbars in Carbon applications.
User Experience 2005-07-07
HIView Programming Guide (HTML) (PDF)
Describes view-based controls and how to implement them in Carbon applications.
User Experience 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.
User Experience 2003-12-10
Navigation Services Programming Guide (HTML) (PDF)
Explains how to provide a user interface for navigating to, opening, and saving files.
User Experience 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.
User Experience 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.
User Experience 2001-11-20
Providing Help Tags in Carbon (HTML) (PDF)
Explains how to add contextually sensitive help content to an application's user interface.
User Experience 2002-07-01
Quick Look Programming Guide (HTML) (PDF)
Describes the purporse and architecture of Quick Look generators and explains how to create them.
User Experience 2008-02-08
Resolution Independence Guidelines (HTML) (PDF)
Describes resolution independence and how to start updating applications to support high-resolution monitors.
User Experience 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.
User Experience 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.
User Experience 2003-12-10
Software Delivery Guide (HTML) (PDF)
Explains how to distribute and install Mac OS X software using PackageMaker and Installer.
User Experience 2006-07-24
Speech Synthesis Programming Guide (HTML) (PDF)
Describes speech synthesis in Mac OS X and explains how your application can produce customized spoken output.
User Experience 2006-09-05
Unarchiving Interface Objects With Interface Builder Services (HTML) (PDF)
Explains how to reconstitute user interface elements in Carbon applications.
User Experience 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.
User Experience 2004-06-28
WebKit Objective-C Programming Guide (HTML) (PDF)
Explains how to use the WebKit to embed web content in both Cocoa and Carbon applications.
User Experience 2008-10-15