Many of the new calls are Carbon-only. Flagged them as such.
diff --git a/Mac/Modules/ctl/_Ctlmodule.c b/Mac/Modules/ctl/_Ctlmodule.c
index 70bdb3e..68a31ca 100644
--- a/Mac/Modules/ctl/_Ctlmodule.c
+++ b/Mac/Modules/ctl/_Ctlmodule.c
@@ -596,6 +596,8 @@
 	return _res;
 }
 
+#if TARGET_API_MAC_CARBON
+
 static PyObject *CtlObj_SetControlTitleWithCFString(ControlObject *_self, PyObject *_args)
 {
 	PyObject *_res = NULL;
@@ -614,6 +616,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_CopyControlTitleAsCFString(ControlObject *_self, PyObject *_args)
 {
@@ -632,6 +637,7 @@
 	                     CFStringRefObj_New, outString);
 	return _res;
 }
+#endif
 
 static PyObject *CtlObj_GetControlValue(ControlObject *_self, PyObject *_args)
 {
@@ -915,6 +921,8 @@
 }
 #endif
 
+#if TARGET_API_MAC_CARBON
+
 static PyObject *CtlObj_SetControlCommandID(ControlObject *_self, PyObject *_args)
 {
 	PyObject *_res = NULL;
@@ -933,6 +941,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetControlCommandID(ControlObject *_self, PyObject *_args)
 {
@@ -951,6 +962,7 @@
 	                     outCommandID);
 	return _res;
 }
+#endif
 
 static PyObject *CtlObj_RemoveControlProperty(ControlObject *_self, PyObject *_args)
 {
@@ -1749,6 +1761,8 @@
 	return _res;
 }
 
