Jump To:
Leopard Reference Library: Carbon
User experience encompasses the visual appearance, interactive behavior, and assistive capabilities of software. Carbon provides a number of APIs to implement user interface elements, such as windows, controls, and menus.

View all User Experience Reference Library.
Document Descriptions
On Off
Display

Sort by
Title
Sorted by
Resource Type
Sort by
Date
Using the Web Kit for Application Registration (HTML)
Learn how to use the Web Kit to handle your application's online registration.
Articles 2004-03-09
Dock Tile Programming Guide (HTML) (PDF)
Explains how to provide an icon and contextual menu in Carbon applications.
Guides 2009-03-04
WebKit Objective-C Programming Guide (HTML) (PDF)
Explains how to use the WebKit to embed web content in both Cocoa and Carbon applications.
Guides 2008-10-15
Apple Human Interface Guidelines (HTML) (PDF)
Introduces the Mac OS X user experience and explains how to design an application for Aqua.
Guides 2008-06-09
Quick Look Programming Guide (HTML) (PDF)
Describes the purporse and architecture of Quick Look generators and explains how to create them.
Guides 2008-02-08
Apple Help Programming Guide (HTML) (PDF)
Explains how to author, package, and display user help content in Mac OS X.
Guides 2007-10-31
HIView Programming Guide (HTML) (PDF)
Describes view-based controls and how to implement them in Carbon applications.
Guides 2007-10-31
Data Browser Programming Guide (HTML) (PDF)
Explains how to present data in lists similar to the list and column views in the Finder.
Guides 2007-08-07
Navigation Services Programming Guide (HTML) (PDF)
Explains how to provide a user interface for navigating to, opening, and saving files.
Guides 2007-07-10
Resolution Independence Guidelines (HTML) (PDF)
Describes resolution independence and how to start updating applications to support high-resolution monitors.
Guides 2007-05-04
Accessibility Programming Guidelines for Carbon (HTML) (PDF)
Explains how to access-enable Carbon applications.
Guides 2007-02-08
Speech Synthesis Programming Guide (HTML) (PDF)
Describes speech synthesis in Mac OS X and explains how your application can produce customized spoken output.
Guides 2006-09-05
Software Delivery Guide (HTML) (PDF)
Explains how to distribute and install Mac OS X software using PackageMaker and Installer.
Guides 2006-07-24
Search Kit Programming Guide (HTML) (PDF)
Describes Search Kit architecture and workflow, and how to add search capabilities to Carbon and Cocoa applications.
Guides 2005-12-06
HIArchive Programming Guide (HTML) (PDF)
Describes how to store data objects using HIArchive. Also includes information to make custom HIObjects archivable.
Guides 2005-08-11
Handling Carbon Windows and Controls (HTML) (PDF)
A guidebook for implementing windows and controls in Carbon applications.
Guides 2005-07-07
HIToolbar Programming Guide (HTML) (PDF)
Explains how to create toolbars in Carbon applications.
Guides 2005-07-07
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.
Guides 2004-06-28
Creating Carbon Menus (HTML) (PDF)
Describes how to create menus in Carbon applications.
Guides 2004-02-23
Unarchiving Interface Objects With Interface Builder Services (HTML) (PDF)
Explains how to reconstitute user interface elements in Carbon applications.
Guides 2004-02-17
Navigation Services for Carbon: An Overview (HTML) (PDF)
Introduces changes to the Navigation Services API for CarbonLib and Carbon in Mac OS X.
Guides 2003-12-10
Setting Up Your Carbon Application to Use the Services Menu (HTML) (PDF)
Explains how to make a Carbon application share functionality with other applications.
Guides 2003-12-10
Obtaining and Using Icons With Icon Services (HTML) (PDF)
Explains how to obtain and display icons for a Carbon application or extension.
Guides 2003-02-01
Desktop Icons (HTML)
Explains how to provide custom icons for a Carbon application and its documents.
Guides 2002-08-19
Providing Help Tags in Carbon (HTML) (PDF)
Explains how to add contextually sensitive help content to an application's user interface.
Guides 2002-07-01
Programming with the Appearance Manager (HTML)
Explains how to make an application's user interface look like the Mac OS user interface.
Guides 2001-11-20
Search Kit Reference (HTML) (PDF)
Describes the interface for supporting user searches of textual content.
Reference 2009-05-06
Speech Synthesis Manager Reference (HTML) (PDF)
Describes the C API for converting text into synthesized speech.
Reference 2009-04-08
WebKit C Reference (HTML) (PDF)
Describes the C API for displaying web content in windows.
Reference 2008-10-15
Data Browser Reference (HTML) (PDF)
Describes the C API used to display data in list or column views similar to the Finder.
Reference 2008-04-08
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.
Reference 2008-04-08
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.
Reference 2007-12-11
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.
Reference 2007-12-04
Application Manager Reference (HTML) (PDF)
Describes the C API for performing various application-level tasks in a Carbon application. Formerly titled Dock Manager Reference.
Reference 2007-10-31
Dialog Manager Reference (HTML) (PDF)
Describes the C interface for implementing alerts and dialog boxes.
Reference 2007-10-31
Preferences Utilities Reference (HTML) (PDF)
Describes Core Foundation preferences functions.
Reference 2007-10-31
QLThumbnailRequest Reference (HTML) (PDF)
Describes an opaque type for handling requests for Quick Look thumbnail images.
Reference 2007-10-31
Window Manager Reference (HTML) (PDF)
Describes the C API for creating and manipulating Carbon windows.
Reference 2007-10-31
QLPreviewRequest Reference (HTML) (PDF)
Describes an opaque type for handling requests for Quick Look document previews.
Reference 2007-04-20
HIView Reference (HTML) (PDF)
Describes the C API for creating and manipulating view-based controls and menus in Carbon applications.
Reference 2007-04-13
Quick Look Framework Reference (HTML) (PDF)
Describes the interface for creating plug-ins that generate Quick Look previews and thumbnails.
Reference 2007-04-13
Icon Services and Utilities Reference (HTML) (PDF)
Describes the C API for manipulating and drawing icons in Carbon applications.
Reference 2007-04-06
Control Manager Reference (HTML) (PDF)
Describes the C API for creating and manipulating Carbon controls.
Reference 2007-03-26
Fonts Panel Reference (HTML) (PDF)
Describes the C API for providing a Fonts window in a Carbon application.
Reference 2007-02-26
Appearance Manager Reference (HTML) (PDF)
Describes the C API for coordinating the look of the standard Mac OS human interface.
Reference 2007-01-23
Finder Interface Reference (HTML) (PDF)
Describes several C data types used by the Finder to contain information about file system objects.
Reference 2006-10-31
Menu Manager Reference (HTML) (PDF)
Describes the C API for creating and managing an application's menus.
Reference 2006-09-15
Navigation Services Reference (HTML) (PDF)
Describes the C API for presenting a user interface for opening, saving, and navigating files.
Reference 2006-08-16
Find By Content Reference (HTML) (PDF)
Deprecated - Describes the legacy C API for performing relevance-ranked searches. Replaced by Search Kit.
Reference 2006-07-13
Apple Help Reference (HTML) (PDF)
Describes the C API for finding and displaying help content using Apple's HTML-based help system.
Reference 2006-07-12
Drag Manager Reference (HTML) (PDF)
Describes the C API for dragging objects within the user interface.
Reference 2006-07-12
HIToolbar Reference (HTML) (PDF)
Describes the C API for creating and manipulating toolbars in Carbon applications.
Reference 2005-09-08
HIArchive Reference (HTML) (PDF)
Describes the C API for storing and retrieving data in HIArchives.
Reference 2005-08-11
HIObject Reference (HTML) (PDF)
Describes the C API for creating and manipulating human interface objects in Carbon applications.
Reference 2005-08-11
HIShape Reference (HTML) (PDF)
Describes the Carbon API for manipulating HIShape objects.
Reference 2004-06-28
Carbon Help Manager Reference (HTML) (PDF)
Describes the interface for displaying short onscreen hints in help tags.
Reference 2004-03-01
Interface Builder Services Reference (HTML) (PDF)
Describes the C API for unarchiving interface objects.
Reference 2004-02-17
Speech Recognition Manager Reference (HTML) (PDF)
Describes the C interface for recognizing and accepting spoken input.
Reference 2003-02-01
DiscRecording Release Notes (HTML)
Updated for Mac OS X v10.5
Release Notes 2007-10-31
Speech Release Notes (HTML)
New document that describes new features, notes, and known issues for speech synthesis on Mac OS X v10.5.
Release Notes 2007-10-31
SearchKit Release Notes (HTML)
Release Notes 2005-04-29
DTSCarbonShell (HTML) (DMG) (ZIP)
Provides a modern Mac OS X Carbon Application Skeleton
Sample Code 2007-09-20
HIView-NSView (HTML) (DMG) (ZIP)
Demonstrates how to embed an NSView within an HIView in a Carbon window.
Sample Code 2007-05-29
Cocoa_With_Carbon_or_CPP (HTML) (DMG) (ZIP)
Shows how to call Carbon routines and C++ code from within an Objective-C Cocoa program.
Sample Code 2007-02-05
CarbonCocoa_PictureCursor (HTML) (DMG) (ZIP)
Demonstrates how to use NSCursor from a Carbon based application.
Sample Code 2007-01-12
RecentItems (HTML) (DMG) (ZIP)
Implements "Recent items" menu(s)
Sample Code 2006-10-09
SampleCMPlugIn (HTML) (DMG) (ZIP)
A contextual menu plugIn for Mac OS X.
Sample Code 2006-10-09
StickiesExample (HTML) (DMG) (ZIP)
Contains sample code and tools used by Sync Services Tutorial to demonstrate debugging syncing applications.
Sample Code 2006-08-08
SetCustomIcon (HTML) (DMG) (ZIP)
Demonstrates how to programmatically set a custom icon for a file, folder, or disk.
Sample Code 2006-08-01
AppleScriptRunner (HTML) (DMG) (ZIP)
How to send mail and execute other AppleScripts from a Carbon application.
Sample Code 2006-07-31
WindowFun (HTML) (DMG) (ZIP)
Create window layers and groups. Drawing transparent lines. How to display the "Poof" the toolbar uses.
Sample Code 2005-08-24
MungSaver (HTML) (DMG) (ZIP)
Demonstrates a simple Screen Saver module for Panther, using the Sequence Grabber DataProc mung technique.
Sample Code 2003-11-18
MoreIsBetter (HTML) (DMG) (ZIP)
Library providing indispensable wrapers and workarounds for many areas of Mac OS programming.
Sample Code 2003-10-27
YASTControl (HTML) (DMG) (ZIP)
An application illustrating how to use a user pane control to define MLTE based text fields.
Sample Code 2003-10-27
Tiler (HTML) (DMG) (ZIP)
Modify your applications tile icon within the Mac OS X dock by using both QuickDraw and Quartz
Sample Code 2003-10-24
FinderLaunch (HTML) (DMG) (ZIP)
Shows how to open documents by sending Apple Events to the Finder.
Sample Code 2003-10-14
GrabBag (HTML) (DMG) (ZIP)
Demonstrates variety of techniques and features of Carbon. DataBrowser , PBCatalogSearchAsync, Overlay windows, Tab controls, more...
Sample Code 2003-07-29
Simple DrawSprocket (HTML) (DMG) (ZIP)
Deprecated - Simple use of DrawSprocket to set screen resolution and size.
Sample Code 2003-07-22
BasicDataBrowser (HTML) (DMG) (ZIP)
Shows how to create a basic, functional data browser.
Sample Code 2003-05-08
SimpleSpeechRecExample (HTML) (DMG) (ZIP)
Demonstrates how to use the Speech Recognition Manager in a simple application.
Sample Code 2003-03-26
TubeTest (HTML) (DMG) (ZIP)
Deprecated - The program is a simple demonstration of how to use the Palette Manager in a color program.
Sample Code 2003-03-12
SimpleTabControl (HTML) (DMG) (ZIP)
Demonstrates how to use a simple tabbed pane window. This control is often used in preferences.
Sample Code 2003-02-20
Calculator (HTML) (DMG) (ZIP)
Implements a simple "four-banger" calculator.
Sample Code 2003-01-30
CarbonCustomList (HTML) (DMG) (ZIP)
How to implement a custom list using Carbon using CreateCustomList.
Sample Code 2003-01-30
CarbonMDEF (HTML) (DMG) (ZIP)
A Mac OS X-compatible, Appearance-savvy sample menu definition function (MDEF).
Sample Code 2003-01-30
ColoredCheckBox (HTML) (DMG) (ZIP)
Demonstrates how to create a colored check box on a gray window backgrounds.
Sample Code 2003-01-30
ControlBackground (HTML) (DMG) (ZIP)
Shows how to affect the background color of a control when drawing it.
Sample Code 2003-01-30
CustomWindow (HTML) (DMG) (ZIP)
Demonstrates how to create a custom window in Mac OS X.
Sample Code 2003-01-30
Fragment Tool (HTML) (DMG) (ZIP)
Demonstrates manipulation of code fragments; combining and separating; viewing and editing information associated with each.
Sample Code 2003-01-30
GetDragHiliteColor (HTML) (DMG) (ZIP)
Shows how to obtain the color that Drag Manager uses to hilite regions when calling ShowDragHilite.
Sample Code 2003-01-30
HandyScrollingSample (HTML) (DMG) (ZIP)
Shows some ways of implementing scrolling.
Sample Code 2003-01-30
HideMenuBar (HTML) (DMG) (ZIP)
Shows how to hide the menu bar.
Sample Code 2003-01-30
HTMLSample (HTML) (DMG) (ZIP)
Deprecated - Illustrates one way to use the HTMLRenderingLib Library.
Sample Code 2003-01-30
HTMLUserPane (HTML) (DMG) (ZIP)
Deprecated - Shows how to display a HTMLRenderingLib object inside of a user pane control.
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.
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.
Sample Code 2003-01-30
IconUtilCheck (HTML) (DMG) (ZIP)
Shows how to determine whether the Icon Utilities are available.
Sample Code 2003-01-30
ictbSample (HTML) (DMG) (ZIP)
Deprecated - Shows an example of ictb resource.
Sample Code 2003-01-30
kcapApp (HTML) (DMG) (ZIP)
Demonstrates drawing the key caps, given a set of modifiers and KCHR and KCAP resource IDs.
Sample Code 2003-01-30
KeyMapTest (HTML) (DMG) (ZIP)
Uses Pascal to display a KeyMap representation whenever keys are pressed.
Sample Code 2003-01-30
Live Scroll (HTML) (DMG) (ZIP)
Deprecated - Demonstrates how to implementing live scrolling during the tracking of scroll bar thumbs.
Sample Code 2003-01-30
NoSound (HTML) (DMG) (ZIP)
Illustrates how to install a procedure to be executed when the user restarts or shuts down.
Sample Code 2003-01-30
Password (HTML) (DMG) (ZIP)
Deprecated - Illustrates three different ways to implement password fields in dialogs.
Sample Code 2003-01-30
PopUpMenuWithCurFont (HTML) (DMG) (ZIP)
Deprecated - Demonstrates what must be done to control the font used by MDEF 0 during PopUpMenuSelect.
Sample Code 2003-01-30
ReadLocation (HTML) (DMG) (ZIP)
Retrieves the Map control panel settings for longitude and latitude and the time offset from GMT.
Sample Code 2003-01-30
ReKeyTrans (HTML) (DMG) (ZIP)
Shows how to patch KeyTrans to ignore dead-key processing so you type fancy accented characters.
Sample Code 2003-01-30
ROMResourceDump (HTML) (DMG) (ZIP)
Deprecated - Illustrates how to copy all resources in the Macintosh's ROM into a file.
Sample Code 2003-01-30
Scrap Parsing (HTML) (DMG) (ZIP)
Deprecated - Shows how to parse the in-memory scrap.
Sample Code 2003-01-30
SetIndString (HTML) (DMG) (ZIP)
Implements SetIndString(), which sets a particular STR# string to the passed in string. Similar to GetIndString()
Sample Code 2003-01-30
SetWindBackColor (HTML) (DMG) (ZIP)
Demonstrates how to programmatically set the background color of a window without flicker without the Appearance Manager.
Sample Code 2003-01-30
SICN LDEF (HTML) (DMG) (ZIP)
Implements an LDEF that displays small icons to the left of text in a list.
Sample Code 2003-01-30
SimpleList (HTML) (DMG) (ZIP)
A simple illustration of a ListBox Control implementation and its pitfall
Sample Code 2003-01-30
Splasher (HTML) (DMG) (ZIP)
Closes a modal window, such as a splash screen, with a mouse click or key press.
Sample Code 2003-01-30
stdFilterHacking (HTML) (DMG) (ZIP)
Demonstrates problems and workarounds for/with the Standard Dialog Filter.
Sample Code 2003-01-30
Vertest (HTML) (DMG) (ZIP)
Demonstrates how to access the information from the Vers Resource. Developed for Tech Note #189.
Sample Code 2003-01-30
FinderDragPro (HTML) (DMG) (ZIP)
Sample file illustrating drag and drop techniques for use with file system objects.
Sample Code 2003-01-14
NewCCursor (HTML) (DMG) (ZIP)
Deprecated - Shows how to create a black and white 'CURS' and a color 'crsr' cursor resource by hand.
Sample Code 2003-01-14
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.
Technical Notes 2003-02-24
The CGDirectPalette API (HTML) (日本語 HTML)
TN2008: Provides a reference for the CGDirectPalette API on Mac OS X
Technical Notes 2000-11-08
Moving Your Code to Mac OS X (HTML) (日本語 HTML)
TN2003: Talks about considerations for moving older Mac OS 9 applications to Mac OS X.
Technical Notes 2000-10-05
Using the Drag Manager to Interact with and Manipulate File System Entities (HTML) (日本語 HTML)
TN1085: Details the data flavors provided by the Drag Manager for interacting with and manipulating file system entities.
Technical Notes 1996-12-01
Gestalt Manager Q&As (HTML)
Deprecated - OS505: Describes methods utilizing the Gestalt Manager for determining whether a Macintosh is a U.S. machine.
Technical Notes 1992-12-01
Requirements for Quartz GL (HTML)
QA1536: Describes the requirements for enabling Quartz GL.
Technical Q&As 2008-08-08
Suppressing the "unexpectedly quit" alert (HTML)
QA1288: Describes how to suppress the "unexpectedly quit" alert.
Technical Q&As 2008-03-11
StopAlert and NoteAlert now use the Application icon (HTML)
QA1378: System Alerts now use the Application icon to let the User easily identify the source of the alert.
Technical Q&As 2005-10-04
Unified window title and toolbar appearance in Carbon (HTML)
QA1423: How to use the unified window title and toolbar appearance for a Carbon window.
Technical Q&As 2005-06-17
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.
Technical Q&As 2004-11-22
Clickable Static Text Item (HTML)
QA1380: Explains how to make a static text item respond to clicks
Technical Q&As 2004-10-05
SetFontInfoForSelection incorrect prototype (HTML)
QA1375: Describes the incorrect prototyping of the SetFontInfoForSelection API and gives a workaround.
Technical Q&As 2004-10-04
Why isn't my edit text box in my Navigation dialog's custom area working on 10.3? (HTML)
QA1315: Explains a bug in the Mac OS X 10.3 Navigation Services Custom Area involving the EditText and its work around.
Technical Q&As 2003-10-28
HID Manager Event Data Underruns (HTML)
QA1038: Explains how to correctly handle HID Manager event queue data underruns.
Technical Q&As 2001-06-13
Securely Erasing, Accessing and Dismounting a Macintosh Partition (HTML) (日本語 HTML)
FL11: Set up a disk for secure erasures. Resources with information on magnetic disks, information recovery.
Technical Q&As 1999-01-11
Moving the Menu Bar (HTML) (日本語 HTML)
Deprecated - TB54: Describes how to move the menubar to another Macintosh Display and why this move is unadvisable.
Technical Q&As 1998-12-22
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.
Technical Q&As 1997-11-17
Using qd and QDGlobals (HTML) (日本語 HTML)
Deprecated - QD40: Why a sample program compiled with SC may give the link error: undefined entry qd. Provides a solution.
Technical Q&As 1996-02-09
Using Temporary Memory with OpenPicture (HTML)
Deprecated - QD20: Provides several techniques of causing OpenPicture to allocate temporary memory for a picture handle.
Technical Q&As 1996-02-01
Error -151 and NewGWorld (HTML)
Deprecated - QD18: Explains what the error code -151 means when in NewGWorld.
Technical Q&As 1995-09-15
Problem with PaintRgn on 256-color Screens (HTML)
Deprecated - QD23: PaintRgn with RGBForeColor and transfer mode addOver doesn't return color to original on 256-color-screens.
Technical Q&As 1995-09-15
Window Manager and EraseRect (HTML)
Deprecated - QD26: Why WindowManager causes a flicker using EraseRect and provides a solution for this problem.
Technical Q&As 1995-09-15