Jump To:
Reference Library
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
Resource Type
Sort by
Date
GNU C/C++/Objective-C 3.3 Compiler (HTML)
Explains how to use the GNU compilers from the command line.
Tools Reference
GNU C/C++/Objective-C 4.0.1 Compiler User Guide (HTML)
Describes the Apple version of the GNU 4.0.1 compiler.
Tools Reference 2007-10-31
GNU C/C++/Objective-C 4.2.1 Compiler User Guide (HTML)
Describes the Apple version of the GNU 4.2.1 compiler.
Tools Reference 2008-01-23
Help Book Caching During Software Development (HTML)
QA1409: Development situations that can potentially confuse Help Viewer
Tools Technical Q&As 2005-03-30
Interface Builder Services Reference (HTML) (PDF)
Describes the C API for unarchiving interface objects.
Tools Reference 2004-02-17
Interface Builder User Guide (HTML) (PDF)
Conceptual information and tasks explaining how to use the Interface Builder application to design user interfaces.
Tools Guides 2007-10-31
Leopard Technology Series for Developers: Leopard Developer Tools Overview (HTML)
Learn how Leopard developer tools make it easier than ever to create exciting applications.
Tools Articles 2006-11-15
Mac OS X 10.2 (HTML)
TN2053: Describes software development-related changes provided in system software update Mac OS X 10.2.
Tools Technical Notes 2002-09-04
Mac OS X: v10.1.1 - v10.1.3 (HTML)
TN2043: Describes changes provided by system software updates 10.1.1 through 10.1.3.
Tools Technical Notes 2002-03-06
MoreAppleEvents (HTML) (DMG) (ZIP)
Provides routines that assist with the creation and sending of Apple events and object descriptors.
Tools Sample Code 2003-01-14
Moving Your Project from CodeWarrior to Xcode (HTML)
Get started moving your project from CodeWarrior to Xcode.
Tools Articles 2005-11-28
OTScheduleDeferredTask When Task Running (HTML) (日本語 HTML)
NW52: Describes what happens when you use OTScheduleDefferedTask to schedule a task that is running.
Tools Technical Q&As 1997-10-13
Porting CodeWarrior Projects to Xcode (HTML) (PDF)
Explains how to move software projects from CodeWarrior to Xcode and compares the two development environments.
Tools Guides 2006-10-26
SDKExample (HTML) (DMG) (ZIP)
Shows how to weak-link against the Carbon framework in various SDKs to adopt new OS features in a single executable.
Tools Sample Code 2005-06-06
Setting environment variables for user processes (HTML)
QA1067: Tells how to set environment variables for user processes.
Tools Technical Q&As 2001-10-25
Software Delivery Guide (HTML) (PDF)
Explains how to distribute and install Mac OS X software using PackageMaker and Installer.
Tools Guides 2006-07-24
Switching from Code Warrior to Xcode (HTML)
Learn how to import your projects from CodeWarrior.
Tools Articles 2003-10-24
VelEng FFT (HTML) (DMG) (ZIP)
G4 Velocity Engine implementation of Fast Fourier Transform (FFT) and associated convolution/correlation routines.
Tools Sample Code 2003-01-14
Xcode Design Tools for Class Modeling (HTML) (PDF)
Describes the Xcode Design Tools for Class Modeling.
Tools Guides 2008-04-15
Xcode Overview (HTML) (PDF) (日本語 HTML) (日本語 PDF)
Describes the Xcode IDE and its major components, and provides and overview of the development process.
Tools Guides 2008-05-27
Xcode Project Management Guide (HTML) (PDF)
Provides practical descriptions of the major development tasks developers perform with Xcode.
Tools Guides 2008-09-09
Xcode Quick Tour Guide 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 Guides 2008-06-05
Xcode Workspace Guide (HTML) (PDF)
Provides an overview of the Xcode workspace, and shows how to use its components and features.
Tools Guides 2008-09-09
Accessibility Programming Guidelines for Carbon (HTML) (PDF)
Explains how to access-enable Carbon applications.
User Experience Guides 2007-02-08
Appearance Manager Reference (HTML) (PDF)
Describes the C API for coordinating the look of the standard Mac OS human interface.
User Experience Reference 2007-01-23
Apple Help Programming Guide (HTML) (PDF)
Explains how to author, package, and display user help content in Mac OS X.
User Experience Guides 2007-10-31
Apple Help Reference (HTML) (PDF)
Describes the C API for finding and displaying help content using Apple's HTML-based help system.
User Experience Reference 2006-07-12
Apple Human Interface Guidelines (HTML) (PDF)
Introduces the Mac OS X user experience and explains how to design an application for Aqua.
User Experience Guides 2008-06-09
AppleScriptRunner (HTML) (DMG) (ZIP)
How to send mail and execute other AppleScripts from a Carbon application.
User Experience Sample Code 2006-07-31
Application Manager Reference (HTML) (PDF)
Describes the C API for performing various application-level tasks in a Carbon application. Formerly titled Dock Manager Reference.
User Experience Reference 2007-10-31
BasicDataBrowser (HTML) (DMG) (ZIP)
Shows how to create a basic, functional data browser.
User Experience Sample Code 2003-05-08
Calculator (HTML) (DMG) (ZIP)
Implements a simple "four-banger" calculator.
User Experience Sample Code 2003-01-30
Carbon Help Manager Reference (HTML) (PDF)
Describes the C API for providing help tags in an application's user interface.
User Experience Reference 2004-03-01
CarbonCocoa_PictureCursor (HTML) (DMG) (ZIP)
Demonstrates how to use NSCursor from a Carbon based application.
User Experience Sample Code 2007-01-12
CarbonCustomList (HTML) (DMG) (ZIP)
How to implement a custom list using Carbon using CreateCustomList.
User Experience Sample Code 2003-01-30
CarbonMDEF (HTML) (DMG) (ZIP)
A Mac OS X-compatible, Appearance-savvy sample menu definition function (MDEF).
User Experience Sample Code 2003-01-30
The CGDirectPalette API (HTML) (日本語 HTML)
TN2008: Provides a reference for the CGDirectPalette API on Mac OS X
User Experience Technical Notes 2000-11-08
Clickable Static Text Item (HTML)
QA1380: Explains how to make a static text item respond to clicks
User Experience Technical Q&As 2004-10-05
Cocoa_With_Carbon_or_CPP (HTML) (DMG) (ZIP)
Shows how to call Carbon routines and C++ code from within an Objective-C Cocoa program.
User Experience Sample Code 2007-02-05
ColoredCheckBox (HTML) (DMG) (ZIP)
Demonstrates how to create a colored check box on a gray window backgrounds.
User Experience Sample Code 2003-01-30
Control Manager Reference (HTML) (PDF)
Describes the C API for creating and manipulating Carbon controls.
User Experience Reference 2007-03-26
ControlBackground (HTML) (DMG) (ZIP)
Shows how to affect the background color of a control when drawing it.
User Experience Sample Code 2003-01-30
Creating Carbon Menus (HTML) (PDF)
Describes how to create menus in Carbon applications.
User Experience Guides 2004-02-23
Creating Gray Scaled Images > 8 bits (HTML) (日本語 HTML)
Deprecated - QD51: Shows how to create gray-scaled images at resolutions greater than 8 bits for display.
User Experience Technical Q&As 1997-11-17
CustomWindow (HTML) (DMG) (ZIP)
Demonstrates how to create a custom window in Mac OS X.
User Experience Sample Code 2003-01-30
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 Guides 2007-08-07
Data Browser Reference (HTML) (PDF)
Describes the C API used to display data in list or column views similar to the Finder.
User Experience Reference 2008-04-08
Desktop Icons (HTML)
Explains how to provide custom icons for a Carbon application and its documents.
User Experience Guides 2002-08-19
Dialog Manager Reference (HTML) (PDF)
Describes the C API for implementing alerts and dialog boxes.
User Experience Reference 2007-10-31
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.
User Experience Reference 2008-04-08
DiscRecording Release Notes (HTML)
Updated for Mac OS X v10.5
User Experience Release Notes 2007-10-31
Display Manager Reference (HTML) (PDF)
Deprecated - Describes the C API for dynamically changing the arrangement and display modes of attached monitors. Replaced by Quartz Display Services.
User Experience Reference 2007-12-04
Dock Tile Programming Guide (HTML) (PDF)
Explains how to provide an icon and contextual menu in Carbon applications.
User Experience Guides 2007-07-10
Drag Manager Reference (HTML) (PDF)
Describes the C API for dragging objects within the user interface.
User Experience Reference 2006-07-12
DTSCarbonShell (HTML) (DMG) (ZIP)
Provides a modern Mac OS X Carbon Application Skeleton
User Experience Sample Code 2007-09-20
Error -151 and NewGWorld (HTML)
Deprecated - QD18: Explains what the error code -151 means when in NewGWorld.
User Experience Technical Q&As 1995-09-15
Find By Content Reference (HTML) (PDF)
Deprecated - Describes the legacy C API for performing relevance-ranked searches. Replaced by Search Kit.
User Experience Reference 2006-07-13
Finder Interface Reference (HTML) (PDF)
Describes several C data types used by the Finder to contain information about file system objects.
User Experience Reference 2006-10-31
FinderDragPro (HTML) (DMG) (ZIP)
Sample file illustrating drag and drop techniques for use with file system objects.
User Experience Sample Code 2003-01-14
FinderLaunch (HTML) (DMG) (ZIP)
Shows how to open documents by sending Apple Events to the Finder.
User Experience Sample Code 2003-10-14
Fonts Panel Reference (HTML) (PDF)
Describes the C API for providing a Fonts window in a Carbon application.
User Experience Reference 2007-02-26
Fragment Tool (HTML) (DMG) (ZIP)
Demonstrates manipulation of code fragments; combining and separating; viewing and editing information associated with each.
User Experience Sample Code 2003-01-30
Gestalt Manager Q&As (HTML)
Deprecated - OS505: Describes methods utilizing the Gestalt Manager for determining whether a Macintosh is a U.S. machine.
User Experience Technical Notes 1992-12-01
GetDragHiliteColor (HTML) (DMG) (ZIP)
Shows how to obtain the color that Drag Manager uses to hilite regions when calling ShowDragHilite.
User Experience Sample Code 2003-01-30
GrabBag (HTML) (DMG) (ZIP)
Demonstrates variety of techniques and features of Carbon. DataBrowser , PBCatalogSearchAsync, Overlay windows, Tab controls, more...
User Experience Sample Code 2003-07-29
Guide to Creating Kiosks on Mac OS X (HTML) (日本語 HTML)
TN2062: Discusses techniques used in creating applications which require kiosk-like functionality on Mac OS X.
User Experience Technical Notes 2003-02-24
Handling Carbon Windows and Controls (HTML) (PDF)
A guidebook for implementing windows and controls in Carbon applications.
User Experience Guides 2005-07-07
HandyScrollingSample (HTML) (DMG) (ZIP)
Shows some ways of implementing scrolling.
User Experience Sample Code 2003-01-30
HIArchive Programming Guide (HTML) (PDF)
Describes how to store data objects using HIArchive. Also includes information to make custom HIObjects archivable.
User Experience Guides 2005-08-11
HIArchive Reference (HTML) (PDF)
Describes the C API for storing and retrieving data in HIArchives.
User Experience Reference 2005-08-11
HID Manager Event Data Underruns (HTML)
QA1038: Explains how to correctly handle HID Manager event queue data underruns.
User Experience Technical Q&As 2001-06-13
HideMenuBar (HTML) (DMG) (ZIP)
Shows how to hide the menu bar.
User Experience Sample Code 2003-01-30
HIObject Reference (HTML) (PDF)
Describes the C API for creating and manipulating human interface objects in Carbon applications.
User Experience Reference 2005-08-11
HIShape Reference (HTML) (PDF)
Describes the Carbon API for manipulating HIShape objects.
User Experience Reference 2004-06-28
HIToolbar Programming Guide (HTML) (PDF)
Explains how to create toolbars in Carbon applications.
User Experience Guides 2005-07-07
HIToolbar Reference (HTML) (PDF)
Describes the C API for creating and manipulating toolbars in Carbon applications.
User Experience Reference 2005-09-08
HIView Programming Guide (HTML) (PDF)
Describes view-based controls and how to implement them in Carbon applications.
User Experience Guides 2007-10-31
HIView Reference (HTML) (PDF)
Describes the C API for creating and manipulating view-based controls and menus in Carbon applications.
User Experience Reference 2007-04-13
HIView-NSView (HTML) (DMG) (ZIP)
Demonstrates how to embed an NSView within an HIView in a Carbon window.
User Experience Sample Code 2007-05-29
HTMLSample (HTML) (DMG) (ZIP)
Deprecated - Illustrates one way to use the HTMLRenderingLib Library.
User Experience Sample Code 2003-01-30
HTMLUserPane (HTML) (DMG) (ZIP)
Deprecated - Shows how to display a HTMLRenderingLib object inside of a user pane control.
User Experience Sample Code 2003-01-30
icon cache demo (HTML) (DMG) (ZIP)
Demonstrates the use of an icon cache to limit the search for icon resource to one resource file.
User Experience Sample Code 2003-01-30
Icon Play (HTML) (DMG) (ZIP)
Demonstrates the use of icon utilities and popup control cdef in a program using modal dialogs.
User Experience Sample Code 2003-01-30
Icon Services and Utilities Reference (HTML) (PDF)
Describes the C API for manipulating and drawing icons in Carbon applications.
User Experience Reference 2007-04-06
IconUtilCheck (HTML) (DMG) (ZIP)
Shows how to determine whether the Icon Utilities are available.
User Experience Sample Code 2003-01-30
ictbSample (HTML) (DMG) (ZIP)
Deprecated - Shows an example of ictb resource.
User Experience Sample Code 2003-01-30
Interface Builder Services Reference (HTML) (PDF)
Describes the C API for unarchiving interface objects.
User Experience Reference 2004-02-17
kcapApp (HTML) (DMG) (ZIP)
Demonstrates drawing the key caps, given a set of modifiers and KCHR and KCAP resource IDs.
User Experience Sample Code 2003-01-30
KeyMapTest (HTML) (DMG) (ZIP)
Uses Pascal to display a KeyMap representation whenever keys are pressed.
User Experience Sample Code 2003-01-30
List Manager Reference (HTML) (PDF)
Deprecated - Describes the legacy C API for managing and displaying elements in a scrollable list. Replaced by the Data Browser.
User Experience Reference 2007-12-11
Live Scroll (HTML) (DMG) (ZIP)
Deprecated - Demonstrates how to implementing live scrolling during the tracking of scroll bar thumbs.
User Experience Sample Code 2003-01-30
Menu Manager Reference (HTML) (PDF)
Describes the C API for creating and managing an application's menus.
User Experience Reference 2006-09-15
MoreIsBetter (HTML) (DMG) (ZIP)
Library providing indispensable wrapers and workarounds for many areas of Mac OS programming.
User Experience Sample Code 2003-10-27
Moving the Menu Bar (HTML) (日本語 HTML)
Deprecated - TB54: Describes how to move the menubar to another Macintosh Display and why this move is unadvisable.
User Experience Technical Q&As 1998-12-22
Moving Your Code to Mac OS X (HTML) (日本語 HTML)
TN2003: Talks about considerations for moving older Mac OS 9 applications to Mac OS X.
User Experience Technical Notes 2000-10-05
MungSaver (HTML) (DMG) (ZIP)
Demonstrates a simple Screen Saver module for Panther, using the Sequence Grabber DataProc mung technique.
User Experience Sample Code 2003-11-18
My custom item dismisses my Navigation Services dialog (HTML)
QA1381: Gives a workaround for dismissive clicks on items in the custom area of Navigation Services dialogs.
User Experience Technical Q&As 2004-11-22
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 Guides 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 Guides 2007-07-10
Navigation Services Reference (HTML) (PDF)
Describes the C API for presenting a user interface for opening, saving, and navigating files.
User Experience Reference 2006-08-16