+#if TARGET_API_MAC_CARBON
+
 static PyObject *CtlObj_GetDataBrowserViewStyle(ControlObject *_self, PyObject *_args)
 {
 	PyObject *_res = NULL;
@@ -1766,6 +1780,9 @@
 	                     PyMac_BuildOSType, style);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_SetDataBrowserViewStyle(ControlObject *_self, PyObject *_args)
 {
@@ -1785,6 +1802,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_EnableDataBrowserEditCommand(ControlObject *_self, PyObject *_args)
 {
@@ -1803,6 +1823,9 @@
 	                     _rv);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_ExecuteDataBrowserEditCommand(ControlObject *_self, PyObject *_args)
 {
@@ -1822,6 +1845,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserSelectionAnchor(ControlObject *_self, PyObject *_args)
 {
@@ -1843,6 +1869,9 @@
 	                     last);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_MoveDataBrowserSelectionAnchor(ControlObject *_self, PyObject *_args)
 {
@@ -1865,6 +1894,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_OpenDataBrowserContainer(ControlObject *_self, PyObject *_args)
 {
@@ -1884,6 +1916,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_CloseDataBrowserContainer(ControlObject *_self, PyObject *_args)
 {
@@ -1903,6 +1938,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_SortDataBrowserContainer(ControlObject *_self, PyObject *_args)
 {
@@ -1925,6 +1963,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserItems(ControlObject *_self, PyObject *_args)
 {
@@ -1953,6 +1994,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserItemCount(ControlObject *_self, PyObject *_args)
 {
@@ -1980,6 +2024,9 @@
 	                     numItems);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_IsDataBrowserItemSelected(ControlObject *_self, PyObject *_args)
 {
@@ -1998,6 +2045,9 @@
 	                     _rv);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserItemState(ControlObject *_self, PyObject *_args)
 {
@@ -2019,6 +2069,9 @@
 	                     state);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_RevealDataBrowserItem(ControlObject *_self, PyObject *_args)
 {
@@ -2044,6 +2097,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_SetDataBrowserActiveItems(ControlObject *_self, PyObject *_args)
 {
@@ -2063,6 +2119,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserActiveItems(ControlObject *_self, PyObject *_args)
 {
@@ -2081,6 +2140,9 @@
 	                     active);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_SetDataBrowserScrollBarInset(ControlObject *_self, PyObject *_args)
 {
@@ -2099,6 +2161,9 @@
 	                     PyMac_BuildRect, &insetRect);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserScrollBarInset(ControlObject *_self, PyObject *_args)
 {
@@ -2117,6 +2182,9 @@
 	                     PyMac_BuildRect, &insetRect);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_SetDataBrowserTarget(ControlObject *_self, PyObject *_args)
 {
@@ -2136,6 +2204,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserTarget(ControlObject *_self, PyObject *_args)
 {
@@ -2154,6 +2225,9 @@
 	                     target);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_SetDataBrowserSortOrder(ControlObject *_self, PyObject *_args)
 {
@@ -2173,6 +2247,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserSortOrder(ControlObject *_self, PyObject *_args)
 {
@@ -2191,6 +2268,9 @@
 	                     order);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_SetDataBrowserScrollPosition(ControlObject *_self, PyObject *_args)
 {
@@ -2213,6 +2293,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserScrollPosition(ControlObject *_self, PyObject *_args)
 {
@@ -2234,6 +2317,9 @@
 	                     left);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_SetDataBrowserHasScrollBars(ControlObject *_self, PyObject *_args)
 {
@@ -2256,6 +2342,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserHasScrollBars(ControlObject *_self, PyObject *_args)
 {
@@ -2277,6 +2366,9 @@
 	                     vert);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_SetDataBrowserSortProperty(ControlObject *_self, PyObject *_args)
 {
@@ -2296,6 +2388,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserSortProperty(ControlObject *_self, PyObject *_args)
 {
@@ -2314,6 +2409,9 @@
 	                     property);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_SetDataBrowserSelectionFlags(ControlObject *_self, PyObject *_args)
 {
@@ -2333,6 +2431,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserSelectionFlags(ControlObject *_self, PyObject *_args)
 {
@@ -2351,6 +2452,9 @@
 	                     selectionFlags);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_SetDataBrowserPropertyFlags(ControlObject *_self, PyObject *_args)
 {
@@ -2373,6 +2477,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserPropertyFlags(ControlObject *_self, PyObject *_args)
 {
@@ -2394,6 +2501,9 @@
 	                     flags);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_SetDataBrowserEditText(ControlObject *_self, PyObject *_args)
 {
@@ -2413,6 +2523,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserEditText(ControlObject *_self, PyObject *_args)
 {
@@ -2432,6 +2545,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_SetDataBrowserEditItem(ControlObject *_self, PyObject *_args)
 {
@@ -2454,6 +2570,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserEditItem(ControlObject *_self, PyObject *_args)
 {
@@ -2475,6 +2594,9 @@
 	                     property);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserItemPartBounds(ControlObject *_self, PyObject *_args)
 {
@@ -2502,6 +2624,9 @@
 	                     PyMac_BuildRect, &bounds);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_RemoveDataBrowserTableViewColumn(ControlObject *_self, PyObject *_args)
 {
@@ -2521,6 +2646,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserTableViewColumnCount(ControlObject *_self, PyObject *_args)
 {
@@ -2539,6 +2667,9 @@
 	                     numColumns);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_SetDataBrowserTableViewHiliteStyle(ControlObject *_self, PyObject *_args)
 {
@@ -2558,6 +2689,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserTableViewHiliteStyle(ControlObject *_self, PyObject *_args)
 {
@@ -2576,6 +2710,9 @@
 	                     hiliteStyle);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_SetDataBrowserTableViewRowHeight(ControlObject *_self, PyObject *_args)
 {
@@ -2595,6 +2732,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserTableViewRowHeight(ControlObject *_self, PyObject *_args)
 {
@@ -2613,6 +2753,9 @@
 	                     height);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_SetDataBrowserTableViewColumnWidth(ControlObject *_self, PyObject *_args)
 {
@@ -2632,6 +2775,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserTableViewColumnWidth(ControlObject *_self, PyObject *_args)
 {
@@ -2650,6 +2796,9 @@
 	                     width);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_SetDataBrowserTableViewItemRowHeight(ControlObject *_self, PyObject *_args)
 {
@@ -2672,6 +2821,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserTableViewItemRowHeight(ControlObject *_self, PyObject *_args)
 {
@@ -2693,6 +2845,9 @@
 	                     height);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_SetDataBrowserTableViewNamedColumnWidth(ControlObject *_self, PyObject *_args)
 {
@@ -2715,6 +2870,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserTableViewNamedColumnWidth(ControlObject *_self, PyObject *_args)
 {
@@ -2736,6 +2894,9 @@
 	                     width);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_SetDataBrowserTableViewGeometry(ControlObject *_self, PyObject *_args)
 {
@@ -2758,6 +2919,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserTableViewGeometry(ControlObject *_self, PyObject *_args)
 {
@@ -2779,6 +2943,9 @@
 	                     variableHeightRows);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserTableViewItemID(ControlObject *_self, PyObject *_args)
 {
@@ -2800,6 +2967,9 @@
 	                     item);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_SetDataBrowserTableViewItemRow(ControlObject *_self, PyObject *_args)
 {
@@ -2822,6 +2992,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserTableViewItemRow(ControlObject *_self, PyObject *_args)
 {
@@ -2843,6 +3016,9 @@
 	                     row);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_SetDataBrowserTableViewColumnPosition(ControlObject *_self, PyObject *_args)
 {
@@ -2865,6 +3041,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserTableViewColumnPosition(ControlObject *_self, PyObject *_args)
 {
@@ -2886,6 +3065,9 @@
 	                     position);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserTableViewColumnProperty(ControlObject *_self, PyObject *_args)
 {
@@ -2907,6 +3089,9 @@
 	                     property);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_AutoSizeDataBrowserListViewColumns(ControlObject *_self, PyObject *_args)
 {
@@ -2923,6 +3108,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_SetDataBrowserListViewHeaderBtnHeight(ControlObject *_self, PyObject *_args)
 {
@@ -2942,6 +3130,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserListViewHeaderBtnHeight(ControlObject *_self, PyObject *_args)
 {
@@ -2960,6 +3151,9 @@
 	                     height);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_SetDataBrowserListViewUsePlainBackground(ControlObject *_self, PyObject *_args)
 {
@@ -2979,6 +3173,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserListViewUsePlainBackground(ControlObject *_self, PyObject *_args)
 {
@@ -2997,6 +3194,9 @@
 	                     usePlainBackground);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_SetDataBrowserListViewDisclosureColumn(ControlObject *_self, PyObject *_args)
 {
@@ -3019,6 +3219,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserListViewDisclosureColumn(ControlObject *_self, PyObject *_args)
 {
@@ -3040,6 +3243,9 @@
 	                     expandableRows);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserColumnViewPath(ControlObject *_self, PyObject *_args)
 {
@@ -3059,6 +3265,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserColumnViewPathLength(ControlObject *_self, PyObject *_args)
 {
@@ -3077,6 +3286,9 @@
 	                     pathLength);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_SetDataBrowserColumnViewDisplayType(ControlObject *_self, PyObject *_args)
 {
@@ -3096,6 +3308,9 @@
 	_res = Py_None;
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *CtlObj_GetDataBrowserColumnViewDisplayType(ControlObject *_self, PyObject *_args)
 {
@@ -3114,6 +3329,7 @@
 	                     PyMac_BuildOSType, propertyType);
 	return _res;
 }
+#endif
 
 static PyObject *CtlObj_as_Resource(ControlObject *_self, PyObject *_args)
 {
@@ -3505,10 +3721,16 @@
 	 "(Str255 title) -> None"},
 	{"GetControlTitle", (PyCFunction)CtlObj_GetControlTitle, 1,
 	 "() -> (Str255 title)"},
+
+#if TARGET_API_MAC_CARBON
 	{"SetControlTitleWithCFString", (PyCFunction)CtlObj_SetControlTitleWithCFString, 1,
 	 "(CFStringRef inString) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"CopyControlTitleAsCFString", (PyCFunction)CtlObj_CopyControlTitleAsCFString, 1,
 	 "() -> (CFStringRef outString)"},
+#endif
 	{"GetControlValue", (PyCFunction)CtlObj_GetControlValue, 1,
 	 "() -> (SInt16 _rv)"},
 	{"SetControlValue", (PyCFunction)CtlObj_SetControlValue, 1,
@@ -3549,10 +3771,16 @@
 	{"GetControlID", (PyCFunction)CtlObj_GetControlID, 1,
 	 "() -> (ControlID outID)"},
 #endif
+
+#if TARGET_API_MAC_CARBON
 	{"SetControlCommandID", (PyCFunction)CtlObj_SetControlCommandID, 1,
 	 "(UInt32 inCommandID) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetControlCommandID", (PyCFunction)CtlObj_GetControlCommandID, 1,
 	 "() -> (UInt32 outCommandID)"},
+#endif
 	{"RemoveControlProperty", (PyCFunction)CtlObj_RemoveControlProperty, 1,
 	 "(OSType propertyCreator, OSType propertyTag) -> None"},
 
@@ -3690,142 +3918,346 @@
 	 "(SInt16 inTabToHilite, Boolean inEnabled) -> None"},
 	{"SetImageWellTransform", (PyCFunction)CtlObj_SetImageWellTransform, 1,
 	 "(IconTransformType inTransform) -> None"},
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserViewStyle", (PyCFunction)CtlObj_GetDataBrowserViewStyle, 1,
 	 "() -> (OSType style)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"SetDataBrowserViewStyle", (PyCFunction)CtlObj_SetDataBrowserViewStyle, 1,
 	 "(OSType style) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"EnableDataBrowserEditCommand", (PyCFunction)CtlObj_EnableDataBrowserEditCommand, 1,
 	 "(UInt32 command) -> (Boolean _rv)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"ExecuteDataBrowserEditCommand", (PyCFunction)CtlObj_ExecuteDataBrowserEditCommand, 1,
 	 "(UInt32 command) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserSelectionAnchor", (PyCFunction)CtlObj_GetDataBrowserSelectionAnchor, 1,
 	 "() -> (UInt32 first, UInt32 last)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"MoveDataBrowserSelectionAnchor", (PyCFunction)CtlObj_MoveDataBrowserSelectionAnchor, 1,
 	 "(UInt32 direction, Boolean extendSelection) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"OpenDataBrowserContainer", (PyCFunction)CtlObj_OpenDataBrowserContainer, 1,
 	 "(UInt32 container) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"CloseDataBrowserContainer", (PyCFunction)CtlObj_CloseDataBrowserContainer, 1,
 	 "(UInt32 container) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"SortDataBrowserContainer", (PyCFunction)CtlObj_SortDataBrowserContainer, 1,
 	 "(UInt32 container, Boolean sortChildren) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserItems", (PyCFunction)CtlObj_GetDataBrowserItems, 1,
 	 "(UInt32 container, Boolean recurse, UInt32 state, Handle items) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserItemCount", (PyCFunction)CtlObj_GetDataBrowserItemCount, 1,
 	 "(UInt32 container, Boolean recurse, UInt32 state) -> (UInt32 numItems)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"IsDataBrowserItemSelected", (PyCFunction)CtlObj_IsDataBrowserItemSelected, 1,
 	 "(UInt32 item) -> (Boolean _rv)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserItemState", (PyCFunction)CtlObj_GetDataBrowserItemState, 1,
 	 "(UInt32 item) -> (UInt32 state)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"RevealDataBrowserItem", (PyCFunction)CtlObj_RevealDataBrowserItem, 1,
 	 "(UInt32 item, UInt32 propertyID, UInt8 options) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"SetDataBrowserActiveItems", (PyCFunction)CtlObj_SetDataBrowserActiveItems, 1,
 	 "(Boolean active) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserActiveItems", (PyCFunction)CtlObj_GetDataBrowserActiveItems, 1,
 	 "() -> (Boolean active)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"SetDataBrowserScrollBarInset", (PyCFunction)CtlObj_SetDataBrowserScrollBarInset, 1,
 	 "() -> (Rect insetRect)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserScrollBarInset", (PyCFunction)CtlObj_GetDataBrowserScrollBarInset, 1,
 	 "() -> (Rect insetRect)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"SetDataBrowserTarget", (PyCFunction)CtlObj_SetDataBrowserTarget, 1,
 	 "(UInt32 target) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserTarget", (PyCFunction)CtlObj_GetDataBrowserTarget, 1,
 	 "() -> (UInt32 target)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"SetDataBrowserSortOrder", (PyCFunction)CtlObj_SetDataBrowserSortOrder, 1,
 	 "(UInt16 order) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserSortOrder", (PyCFunction)CtlObj_GetDataBrowserSortOrder, 1,
 	 "() -> (UInt16 order)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"SetDataBrowserScrollPosition", (PyCFunction)CtlObj_SetDataBrowserScrollPosition, 1,
 	 "(UInt32 top, UInt32 left) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserScrollPosition", (PyCFunction)CtlObj_GetDataBrowserScrollPosition, 1,
 	 "() -> (UInt32 top, UInt32 left)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"SetDataBrowserHasScrollBars", (PyCFunction)CtlObj_SetDataBrowserHasScrollBars, 1,
 	 "(Boolean horiz, Boolean vert) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserHasScrollBars", (PyCFunction)CtlObj_GetDataBrowserHasScrollBars, 1,
 	 "() -> (Boolean horiz, Boolean vert)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"SetDataBrowserSortProperty", (PyCFunction)CtlObj_SetDataBrowserSortProperty, 1,
 	 "(UInt32 property) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserSortProperty", (PyCFunction)CtlObj_GetDataBrowserSortProperty, 1,
 	 "() -> (UInt32 property)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"SetDataBrowserSelectionFlags", (PyCFunction)CtlObj_SetDataBrowserSelectionFlags, 1,
 	 "(UInt32 selectionFlags) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserSelectionFlags", (PyCFunction)CtlObj_GetDataBrowserSelectionFlags, 1,
 	 "() -> (UInt32 selectionFlags)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"SetDataBrowserPropertyFlags", (PyCFunction)CtlObj_SetDataBrowserPropertyFlags, 1,
 	 "(UInt32 property, UInt32 flags) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserPropertyFlags", (PyCFunction)CtlObj_GetDataBrowserPropertyFlags, 1,
 	 "(UInt32 property) -> (UInt32 flags)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"SetDataBrowserEditText", (PyCFunction)CtlObj_SetDataBrowserEditText, 1,
 	 "(CFStringRef text) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserEditText", (PyCFunction)CtlObj_GetDataBrowserEditText, 1,
 	 "(CFMutableStringRef text) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"SetDataBrowserEditItem", (PyCFunction)CtlObj_SetDataBrowserEditItem, 1,
 	 "(UInt32 item, UInt32 property) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserEditItem", (PyCFunction)CtlObj_GetDataBrowserEditItem, 1,
 	 "() -> (UInt32 item, UInt32 property)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserItemPartBounds", (PyCFunction)CtlObj_GetDataBrowserItemPartBounds, 1,
 	 "(UInt32 item, UInt32 property, OSType part) -> (Rect bounds)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"RemoveDataBrowserTableViewColumn", (PyCFunction)CtlObj_RemoveDataBrowserTableViewColumn, 1,
 	 "(UInt32 column) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserTableViewColumnCount", (PyCFunction)CtlObj_GetDataBrowserTableViewColumnCount, 1,
 	 "() -> (UInt32 numColumns)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"SetDataBrowserTableViewHiliteStyle", (PyCFunction)CtlObj_SetDataBrowserTableViewHiliteStyle, 1,
 	 "(UInt32 hiliteStyle) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserTableViewHiliteStyle", (PyCFunction)CtlObj_GetDataBrowserTableViewHiliteStyle, 1,
 	 "() -> (UInt32 hiliteStyle)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"SetDataBrowserTableViewRowHeight", (PyCFunction)CtlObj_SetDataBrowserTableViewRowHeight, 1,
 	 "(UInt16 height) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserTableViewRowHeight", (PyCFunction)CtlObj_GetDataBrowserTableViewRowHeight, 1,
 	 "() -> (UInt16 height)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"SetDataBrowserTableViewColumnWidth", (PyCFunction)CtlObj_SetDataBrowserTableViewColumnWidth, 1,
 	 "(UInt16 width) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserTableViewColumnWidth", (PyCFunction)CtlObj_GetDataBrowserTableViewColumnWidth, 1,
 	 "() -> (UInt16 width)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"SetDataBrowserTableViewItemRowHeight", (PyCFunction)CtlObj_SetDataBrowserTableViewItemRowHeight, 1,
 	 "(UInt32 item, UInt16 height) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserTableViewItemRowHeight", (PyCFunction)CtlObj_GetDataBrowserTableViewItemRowHeight, 1,
 	 "(UInt32 item) -> (UInt16 height)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"SetDataBrowserTableViewNamedColumnWidth", (PyCFunction)CtlObj_SetDataBrowserTableViewNamedColumnWidth, 1,
 	 "(UInt32 column, UInt16 width) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserTableViewNamedColumnWidth", (PyCFunction)CtlObj_GetDataBrowserTableViewNamedColumnWidth, 1,
 	 "(UInt32 column) -> (UInt16 width)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"SetDataBrowserTableViewGeometry", (PyCFunction)CtlObj_SetDataBrowserTableViewGeometry, 1,
 	 "(Boolean variableWidthColumns, Boolean variableHeightRows) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserTableViewGeometry", (PyCFunction)CtlObj_GetDataBrowserTableViewGeometry, 1,
 	 "() -> (Boolean variableWidthColumns, Boolean variableHeightRows)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserTableViewItemID", (PyCFunction)CtlObj_GetDataBrowserTableViewItemID, 1,
 	 "(UInt32 row) -> (UInt32 item)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"SetDataBrowserTableViewItemRow", (PyCFunction)CtlObj_SetDataBrowserTableViewItemRow, 1,
 	 "(UInt32 item, UInt32 row) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserTableViewItemRow", (PyCFunction)CtlObj_GetDataBrowserTableViewItemRow, 1,
 	 "(UInt32 item) -> (UInt32 row)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"SetDataBrowserTableViewColumnPosition", (PyCFunction)CtlObj_SetDataBrowserTableViewColumnPosition, 1,
 	 "(UInt32 column, UInt32 position) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserTableViewColumnPosition", (PyCFunction)CtlObj_GetDataBrowserTableViewColumnPosition, 1,
 	 "(UInt32 column) -> (UInt32 position)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserTableViewColumnProperty", (PyCFunction)CtlObj_GetDataBrowserTableViewColumnProperty, 1,
 	 "(UInt32 column) -> (UInt32 property)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"AutoSizeDataBrowserListViewColumns", (PyCFunction)CtlObj_AutoSizeDataBrowserListViewColumns, 1,
 	 "() -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"SetDataBrowserListViewHeaderBtnHeight", (PyCFunction)CtlObj_SetDataBrowserListViewHeaderBtnHeight, 1,
 	 "(UInt16 height) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserListViewHeaderBtnHeight", (PyCFunction)CtlObj_GetDataBrowserListViewHeaderBtnHeight, 1,
 	 "() -> (UInt16 height)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"SetDataBrowserListViewUsePlainBackground", (PyCFunction)CtlObj_SetDataBrowserListViewUsePlainBackground, 1,
 	 "(Boolean usePlainBackground) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserListViewUsePlainBackground", (PyCFunction)CtlObj_GetDataBrowserListViewUsePlainBackground, 1,
 	 "() -> (Boolean usePlainBackground)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"SetDataBrowserListViewDisclosureColumn", (PyCFunction)CtlObj_SetDataBrowserListViewDisclosureColumn, 1,
 	 "(UInt32 column, Boolean expandableRows) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserListViewDisclosureColumn", (PyCFunction)CtlObj_GetDataBrowserListViewDisclosureColumn, 1,
 	 "() -> (UInt32 column, Boolean expandableRows)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserColumnViewPath", (PyCFunction)CtlObj_GetDataBrowserColumnViewPath, 1,
 	 "(Handle path) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserColumnViewPathLength", (PyCFunction)CtlObj_GetDataBrowserColumnViewPathLength, 1,
 	 "() -> (UInt32 pathLength)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"SetDataBrowserColumnViewDisplayType", (PyCFunction)CtlObj_SetDataBrowserColumnViewDisplayType, 1,
 	 "(OSType propertyType) -> None"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"GetDataBrowserColumnViewDisplayType", (PyCFunction)CtlObj_GetDataBrowserColumnViewDisplayType, 1,
 	 "() -> (OSType propertyType)"},
+#endif
 	{"as_Resource", (PyCFunction)CtlObj_as_Resource, 1,
 	 "() -> (Handle _rv)"},
 	{"GetControlRect", (PyCFunction)CtlObj_GetControlRect, 1,
@@ -4283,6 +4715,8 @@
 }
 #endif
 
+#if TARGET_API_MAC_CARBON
+
 static PyObject *Ctl_CreateDisclosureTriangleControl(PyObject *_self, PyObject *_args)
 {
 	PyObject *_res = NULL;
@@ -4320,6 +4754,9 @@
 	                     CtlObj_New, outControl);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *Ctl_CreateProgressBarControl(PyObject *_self, PyObject *_args)
 {
@@ -4355,6 +4792,9 @@
 	                     CtlObj_New, outControl);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *Ctl_CreateLittleArrowsControl(PyObject *_self, PyObject *_args)
 {
@@ -4390,6 +4830,9 @@
 	                     CtlObj_New, outControl);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *Ctl_CreateChasingArrowsControl(PyObject *_self, PyObject *_args)
 {
@@ -4413,6 +4856,9 @@
 	                     CtlObj_New, outControl);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *Ctl_CreateSeparatorControl(PyObject *_self, PyObject *_args)
 {
@@ -4436,6 +4882,9 @@
 	                     CtlObj_New, outControl);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *Ctl_CreateGroupBoxControl(PyObject *_self, PyObject *_args)
 {
@@ -4465,6 +4914,9 @@
 	                     CtlObj_New, outControl);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *Ctl_CreateCheckGroupBoxControl(PyObject *_self, PyObject *_args)
 {
@@ -4500,6 +4952,9 @@
 	                     CtlObj_New, outControl);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *Ctl_CreatePopupGroupBoxControl(PyObject *_self, PyObject *_args)
 {
@@ -4544,6 +4999,9 @@
 	                     CtlObj_New, outControl);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *Ctl_CreatePopupArrowControl(PyObject *_self, PyObject *_args)
 {
@@ -4573,6 +5031,9 @@
 	                     CtlObj_New, outControl);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *Ctl_CreatePlacardControl(PyObject *_self, PyObject *_args)
 {
@@ -4596,6 +5057,9 @@
 	                     CtlObj_New, outControl);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *Ctl_CreateClockControl(PyObject *_self, PyObject *_args)
 {
@@ -4625,6 +5089,9 @@
 	                     CtlObj_New, outControl);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *Ctl_CreateUserPaneControl(PyObject *_self, PyObject *_args)
 {
@@ -4651,6 +5118,9 @@
 	                     CtlObj_New, outControl);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *Ctl_CreateEditTextControl(PyObject *_self, PyObject *_args)
 {
@@ -4686,6 +5156,9 @@
 	                     CtlObj_New, outControl);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *Ctl_CreateStaticTextControl(PyObject *_self, PyObject *_args)
 {
@@ -4715,6 +5188,9 @@
 	                     CtlObj_New, outControl);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *Ctl_CreateWindowHeaderControl(PyObject *_self, PyObject *_args)
 {
@@ -4741,6 +5217,9 @@
 	                     CtlObj_New, outControl);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *Ctl_CreatePushButtonControl(PyObject *_self, PyObject *_args)
 {
@@ -4767,6 +5246,9 @@
 	                     CtlObj_New, outControl);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *Ctl_CreateRadioButtonControl(PyObject *_self, PyObject *_args)
 {
@@ -4799,6 +5281,9 @@
 	                     CtlObj_New, outControl);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *Ctl_CreateCheckBoxControl(PyObject *_self, PyObject *_args)
 {
@@ -4831,6 +5316,9 @@
 	                     CtlObj_New, outControl);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *Ctl_CreatePopupButtonControl(PyObject *_self, PyObject *_args)
 {
@@ -4872,6 +5360,9 @@
 	                     CtlObj_New, outControl);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *Ctl_CreateRadioGroupControl(PyObject *_self, PyObject *_args)
 {
@@ -4895,6 +5386,9 @@
 	                     CtlObj_New, outControl);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *Ctl_CreateScrollingTextBoxControl(PyObject *_self, PyObject *_args)
 {
@@ -4933,6 +5427,9 @@
 	                     CtlObj_New, outControl);
 	return _res;
 }
+#endif
+
+#if TARGET_API_MAC_CARBON
 
 static PyObject *Ctl_CreateDataBrowserControl(PyObject *_self, PyObject *_args)
 {
@@ -4959,6 +5456,7 @@
 	                     CtlObj_New, outControl);
 	return _res;
 }
+#endif
 
 static PyObject *Ctl_FindControlUnderMouse(PyObject *_self, PyObject *_args)
 {
@@ -5044,50 +5542,116 @@
 	{"IsAutomaticControlDragTrackingEnabledForWindow", (PyCFunction)Ctl_IsAutomaticControlDragTrackingEnabledForWindow, 1,
 	 "(WindowPtr theWindow) -> (Boolean tracks)"},
 #endif
+
+#if TARGET_API_MAC_CARBON
 	{"CreateDisclosureTriangleControl", (PyCFunction)Ctl_CreateDisclosureTriangleControl, 1,
 	 "(WindowPtr window, Rect boundsRect, UInt16 orientation, CFStringRef title, SInt32 initialValue, Boolean drawTitle, Boolean autoToggles) -> (ControlHandle outControl)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"CreateProgressBarControl", (PyCFunction)Ctl_CreateProgressBarControl, 1,
 	 "(WindowPtr window, Rect boundsRect, SInt32 value, SInt32 minimum, SInt32 maximum, Boolean indeterminate) -> (ControlHandle outControl)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"CreateLittleArrowsControl", (PyCFunction)Ctl_CreateLittleArrowsControl, 1,
 	 "(WindowPtr window, Rect boundsRect, SInt32 value, SInt32 minimum, SInt32 maximum, SInt32 increment) -> (ControlHandle outControl)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"CreateChasingArrowsControl", (PyCFunction)Ctl_CreateChasingArrowsControl, 1,
 	 "(WindowPtr window, Rect boundsRect) -> (ControlHandle outControl)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"CreateSeparatorControl", (PyCFunction)Ctl_CreateSeparatorControl, 1,
 	 "(WindowPtr window, Rect boundsRect) -> (ControlHandle outControl)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"CreateGroupBoxControl", (PyCFunction)Ctl_CreateGroupBoxControl, 1,
 	 "(WindowPtr window, Rect boundsRect, CFStringRef title, Boolean primary) -> (ControlHandle outControl)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"CreateCheckGroupBoxControl", (PyCFunction)Ctl_CreateCheckGroupBoxControl, 1,
 	 "(WindowPtr window, Rect boundsRect, CFStringRef title, SInt32 initialValue, Boolean primary, Boolean autoToggle) -> (ControlHandle outControl)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"CreatePopupGroupBoxControl", (PyCFunction)Ctl_CreatePopupGroupBoxControl, 1,
 	 "(WindowPtr window, Rect boundsRect, CFStringRef title, Boolean primary, SInt16 menuID, Boolean variableWidth, SInt16 titleWidth, SInt16 titleJustification, Style titleStyle) -> (ControlHandle outControl)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"CreatePopupArrowControl", (PyCFunction)Ctl_CreatePopupArrowControl, 1,
 	 "(WindowPtr window, Rect boundsRect, UInt16 orientation, UInt16 size) -> (ControlHandle outControl)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"CreatePlacardControl", (PyCFunction)Ctl_CreatePlacardControl, 1,
 	 "(WindowPtr window, Rect boundsRect) -> (ControlHandle outControl)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"CreateClockControl", (PyCFunction)Ctl_CreateClockControl, 1,
 	 "(WindowPtr window, Rect boundsRect, UInt16 clockType, UInt32 clockFlags) -> (ControlHandle outControl)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"CreateUserPaneControl", (PyCFunction)Ctl_CreateUserPaneControl, 1,
 	 "(WindowPtr window, Rect boundsRect, UInt32 features) -> (ControlHandle outControl)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"CreateEditTextControl", (PyCFunction)Ctl_CreateEditTextControl, 1,
 	 "(WindowPtr window, Rect boundsRect, CFStringRef text, Boolean isPassword, Boolean useInlineInput, ControlFontStyleRec style) -> (ControlHandle outControl)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"CreateStaticTextControl", (PyCFunction)Ctl_CreateStaticTextControl, 1,
 	 "(WindowPtr window, Rect boundsRect, CFStringRef text, ControlFontStyleRec style) -> (ControlHandle outControl)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"CreateWindowHeaderControl", (PyCFunction)Ctl_CreateWindowHeaderControl, 1,
 	 "(WindowPtr window, Rect boundsRect, Boolean isListHeader) -> (ControlHandle outControl)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"CreatePushButtonControl", (PyCFunction)Ctl_CreatePushButtonControl, 1,
 	 "(WindowPtr window, Rect boundsRect, CFStringRef title) -> (ControlHandle outControl)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"CreateRadioButtonControl", (PyCFunction)Ctl_CreateRadioButtonControl, 1,
 	 "(WindowPtr window, Rect boundsRect, CFStringRef title, SInt32 initialValue, Boolean autoToggle) -> (ControlHandle outControl)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"CreateCheckBoxControl", (PyCFunction)Ctl_CreateCheckBoxControl, 1,
 	 "(WindowPtr window, Rect boundsRect, CFStringRef title, SInt32 initialValue, Boolean autoToggle) -> (ControlHandle outControl)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"CreatePopupButtonControl", (PyCFunction)Ctl_CreatePopupButtonControl, 1,
 	 "(WindowPtr window, Rect boundsRect, CFStringRef title, SInt16 menuID, Boolean variableWidth, SInt16 titleWidth, SInt16 titleJustification, Style titleStyle) -> (ControlHandle outControl)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"CreateRadioGroupControl", (PyCFunction)Ctl_CreateRadioGroupControl, 1,
 	 "(WindowPtr window, Rect boundsRect) -> (ControlHandle outControl)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"CreateScrollingTextBoxControl", (PyCFunction)Ctl_CreateScrollingTextBoxControl, 1,
 	 "(WindowPtr window, Rect boundsRect, SInt16 contentResID, Boolean autoScroll, UInt32 delayBeforeAutoScroll, UInt32 delayBetweenAutoScroll, UInt16 autoScrollAmount) -> (ControlHandle outControl)"},
+#endif
+
+#if TARGET_API_MAC_CARBON
 	{"CreateDataBrowserControl", (PyCFunction)Ctl_CreateDataBrowserControl, 1,
 	 "(WindowPtr window, Rect boundsRect, OSType style) -> (ControlHandle outControl)"},
+#endif
 	{"FindControlUnderMouse", (PyCFunction)Ctl_FindControlUnderMouse, 1,
 	 "(Point inWhere, WindowPtr inWindow) -> (ControlHandle _rv, SInt16 outPart)"},
 	{"as_Control", (PyCFunction)Ctl_as_Control, 1,
diff --git a/Mac/Modules/ctl/ctlscan.py b/Mac/Modules/ctl/ctlscan.py
index d78cb5f..b2a17d1 100644
--- a/Mac/Modules/ctl/ctlscan.py
+++ b/Mac/Modules/ctl/ctlscan.py
@@ -127,6 +127,100 @@
 				'HandleControlSetCursor',
 				'GetControlClickActivation',
 				'HandleControlContextualMenuClick',
+				"CreateDataBrowserControl",
+				"CreateScrollingTextBoxControl",
+				"CreateRadioGroupControl",
+				"CreatePopupButtonControl",
+				"CreateCheckBoxControl",
+				"CreateRadioButtonControl",
+				"CreatePushButtonControl",
+				"CreateWindowHeaderControl",
+				"CreateStaticTextControl",
+				"CreateEditTextControl",
+				"CreateUserPaneControl",
+				"CreateClockControl",
+				"CreatePlacardControl",
+				"CreatePopupArrowControl",
+				"CreatePopupGroupBoxControl",
+				"CreateCheckGroupBoxControl",
+				"CreateGroupBoxControl",
+				"CreateSeparatorControl",
+				"CreateChasingArrowsControl",
+				"CreateLittleArrowsControl",
+				"CreateProgressBarControl",
+				"CreateDisclosureTriangleControl",
+				"GetDataBrowserColumnViewDisplayType",
+				"SetDataBrowserColumnViewDisplayType",
+				"GetDataBrowserColumnViewPathLength",
+				"GetDataBrowserColumnViewPath",
+				"GetDataBrowserListViewDisclosureColumn",
+				"SetDataBrowserListViewDisclosureColumn",
+				"GetDataBrowserListViewUsePlainBackground",
+				"SetDataBrowserListViewUsePlainBackground",
+				"GetDataBrowserListViewHeaderBtnHeight",
+				"SetDataBrowserListViewHeaderBtnHeight",
+				"AutoSizeDataBrowserListViewColumns",
+				"GetDataBrowserTableViewColumnProperty",
+				"GetDataBrowserTableViewColumnPosition",
+				"SetDataBrowserTableViewColumnPosition",
+				"GetDataBrowserTableViewItemRow",
+				"SetDataBrowserTableViewItemRow",
+				"GetDataBrowserTableViewItemID",
+				"GetDataBrowserTableViewGeometry",
+				"SetDataBrowserTableViewGeometry",
+				"GetDataBrowserTableViewNamedColumnWidth",
+				"SetDataBrowserTableViewNamedColumnWidth",
+				"GetDataBrowserTableViewItemRowHeight",
+				"SetDataBrowserTableViewItemRowHeight",
+				"GetDataBrowserTableViewColumnWidth",
+				"SetDataBrowserTableViewColumnWidth",
+				"GetDataBrowserTableViewRowHeight",
+				"SetDataBrowserTableViewRowHeight",
+				"GetDataBrowserTableViewHiliteStyle",
+				"SetDataBrowserTableViewHiliteStyle",
+				"GetDataBrowserTableViewColumnCount",
+				"RemoveDataBrowserTableViewColumn",
+				"GetDataBrowserItemPartBounds",
+				"GetDataBrowserEditItem",
+				"SetDataBrowserEditItem",
+				"GetDataBrowserEditText",
+				"SetDataBrowserEditText",
+				"GetDataBrowserPropertyFlags",
+				"SetDataBrowserPropertyFlags",
+				"GetDataBrowserSelectionFlags",
+				"SetDataBrowserSelectionFlags",
+				"GetDataBrowserSortProperty",
+				"SetDataBrowserSortProperty",
+				"GetDataBrowserHasScrollBars",
+				"SetDataBrowserHasScrollBars",
+				"GetDataBrowserScrollPosition",
+				"SetDataBrowserScrollPosition",
+				"GetDataBrowserSortOrder",
+				"SetDataBrowserSortOrder",
+				"GetDataBrowserTarget",
+				"SetDataBrowserTarget",
+				"GetDataBrowserScrollBarInset",
+				"SetDataBrowserScrollBarInset",
+				"GetDataBrowserActiveItems",
+				"SetDataBrowserActiveItems",
+				"RevealDataBrowserItem",
+				"GetDataBrowserItemState",
+				"IsDataBrowserItemSelected",
+				"GetDataBrowserItemCount",
+				"GetDataBrowserItems",
+				"SortDataBrowserContainer",
+				"CloseDataBrowserContainer",
+				"OpenDataBrowserContainer",
+				"MoveDataBrowserSelectionAnchor",
+				"GetDataBrowserSelectionAnchor",
+				"ExecuteDataBrowserEditCommand",
+				"EnableDataBrowserEditCommand",
+				"SetDataBrowserViewStyle",
+				"GetDataBrowserViewStyle",
+				"GetControlCommandID",
+				"SetControlCommandID",
+				"CopyControlTitleAsCFString",
+				"SetControlTitleWithCFString",
 			]),
 			('#if ACCESSOR_CALLS_ARE_FUNCTIONS', [
 				# XXX These are silly, they should be #defined to access the fields