Jump To:
Leopard Sample Code: Carbon
The Human Interface Toolbox is an object-oriented C API for implementing user interfaces, available in Mac OS X v10.2 and later. Controls, windows, and menus are subclassed from the HIObject base class or the HIView subclass; the HIObject object acts as the data store (instance), and Carbon event handlers are the methods. The standard toolbox managers (Window Manager, Control Manager, and so on) work seamlessly with this new model, while its object-oriented nature makes it much easier to create custom user interface elements.

Document Descriptions
On Off
Display

Sorted by
Title
Sort by
Date
AddNibToNav (HTML) (DMG) (ZIP)
Shows how to create a custom area, instantiated from a nib file, in a Navigation Services dialog.
2004-01-22
BasicDataBrowser (HTML) (DMG) (ZIP)
Shows how to create a basic, functional data browser.
2003-05-08
CalendarView (HTML) (DMG) (ZIP)
Shows how to subclass HIView using C, as well as drawing and hit testing.
2003-01-30
CarbonCocoa_PictureCursor (HTML) (DMG) (ZIP)
Demonstrates how to use NSCursor from a Carbon based application.
2007-01-12
CarbonCocoaCoreImageTab (HTML) (DMG) (ZIP)
Carbon-based application creates a Cocoa-based web window which used CoreImage filters to transition between tabbed WebViews
2006-07-25
CarbonMDEF (HTML) (DMG) (ZIP)
A Mac OS X-compatible, Appearance-savvy sample menu definition function (MDEF).
2003-01-30
CarbonTransparentWindow (HTML) (DMG) (ZIP)
Shows how to handle window transparency for compositing, non-compositing, and custom HIView-based Carbon windows.
2005-08-10
ClockView (HTML) (DMG) (ZIP)
An HIView sample that uses the HIFramework to implement a scalable analog clock.
2003-01-30
ColoredCheckBox (HTML) (DMG) (ZIP)
Demonstrates how to create a colored check box on a gray window backgrounds.
2003-01-30
ColorSwatchView (HTML) (DMG) (ZIP)
Implements a color well control as an HIView using HIFramework C++ Carbon Event wrapper classes.
2003-01-30
ComboBoxPrefs (HTML) (DMG) (ZIP)
Use CFPrefs to store URLs to images for use in a browser style combo box.
2005-10-04
ControlBackground (HTML) (DMG) (ZIP)
Shows how to affect the background color of a control when drawing it.
2003-01-30
Custom_HIView_Tutorial (HTML) (DMG) (ZIP)
Tutorial presenting a step-by-step custom HIView development. All steps are documented and provided as standalone projects.
2005-06-01
CustomWindow (HTML) (DMG) (ZIP)
Demonstrates how to create a custom window in Mac OS X.
2003-01-30
CustomWindowWidget (HTML) (DMG) (ZIP)
Demonstrates two ways of adding a custom window widget to the window frame of a standard document window.
2003-01-30
DialogsToHIViews (HTML) (DMG) (ZIP)
Shows how to convert from an old-style resource-based dialog to a modern nib-based window with HIViews.
2005-08-24
DTSCarbonShell (HTML) (DMG) (ZIP)
Provides a modern Mac OS X Carbon Application Skeleton
2007-09-20
FloatingWindow (HTML) (DMG) (ZIP)
Demonstrates that floating windows are very easy to implement on Mac OS X using Nib files.
2003-10-24
GetDragHiliteColor (HTML) (DMG) (ZIP)
Shows how to obtain the color that Drag Manager uses to hilite regions when calling ShowDragHilite.
2003-01-30
GrabBag (HTML) (DMG) (ZIP)
Demonstrates variety of techniques and features of Carbon. DataBrowser , PBCatalogSearchAsync, Overlay windows, Tab controls, more...
2003-07-29
HexEditorView (HTML) (DMG) (ZIP)
HIView subclass which implements a hex editor similar to those found in resource editors.
2003-01-30
HICustomLeftRightSwitch (HTML) (DMG) (ZIP)
Illustrates how to create a custom left/right switch using the HIView functions introduced in Mac OS X 10.2.
2003-02-06
HICustomPushButton (HTML) (DMG) (ZIP)
Illustrates how to create a simple custom push button using the HIView functions introduced in Mac OS X 10.2.
2005-10-17
HideMenuBar (HTML) (DMG) (ZIP)
Shows how to hide the menu bar.
2003-01-30
HIDoubleSlider (HTML) (DMG) (ZIP)
Illustrates how to create a double slider using the Appearance and HIView functions introduced in Mac OS X 10.2.
2003-10-27
HIEmbedder (HTML) (DMG) (ZIP)
Shows how to write a custom embedding HIView which can scroll if set in an HIScrollView.
2003-11-13
HIFleetingControls (HTML) (DMG) (ZIP)
Implements fleeting controls such as seen in QuickTime Player full screen mode or iPhoto slideshow
2007-05-08
HIFramework (HTML) (DMG) (ZIP)
Contains C++ classes which are used by other HIToolbox sample code releases.
2003-02-06
HIObjectThreadController (HTML) (DMG) (ZIP)
Shows how threads can interact with the User Interface handled by the main thread of the application.
2005-08-10
HIScrollingTextBox (HTML) (DMG) (ZIP)
Offers replacement custom HIViews for the Scrolling TextBox control which does not work in compositing windows.
2003-11-06
HISimpleList (HTML) (DMG) (ZIP)
Illustrates how to create a simple list using the HIView APIs introduced in Mac OS X 10.2.
2006-03-03
HITextShowcase (HTML) (DMG) (ZIP)
Illustrates some of the different text-related controls, non-controls, and HIViews that are available in Mac OS X 10.3.
2003-10-27
HITextViewDemo (HTML) (DMG) (ZIP)
Overview of basic HITextView functionality, including Tiger's new font & spelling panel support.
2005-06-01
HITextViewShowcase (HTML) (DMG) (ZIP)
Shows how to create a HITextView using Interface Builder and using programming functions only.
2003-10-30
HIToolboxSOU-Delegates (HTML) (DMG) (ZIP)
Shows how to use the HIObject Delegate API.
2006-08-04
HIToolboxSOU-MenuItemViews (HTML) (DMG) (ZIP)
Shows how to use the Menu Item View API.
2006-08-04
HIView-NSView (HTML) (DMG) (ZIP)
Demonstrates how to embed an NSView within an HIView in a Carbon window.
2007-05-29
HIViewTest (HTML) (DMG) (ZIP)
An HIView with rudimentary drawing and hit testing.
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.
2003-01-30
Icon Play (HTML) (DMG) (ZIP)
Demonstrates the use of icon utilities and popup control cdef in a program using modal dialogs.
2003-01-30
IconUtilCheck (HTML) (DMG) (ZIP)
Shows how to determine whether the Icon Utilities are available.
2003-01-30
ImageBrowserView (HTML) (DMG) (ZIP)
Implementing a simple HIView subclass
2005-06-01
ImageMapView (HTML) (DMG) (ZIP)
Demonstrates how to add Accessibility to a complex custom HIView and the related parts of an application.
2005-10-17
LittleArrowsShowcase (HTML) (DMG) (ZIP)
How to increment and decrement the LittleArrows value when the user clicks on the up and down buttons.
2006-11-09
MenuViews (HTML) (DMG) (ZIP)
Demonstrates a variety of interesting uses of HIView-based menus in Mac OS X 10.3.
2003-10-24
MLTE_CustomScrolling (HTML) (DMG) (ZIP)
Shows how to implement MLTE's custom scrolling functionality
2004-10-15
MoreIsBetter (HTML) (DMG) (ZIP)
Library providing indispensable wrapers and workarounds for many areas of Mac OS programming.
2003-10-27
Password (HTML) (DMG) (ZIP)
Deprecated - Illustrates three different ways to implement password fields in dialogs.
2003-01-30
PopUpMenuWithCurFont (HTML) (DMG) (ZIP)
Deprecated - Demonstrates what must be done to control the font used by MDEF 0 during PopUpMenuSelect.
2003-01-30
QISA (HTML) (DMG) (ZIP)
Demonstrates the basics of writing an Internet setup assistant for traditional Mac OS and Mac OS X.
2003-05-15
RecentItems (HTML) (DMG) (ZIP)
Implements "Recent items" menu(s)
2006-10-09
SampleCMPlugIn (HTML) (DMG) (ZIP)
A contextual menu plugIn for Mac OS X.
2006-10-09
ScrollAndZoom (HTML) (DMG) (ZIP)
An illustration of the use of the Context Transformation Matrix (CTM) for zooming and scrolling a HIView.
2005-08-10
SetWindBackColor (HTML) (DMG) (ZIP)
Demonstrates how to programmatically set the background color of a window without flicker without the Appearance Manager.
2003-01-30
Sheets (HTML) (DMG) (ZIP)
Demonstrates how to create a sheet both in code and through the use of a Nib file.
2003-10-24
SimpleTabControl (HTML) (DMG) (ZIP)
Demonstrates how to use a simple tabbed pane window. This control is often used in preferences.
2003-02-20
SplitView (HTML) (DMG) (ZIP)
An HIView sample that uses the HIFramework and implements a scalable split view.
2003-01-30
StarMenu (HTML) (DMG) (ZIP)
Shows how to create a Custom Star Shape menu using the new HIMenuView class.
2007-05-24
TabsShowcase (HTML) (DMG) (ZIP)
Shows how to instantiate and use the Tab control both programmatically and from a nib file.
2005-10-28
TickerView (HTML) (DMG) (ZIP)
HIView subclass which implements a scrolling, live stock ticker.
2003-01-30
Tiler (HTML) (DMG) (ZIP)
Modify your applications tile icon within the Mac OS X dock by using both QuickDraw and Quartz
2003-10-24
TypeServicesForUnicode (HTML) (DMG) (ZIP)
Shows how to use various ATSUI functions and features going from simple to very complex.
2005-08-10
URLTextView (HTML) (DMG) (ZIP)
An HIView subclass which uses LaunchServices to open the URL attached to the view.
2003-01-30
WindowFun (HTML) (DMG) (ZIP)
Create window layers and groups. Drawing transparent lines. How to display the "Poof" the toolbar uses.
2005-08-24