Ported to Universal Headers 3.4.2. Qd and Qt remain to be done.

Completely untested.
diff --git a/Mac/Modules/cg/_CGmodule.c b/Mac/Modules/cg/_CGmodule.c
index 0889766..378bfa4 100755
--- a/Mac/Modules/cg/_CGmodule.c
+++ b/Mac/Modules/cg/_CGmodule.c
@@ -699,20 +699,20 @@
 static PyObject *CGContextRefObj_CGContextSetRGBFillColor(CGContextRefObject *_self, PyObject *_args)
 {
 	PyObject *_res = NULL;
-	float r;
-	float g;
-	float b;
+	float red;
+	float green;
+	float blue;
 	float alpha;
 	if (!PyArg_ParseTuple(_args, "ffff",
-	                      &r,
-	                      &g,
-	                      &b,
+	                      &red,
+	                      &green,
+	                      &blue,
 	                      &alpha))
 		return NULL;
 	CGContextSetRGBFillColor(_self->ob_itself,
-	                         r,
-	                         g,
-	                         b,
+	                         red,
+	                         green,
+	                         blue,
 	                         alpha);
 	Py_INCREF(Py_None);
 	_res = Py_None;
@@ -722,20 +722,20 @@
 static PyObject *CGContextRefObj_CGContextSetRGBStrokeColor(CGContextRefObject *_self, PyObject *_args)
 {
 	PyObject *_res = NULL;
-	float r;
-	float g;
-	float b;
+	float red;
+	float green;
+	float blue;
 	float alpha;
 	if (!PyArg_ParseTuple(_args, "ffff",
-	                      &r,
-	                      &g,
-	                      &b,
+	                      &red,
+	                      &green,
+	                      &blue,
 	                      &alpha))
 		return NULL;
 	CGContextSetRGBStrokeColor(_self->ob_itself,
-	                           r,
-	                           g,
-	                           b,
+	                           red,
+	                           green,
+	                           blue,
 	                           alpha);
 	Py_INCREF(Py_None);
 	_res = Py_None;
@@ -745,23 +745,23 @@
 static PyObject *CGContextRefObj_CGContextSetCMYKFillColor(CGContextRefObject *_self, PyObject *_args)
 {
 	PyObject *_res = NULL;
-	float c;
-	float m;
-	float y;
-	float k;
+	float cyan;
+	float magenta;
+	float yellow;
+	float black;
 	float alpha;
 	if (!PyArg_ParseTuple(_args, "fffff",
-	                      &c,
-	                      &m,
-	                      &y,
-	                      &k,
+	                      &cyan,
+	                      &magenta,
+	                      &yellow,
+	                      &black,
 	                      &alpha))
 		return NULL;
 	CGContextSetCMYKFillColor(_self->ob_itself,
-	                          c,
-	                          m,
-	                          y,
-	                          k,
+	                          cyan,
+	                          magenta,
+	                          yellow,
+	                          black,
 	                          alpha);
 	Py_INCREF(Py_None);
 	_res = Py_None;
@@ -771,29 +771,55 @@
 static PyObject *CGContextRefObj_CGContextSetCMYKStrokeColor(CGContextRefObject *_self, PyObject *_args)
 {
 	PyObject *_res = NULL;
-	float c;
-	float m;
-	float y;
-	float k;
+	float cyan;
+	float magenta;
+	float yellow;
+	float black;
 	float alpha;
 	if (!PyArg_ParseTuple(_args, "fffff",
-	                      &c,
-	                      &m,
-	                      &y,
-	                      &k,
+	                      &cyan,
+	                      &magenta,
+	                      &yellow,
+	                      &black,
 	                      &alpha))
 		return NULL;
 	CGContextSetCMYKStrokeColor(_self->ob_itself,
-	                            c,
-	                            m,
-	                            y,
-	                            k,
+	                            cyan,
+	                            magenta,
+	                            yellow,
+	                            black,
 	                            alpha);
 	Py_INCREF(Py_None);
 	_res = Py_None;
 	return _res;
 }
 
+static PyObject *CGContextRefObj_CGContextGetInterpolationQuality(CGContextRefObject *_self, PyObject *_args)
+{
+	PyObject *_res = NULL;
+	int _rv;
+	if (!PyArg_ParseTuple(_args, ""))
+		return NULL;
+	_rv = CGContextGetInterpolationQuality(_self->ob_itself);
+	_res = Py_BuildValue("i",
+	                     _rv);
+	return _res;
+}
+
+static PyObject *CGContextRefObj_CGContextSetInterpolationQuality(CGContextRefObject *_self, PyObject *_args)
+{
+	PyObject *_res = NULL;
+	int quality;
+	if (!PyArg_ParseTuple(_args, "i",
+	                      &quality))
+		return NULL;
+	CGContextSetInterpolationQuality(_self->ob_itself,
+	                                 quality);
+	Py_INCREF(Py_None);
+	_res = Py_None;
+	return _res;
+}
+
 static PyObject *CGContextRefObj_CGContextSetCharacterSpacing(CGContextRefObject *_self, PyObject *_args)
 {
 	PyObject *_res = NULL;
@@ -1107,13 +1133,17 @@
 	{"CGContextSetGrayStrokeColor", (PyCFunction)CGContextRefObj_CGContextSetGrayStrokeColor, 1,
 	 PyDoc_STR("(float gray, float alpha) -> None")},
 	{"CGContextSetRGBFillColor", (PyCFunction)CGContextRefObj_CGContextSetRGBFillColor, 1,
-	 PyDoc_STR("(float r, float g, float b, float alpha) -> None")},
+	 PyDoc_STR("(float red, float green, float blue, float alpha) -> None")},
 	{"CGContextSetRGBStrokeColor", (PyCFunction)CGContextRefObj_CGContextSetRGBStrokeColor, 1,
-	 PyDoc_STR("(float r, float g, float b, float alpha) -> None")},
+	 PyDoc_STR("(float red, float green, float blue, float alpha) -> None")},
 	{"CGContextSetCMYKFillColor", (PyCFunction)CGContextRefObj_CGContextSetCMYKFillColor, 1,
-	 PyDoc_STR("(float c, float m, float y, float k, float alpha) -> None")},
+	 PyDoc_STR("(float cyan, float magenta, float yellow, float black, float alpha) -> None")},
 	{"CGContextSetCMYKStrokeColor", (PyCFunction)CGContextRefObj_CGContextSetCMYKStrokeColor, 1,
-	 PyDoc_STR("(float c, float m, float y, float k, float alpha) -> None")},
+	 PyDoc_STR("(float cyan, float magenta, float yellow, float black, float alpha) -> None")},
+	{"CGContextGetInterpolationQuality", (PyCFunction)CGContextRefObj_CGContextGetInterpolationQuality, 1,
+	 PyDoc_STR("() -> (int _rv)")},
+	{"CGContextSetInterpolationQuality", (PyCFunction)CGContextRefObj_CGContextSetInterpolationQuality, 1,
+	 PyDoc_STR("(int quality) -> None")},
 	{"CGContextSetCharacterSpacing", (PyCFunction)CGContextRefObj_CGContextSetCharacterSpacing, 1,
 	 PyDoc_STR("(float spacing) -> None")},
 	{"CGContextSetTextPosition", (PyCFunction)CGContextRefObj_CGContextSetTextPosition, 1,
diff --git a/Mac/Modules/cg/cgsupport.py b/Mac/Modules/cg/cgsupport.py
index 1b667c0..7dc2d54 100755
--- a/Mac/Modules/cg/cgsupport.py
+++ b/Mac/Modules/cg/cgsupport.py
@@ -114,6 +114,7 @@
 CGLineJoin = int
 CGTextDrawingMode = int
 CGPathDrawingMode = int
+CGInterpolationQuality = int
 
 # The real objects
 CGContextRef = OpaqueByValueType("CGContextRef", "CGContextRefObj")
diff --git a/Mac/Modules/ctl/_Ctlmodule.c b/Mac/Modules/ctl/_Ctlmodule.c
index 9f299a1..a7073a6 100644
--- a/Mac/Modules/ctl/_Ctlmodule.c
+++ b/Mac/Modules/ctl/_Ctlmodule.c
@@ -1385,15 +1385,15 @@
 {
 	PyObject *_res = NULL;
 	OSStatus _err;
-	Boolean tracks;
+	Boolean inTracks;
 #ifndef SetControlDragTrackingEnabled
 	PyMac_PRECHECK(SetControlDragTrackingEnabled);
 #endif
 	if (!PyArg_ParseTuple(_args, "b",
-	                      &tracks))
+	                      &inTracks))
 		return NULL;
 	_err = SetControlDragTrackingEnabled(_self->ob_itself,
-	                                     tracks);
+	                                     inTracks);
 	if (_err != noErr) return PyMac_Error(_err);
 	Py_INCREF(Py_None);
 	_res = Py_None;
@@ -1404,17 +1404,17 @@
 {
 	PyObject *_res = NULL;
 	OSStatus _err;
-	Boolean tracks;
+	Boolean outTracks;
 #ifndef IsControlDragTrackingEnabled
 	PyMac_PRECHECK(IsControlDragTrackingEnabled);
 #endif
 	if (!PyArg_ParseTuple(_args, ""))
 		return NULL;
 	_err = IsControlDragTrackingEnabled(_self->ob_itself,
-	                                    &tracks);
+	                                    &outTracks);
 	if (_err != noErr) return PyMac_Error(_err);
 	_res = Py_BuildValue("b",
-	                     tracks);
+	                     outTracks);
 	return _res;
 }
 
@@ -3608,9 +3608,9 @@
 	{"HandleControlDragReceive", (PyCFunction)CtlObj_HandleControlDragReceive, 1,
 	 PyDoc_STR("(DragReference inDrag) -> None")},
 	{"SetControlDragTrackingEnabled", (PyCFunction)CtlObj_SetControlDragTrackingEnabled, 1,
-	 PyDoc_STR("(Boolean tracks) -> None")},
+	 PyDoc_STR("(Boolean inTracks) -> None")},
 	{"IsControlDragTrackingEnabled", (PyCFunction)CtlObj_IsControlDragTrackingEnabled, 1,
-	 PyDoc_STR("() -> (Boolean tracks)")},
+	 PyDoc_STR("() -> (Boolean outTracks)")},
 	{"GetControlBounds", (PyCFunction)CtlObj_GetControlBounds, 1,
 	 PyDoc_STR("() -> (Rect bounds)")},
 	{"IsControlHilited", (PyCFunction)CtlObj_IsControlHilited, 1,
@@ -3990,17 +3990,17 @@
 static PyObject *Ctl_UpdateControls(PyObject *_self, PyObject *_args)
 {
 	PyObject *_res = NULL;
-	WindowPtr theWindow;
-	RgnHandle updateRegion;
+	WindowPtr inWindow;
+	RgnHandle inUpdateRegion;
 #ifndef UpdateControls
 	PyMac_PRECHECK(UpdateControls);
 #endif
 	if (!PyArg_ParseTuple(_args, "O&O&",
-	                      WinObj_Convert, &theWindow,
-	                      ResObj_Convert, &updateRegion))
+	                      WinObj_Convert, &inWindow,
+	                      ResObj_Convert, &inUpdateRegion))
 		return NULL;
-	UpdateControls(theWindow,
-	               updateRegion);
+	UpdateControls(inWindow,
+	               inUpdateRegion);
 	Py_INCREF(Py_None);
 	_res = Py_None;
 	return _res;
@@ -4231,17 +4231,17 @@
 {
 	PyObject *_res = NULL;
 	OSStatus _err;
-	WindowPtr theWindow;
-	Boolean tracks;
+	WindowPtr inWindow;
+	Boolean inTracks;
 #ifndef SetAutomaticControlDragTrackingEnabledForWindow
 	PyMac_PRECHECK(SetAutomaticControlDragTrackingEnabledForWindow);
 #endif
 	if (!PyArg_ParseTuple(_args, "O&b",
-	                      WinObj_Convert, &theWindow,
-	                      &tracks))
+	                      WinObj_Convert, &inWindow,
+	                      &inTracks))
 		return NULL;
-	_err = SetAutomaticControlDragTrackingEnabledForWindow(theWindow,
-	                                                       tracks);
+	_err = SetAutomaticControlDragTrackingEnabledForWindow(inWindow,
+	                                                       inTracks);
 	if (_err != noErr) return PyMac_Error(_err);
 	Py_INCREF(Py_None);
 	_res = Py_None;
@@ -4252,19 +4252,19 @@
 {
 	PyObject *_res = NULL;
 	OSStatus _err;
-	WindowPtr theWindow;
-	Boolean tracks;
+	WindowPtr inWindow;
+	Boolean outTracks;
 #ifndef IsAutomaticControlDragTrackingEnabledForWindow
 	PyMac_PRECHECK(IsAutomaticControlDragTrackingEnabledForWindow);
 #endif
 	if (!PyArg_ParseTuple(_args, "O&",
-	                      WinObj_Convert, &theWindow))
+	                      WinObj_Convert, &inWindow))
 		return NULL;
-	_err = IsAutomaticControlDragTrackingEnabledForWindow(theWindow,
-	                                                      &tracks);
+	_err = IsAutomaticControlDragTrackingEnabledForWindow(inWindow,
+	                                                      &outTracks);
 	if (_err != noErr) return PyMac_Error(_err);
 	_res = Py_BuildValue("b",
-	                     tracks);
+	                     outTracks);
 	return _res;
 }
 
@@ -4362,33 +4362,33 @@
 {
 	PyObject *_res = NULL;
 	OSStatus _err;
-	WindowPtr window;
-	Rect boundsRect;
-	UInt16 orientation;
-	CFStringRef title;
-	SInt32 initialValue;
-	Boolean drawTitle;
-	Boolean autoToggles;
+	WindowPtr inWindow;
+	Rect inBoundsRect;
+	UInt16 inOrientation;
+	CFStringRef inTitle;
+	SInt32 inInitialValue;
+	Boolean inDrawTitle;
+	Boolean inAutoToggles;
 	ControlHandle outControl;
 #ifndef CreateDisclosureTriangleControl
 	PyMac_PRECHECK(CreateDisclosureTriangleControl);
 #endif
 	if (!PyArg_ParseTuple(_args, "O&O&HO&lbb",
-	                      WinObj_Convert, &window,
-	                      PyMac_GetRect, &boundsRect,
-	                      &orientation,
-	                      CFStringRefObj_Convert, &title,
-	                      &initialValue,
-	                      &drawTitle,
-	                      &autoToggles))
+	                      WinObj_Convert, &inWindow,
+	                      PyMac_GetRect, &inBoundsRect,
+	                      &inOrientation,
+	                      CFStringRefObj_Convert, &inTitle,
+	                      &inInitialValue,
+	                      &inDrawTitle,
+	                      &inAutoToggles))
 		return NULL;
-	_err = CreateDisclosureTriangleControl(window,
-	                                       &boundsRect,
-	                                       orientation,
-	                                       title,
-	                                       initialValue,
-	                                       drawTitle,
-	                                       autoToggles,
+	_err = CreateDisclosureTriangleControl(inWindow,
+	                                       &inBoundsRect,
+	                                       inOrientation,
+	                                       inTitle,
+	                                       inInitialValue,
+	                                       inDrawTitle,
+	                                       inAutoToggles,
 	                                       &outControl);
 	if (_err != noErr) return PyMac_Error(_err);
 	_res = Py_BuildValue("O&",
@@ -4882,24 +4882,24 @@
 {
 	PyObject *_res = NULL;
 	OSStatus _err;
-	WindowPtr window;
-	Rect boundsRect;
-	ControlButtonContentInfo icon;
-	Boolean dontTrack;
+	WindowPtr inWindow;
+	Rect inBoundsRect;
+	ControlButtonContentInfo inIconContent;
+	Boolean inDontTrack;
 	ControlHandle outControl;
 #ifndef CreateIconControl
 	PyMac_PRECHECK(CreateIconControl);
 #endif
 	if (!PyArg_ParseTuple(_args, "O&O&O&b",
-	                      WinObj_Convert, &window,
-	                      PyMac_GetRect, &boundsRect,
-	                      ControlButtonContentInfo_Convert, &icon,
-	                      &dontTrack))
+	                      WinObj_Convert, &inWindow,
+	                      PyMac_GetRect, &inBoundsRect,
+	                      ControlButtonContentInfo_Convert, &inIconContent,
+	                      &inDontTrack))
 		return NULL;
-	_err = CreateIconControl(window,
-	                         &boundsRect,
-	                         &icon,
-	                         dontTrack,
+	_err = CreateIconControl(inWindow,
+	                         &inBoundsRect,
+	                         &inIconContent,
+	                         inDontTrack,
 	                         &outControl);
 	if (_err != noErr) return PyMac_Error(_err);
 	_res = Py_BuildValue("O&",
@@ -5422,7 +5422,7 @@
 	{"DrawControls", (PyCFunction)Ctl_DrawControls, 1,
 	 PyDoc_STR("(WindowPtr theWindow) -> None")},
 	{"UpdateControls", (PyCFunction)Ctl_UpdateControls, 1,
-	 PyDoc_STR("(WindowPtr theWindow, RgnHandle updateRegion) -> None")},
+	 PyDoc_STR("(WindowPtr inWindow, RgnHandle inUpdateRegion) -> None")},
 	{"FindControl", (PyCFunction)Ctl_FindControl, 1,
 	 PyDoc_STR("(Point testPoint, WindowPtr theWindow) -> (ControlPartCode _rv, ControlHandle theControl)")},
 	{"IdleControls", (PyCFunction)Ctl_IdleControls, 1,
@@ -5446,15 +5446,15 @@
 	{"ClearKeyboardFocus", (PyCFunction)Ctl_ClearKeyboardFocus, 1,
 	 PyDoc_STR("(WindowPtr inWindow) -> None")},
 	{"SetAutomaticControlDragTrackingEnabledForWindow", (PyCFunction)Ctl_SetAutomaticControlDragTrackingEnabledForWindow, 1,
-	 PyDoc_STR("(WindowPtr theWindow, Boolean tracks) -> None")},
+	 PyDoc_STR("(WindowPtr inWindow, Boolean inTracks) -> None")},
 	{"IsAutomaticControlDragTrackingEnabledForWindow", (PyCFunction)Ctl_IsAutomaticControlDragTrackingEnabledForWindow, 1,
-	 PyDoc_STR("(WindowPtr theWindow) -> (Boolean tracks)")},
+	 PyDoc_STR("(WindowPtr inWindow) -> (Boolean outTracks)")},
 	{"CreateBevelButtonControl", (PyCFunction)Ctl_CreateBevelButtonControl, 1,
 	 PyDoc_STR("(WindowPtr window, Rect boundsRect, CFStringRef title, UInt16 thickness, UInt16 behavior, ControlButtonContentInfo info, SInt16 menuID, UInt16 menuBehavior, UInt16 menuPlacement) -> (ControlHandle outControl)")},
 	{"CreateSliderControl", (PyCFunction)Ctl_CreateSliderControl, 1,
 	 PyDoc_STR("(WindowPtr window, Rect boundsRect, SInt32 value, SInt32 minimum, SInt32 maximum, UInt16 orientation, UInt16 numTickMarks, Boolean liveTracking, PyObject* liveTrackingProc) -> (ControlHandle outControl)")},
 	{"CreateDisclosureTriangleControl", (PyCFunction)Ctl_CreateDisclosureTriangleControl, 1,
-	 PyDoc_STR("(WindowPtr window, Rect boundsRect, UInt16 orientation, CFStringRef title, SInt32 initialValue, Boolean drawTitle, Boolean autoToggles) -> (ControlHandle outControl)")},
+	 PyDoc_STR("(WindowPtr inWindow, Rect inBoundsRect, UInt16 inOrientation, CFStringRef inTitle, SInt32 inInitialValue, Boolean inDrawTitle, Boolean inAutoToggles) -> (ControlHandle outControl)")},
 	{"CreateProgressBarControl", (PyCFunction)Ctl_CreateProgressBarControl, 1,
 	 PyDoc_STR("(WindowPtr window, Rect boundsRect, SInt32 value, SInt32 minimum, SInt32 maximum, Boolean indeterminate) -> (ControlHandle outControl)")},
 	{"CreateRelevanceBarControl", (PyCFunction)Ctl_CreateRelevanceBarControl, 1,
@@ -5488,7 +5488,7 @@
 	{"CreatePictureControl", (PyCFunction)Ctl_CreatePictureControl, 1,
 	 PyDoc_STR("(WindowPtr window, Rect boundsRect, ControlButtonContentInfo content, Boolean dontTrack) -> (ControlHandle outControl)")},
 	{"CreateIconControl", (PyCFunction)Ctl_CreateIconControl, 1,
-	 PyDoc_STR("(WindowPtr window, Rect boundsRect, ControlButtonContentInfo icon, Boolean dontTrack) -> (ControlHandle outControl)")},
+	 PyDoc_STR("(WindowPtr inWindow, Rect inBoundsRect, ControlButtonContentInfo inIconContent, Boolean inDontTrack) -> (ControlHandle outControl)")},
 	{"CreateWindowHeaderControl", (PyCFunction)Ctl_CreateWindowHeaderControl, 1,
 	 PyDoc_STR("(WindowPtr window, Rect boundsRect, Boolean isListHeader) -> (ControlHandle outControl)")},
 	{"CreatePushButtonControl", (PyCFunction)Ctl_CreatePushButtonControl, 1,
diff --git a/Mac/Modules/ctl/ctlscan.py b/Mac/Modules/ctl/ctlscan.py
index ac1d3f4..818541e 100644
--- a/Mac/Modules/ctl/ctlscan.py
+++ b/Mac/Modules/ctl/ctlscan.py
@@ -125,6 +125,7 @@
 ##			'DataBrowserTableViewColumnDesc',
 ##			'DataBrowserListViewColumnDesc',
 			'CFDataRef',
+			'DataBrowserListViewHeaderDesc', # difficult struct
 			]
 
 	def makerepairinstructions(self):
diff --git a/Mac/Modules/drag/dragscan.py b/Mac/Modules/drag/dragscan.py
index 158cfff..282728e 100644
--- a/Mac/Modules/drag/dragscan.py
+++ b/Mac/Modules/drag/dragscan.py
@@ -47,12 +47,14 @@
 		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
 		self.defsfile.write("from Carbon.TextEdit import *\n")
 		self.defsfile.write("from Carbon.QuickDraw import *\n")
+		self.defsfile.write("fkDragActionAll = -1\n")
 		self.defsfile.write("\n")
 		# Defines unparseable in Drag.h
 		self.defsfile.write(MISSING_DEFINES)
 
 	def makeblacklistnames(self):
 		return [
+			"kDragActionAll",
 			]
 
 	def makeblacklisttypes(self):
diff --git a/Mac/Modules/file/filescan.py b/Mac/Modules/file/filescan.py
index 8d663a3..f8b5ba2 100644
--- a/Mac/Modules/file/filescan.py
+++ b/Mac/Modules/file/filescan.py
@@ -136,7 +136,9 @@
 			"IOCompletionUPP", # Proc pointer
 			"AliasFilterProcPtr",
 			"AliasFilterUPP",
+			"FNSubscriptionUPP",
 			
+			"FNSubscriptionRef", # Lazy, for now.
 			]
 
 	def makerepairinstructions(self):
diff --git a/Mac/Modules/icn/_Icnmodule.c b/Mac/Modules/icn/_Icnmodule.c
index bbd59ab..2b43ed4 100644
--- a/Mac/Modules/icn/_Icnmodule.c
+++ b/Mac/Modules/icn/_Icnmodule.c
@@ -906,6 +906,32 @@
 	return _res;
 }
 
+static PyObject *Icn_RegisterIconRefFromFSRef(PyObject *_self, PyObject *_args)
+{
+	PyObject *_res = NULL;
+	OSStatus _err;
+	OSType creator;
+	OSType iconType;
+	FSRef iconFile;
+	IconRef theIconRef;
+#ifndef RegisterIconRefFromFSRef
+	PyMac_PRECHECK(RegisterIconRefFromFSRef);
+#endif
+	if (!PyArg_ParseTuple(_args, "O&O&O&",
+	                      PyMac_GetOSType, &creator,
+	                      PyMac_GetOSType, &iconType,
+	                      PyMac_GetFSRef, &iconFile))
+		return NULL;
+	_err = RegisterIconRefFromFSRef(creator,
+	                                iconType,
+	                                &iconFile,
+	                                &theIconRef);
+	if (_err != noErr) return PyMac_Error(_err);
+	_res = Py_BuildValue("O&",
+	                     ResObj_New, theIconRef);
+	return _res;
+}
+
 static PyObject *Icn_UnregisterIconRef(PyObject *_self, PyObject *_args)
 {
 	PyObject *_res = NULL;
@@ -1381,6 +1407,26 @@
 	return _res;
 }
 
+static PyObject *Icn_ReadIconFromFSRef(PyObject *_self, PyObject *_args)
+{
+	PyObject *_res = NULL;
+	OSStatus _err;
+	FSRef ref;
+	IconFamilyHandle iconFamily;
+#ifndef ReadIconFromFSRef
+	PyMac_PRECHECK(ReadIconFromFSRef);
+#endif
+	if (!PyArg_ParseTuple(_args, "O&",
+	                      PyMac_GetFSRef, &ref))
+		return NULL;
+	_err = ReadIconFromFSRef(&ref,
+	                         &iconFamily);
+	if (_err != noErr) return PyMac_Error(_err);
+	_res = Py_BuildValue("O&",
+	                     ResObj_New, iconFamily);
+	return _res;
+}
+
 static PyObject *Icn_WriteIconFile(PyObject *_self, PyObject *_args)
 {
 	PyObject *_res = NULL;
@@ -1479,6 +1525,8 @@
 	 PyDoc_STR("(OSType creator, OSType iconType, IconFamilyHandle iconFamily) -> (IconRef theIconRef)")},
 	{"RegisterIconRefFromResource", (PyCFunction)Icn_RegisterIconRefFromResource, 1,
 	 PyDoc_STR("(OSType creator, OSType iconType, FSSpec resourceFile, SInt16 resourceID) -> (IconRef theIconRef)")},
+	{"RegisterIconRefFromFSRef", (PyCFunction)Icn_RegisterIconRefFromFSRef, 1,
+	 PyDoc_STR("(OSType creator, OSType iconType, FSRef iconFile) -> (IconRef theIconRef)")},
 	{"UnregisterIconRef", (PyCFunction)Icn_UnregisterIconRef, 1,
 	 PyDoc_STR("(OSType creator, OSType iconType) -> None")},
 	{"UpdateIconRef", (PyCFunction)Icn_UpdateIconRef, 1,
@@ -1521,6 +1569,8 @@
 	 PyDoc_STR("(OSType creator, OSType iconType, FSSpec iconFile) -> (IconRef theIconRef)")},
 	{"ReadIconFile", (PyCFunction)Icn_ReadIconFile, 1,
 	 PyDoc_STR("(FSSpec iconFile) -> (IconFamilyHandle iconFamily)")},
+	{"ReadIconFromFSRef", (PyCFunction)Icn_ReadIconFromFSRef, 1,
+	 PyDoc_STR("(FSRef ref) -> (IconFamilyHandle iconFamily)")},
 	{"WriteIconFile", (PyCFunction)Icn_WriteIconFile, 1,
 	 PyDoc_STR("(IconFamilyHandle iconFamily, FSSpec iconFile) -> None")},
 	{NULL, NULL, 0}
diff --git a/Mac/Modules/icn/icnscan.py b/Mac/Modules/icn/icnscan.py
index 138cc62..c6a39f3 100644
--- a/Mac/Modules/icn/icnscan.py
+++ b/Mac/Modules/icn/icnscan.py
@@ -48,6 +48,8 @@
 			"err",
 			# OS8 only
 			'IconServicesTerminate',
+			# Lazy, right now.
+			"GetIconRefFromFileInfo"
 			]
 
 	def makeblacklisttypes(self):
@@ -55,6 +57,7 @@
 			"IconActionUPP",
 			"IconGetterUPP",
 			"CFragInitBlockPtr",
+			"CGRect_ptr",
 			]
 
 	def makerepairinstructions(self):
@@ -63,6 +66,7 @@
 
 	def writeinitialdefs(self):
 		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
+		self.defsfile.write("from Carbon.Files import *\n")
 			
 if __name__ == "__main__":
 	main()
diff --git a/Mac/Modules/icn/icnsupport.py b/Mac/Modules/icn/icnsupport.py
index 9b4a68f..ef1dbf3 100644
--- a/Mac/Modules/icn/icnsupport.py
+++ b/Mac/Modules/icn/icnsupport.py
@@ -32,6 +32,7 @@
 IconSelectorValue = Type("IconSelectorValue", "l")
 IconServicesUsageFlags = Type("IconServicesUsageFlags", "l")
 RGBColor = OpaqueType("RGBColor", "QdRGB")
+CGContextRef = OpaqueByValueType("CGContextRef", "CGContextRefObj")
 
 #WindowPeek = OpaqueByValueType("WindowPeek", OBJECTPREFIX)
 
diff --git a/Mac/Modules/launch/_Launchmodule.c b/Mac/Modules/launch/_Launchmodule.c
index cb3007f..9180350 100644
--- a/Mac/Modules/launch/_Launchmodule.c
+++ b/Mac/Modules/launch/_Launchmodule.c
@@ -97,6 +97,96 @@
 	return _res;
 }
 
+static PyObject *Launch_LSGetExtensionInfo(PyObject *_self, PyObject *_args)
+{
+	PyObject *_res = NULL;
+	OSStatus _err;
+	UniChar *inNameLen__in__;
+	UniCharCount inNameLen__len__;
+	int inNameLen__in_len__;
+	UniCharCount outExtStartIndex;
+	if (!PyArg_ParseTuple(_args, "u#",
+	                      &inNameLen__in__, &inNameLen__in_len__))
+		return NULL;
+	inNameLen__len__ = inNameLen__in_len__;
+	_err = LSGetExtensionInfo(inNameLen__len__, inNameLen__in__,
+	                          &outExtStartIndex);
+	if (_err != noErr) return PyMac_Error(_err);
+	_res = Py_BuildValue("l",
+	                     outExtStartIndex);
+	return _res;
+}
+
+static PyObject *Launch_LSCopyDisplayNameForRef(PyObject *_self, PyObject *_args)
+{
+	PyObject *_res = NULL;
+	OSStatus _err;
+	FSRef inRef;
+	CFStringRef outDisplayName;
+	if (!PyArg_ParseTuple(_args, "O&",
+	                      PyMac_GetFSRef, &inRef))
+		return NULL;
+	_err = LSCopyDisplayNameForRef(&inRef,
+	                               &outDisplayName);
+	if (_err != noErr) return PyMac_Error(_err);
+	_res = Py_BuildValue("O&",
+	                     CFStringRefObj_New, outDisplayName);
+	return _res;
+}
+
+static PyObject *Launch_LSCopyDisplayNameForURL(PyObject *_self, PyObject *_args)
+{
+	PyObject *_res = NULL;
+	OSStatus _err;
+	CFURLRef inURL;
+	CFStringRef outDisplayName;
+	if (!PyArg_ParseTuple(_args, "O&",
+	                      CFURLRefObj_Convert, &inURL))
+		return NULL;
+	_err = LSCopyDisplayNameForURL(inURL,
+	                               &outDisplayName);
+	if (_err != noErr) return PyMac_Error(_err);
+	_res = Py_BuildValue("O&",
+	                     CFStringRefObj_New, outDisplayName);
+	return _res;
+}
+
+static PyObject *Launch_LSSetExtensionHiddenForRef(PyObject *_self, PyObject *_args)
+{
+	PyObject *_res = NULL;
+	OSStatus _err;
+	FSRef inRef;
+	Boolean inHide;
+	if (!PyArg_ParseTuple(_args, "O&b",
+	                      PyMac_GetFSRef, &inRef,
+	                      &inHide))
+		return NULL;
+	_err = LSSetExtensionHiddenForRef(&inRef,
+	                                  inHide);
+	if (_err != noErr) return PyMac_Error(_err);
+	Py_INCREF(Py_None);
+	_res = Py_None;
+	return _res;
+}
+
+static PyObject *Launch_LSSetExtensionHiddenForURL(PyObject *_self, PyObject *_args)
+{
+	PyObject *_res = NULL;
+	OSStatus _err;
+	CFURLRef inURL;
+	Boolean inHide;
+	if (!PyArg_ParseTuple(_args, "O&b",
+	                      CFURLRefObj_Convert, &inURL,
+	                      &inHide))
+		return NULL;
+	_err = LSSetExtensionHiddenForURL(inURL,
+	                                  inHide);
+	if (_err != noErr) return PyMac_Error(_err);
+	Py_INCREF(Py_None);
+	_res = Py_None;
+	return _res;
+}
+
 static PyObject *Launch_LSCopyKindStringForRef(PyObject *_self, PyObject *_args)
 {
 	PyObject *_res = NULL;
@@ -323,6 +413,16 @@
 	 PyDoc_STR("(FSRef inItemRef, LSRequestedInfo inWhichInfo) -> (LSItemInfoRecord outItemInfo)")},
 	{"LSCopyItemInfoForURL", (PyCFunction)Launch_LSCopyItemInfoForURL, 1,
 	 PyDoc_STR("(CFURLRef inURL, LSRequestedInfo inWhichInfo) -> (LSItemInfoRecord outItemInfo)")},
+	{"LSGetExtensionInfo", (PyCFunction)Launch_LSGetExtensionInfo, 1,
+	 PyDoc_STR("(Buffer inNameLen) -> (UniCharCount outExtStartIndex)")},
+	{"LSCopyDisplayNameForRef", (PyCFunction)Launch_LSCopyDisplayNameForRef, 1,
+	 PyDoc_STR("(FSRef inRef) -> (CFStringRef outDisplayName)")},
+	{"LSCopyDisplayNameForURL", (PyCFunction)Launch_LSCopyDisplayNameForURL, 1,
+	 PyDoc_STR("(CFURLRef inURL) -> (CFStringRef outDisplayName)")},
+	{"LSSetExtensionHiddenForRef", (PyCFunction)Launch_LSSetExtensionHiddenForRef, 1,
+	 PyDoc_STR("(FSRef inRef, Boolean inHide) -> None")},
+	{"LSSetExtensionHiddenForURL", (PyCFunction)Launch_LSSetExtensionHiddenForURL, 1,
+	 PyDoc_STR("(CFURLRef inURL, Boolean inHide) -> None")},
 	{"LSCopyKindStringForRef", (PyCFunction)Launch_LSCopyKindStringForRef, 1,
 	 PyDoc_STR("(FSRef inFSRef) -> (CFStringRef outKindString)")},
 	{"LSCopyKindStringForURL", (PyCFunction)Launch_LSCopyKindStringForURL, 1,
diff --git a/Mac/Modules/launch/launchscan.py b/Mac/Modules/launch/launchscan.py
index 8d0f3e9..01f68f5 100644
--- a/Mac/Modules/launch/launchscan.py
+++ b/Mac/Modules/launch/launchscan.py
@@ -39,8 +39,10 @@
 
 	def writeinitialdefs(self):
 		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
+		self.defsfile.write("from Carbon.Files import *\n")
 		self.defsfile.write("kLSRequestAllInfo = -1\n")
 		self.defsfile.write("kLSRolesAll = -1\n")
+		self.defsfile.write("kLSInvalidExtensionIndex = -1\n")
 
 	def makeblacklistnames(self):
 		return [
@@ -48,6 +50,7 @@
 			"LSTerm",
 			"kLSRequestAllInfo",
 			"kLSRolesAll",
+			"kLSInvalidExtensionIndex",
 			]
 
 	def makeblacklisttypes(self):
@@ -67,6 +70,12 @@
     		 [('OptCFStringRef', 'inBundleID', 'InMode')]),
 			([('CFStringRef', 'inName', 'InMode')],
     		 [('OptCFStringRef', 'inName', 'InMode')]),
+
+			# Unicode filenames passed as length, buffer. LSGetExtensionInfo
+			([('UniCharCount', '*', 'InMode'),
+			  ('UniChar_ptr', '*', 'InMode')],
+			 [('UnicodeReverseInBuffer', '*', 'InMode')]
+			),
 			]
 			
 if __name__ == "__main__":
diff --git a/Mac/Modules/launch/launchsupport.py b/Mac/Modules/launch/launchsupport.py
index 066d3c6..7816a46 100644
--- a/Mac/Modules/launch/launchsupport.py
+++ b/Mac/Modules/launch/launchsupport.py
@@ -24,22 +24,9 @@
 LSInitializeFlags = Type("LSInitializeFlags", "l")
 LSRequestedInfo = Type("LSRequestedInfo", "l")
 LSRolesMask = Type("LSRolesMask", "l")
+UniCharCount = Type("UniCharCount", "l")
 OptCFStringRef = OpaqueByValueType("CFStringRef", "OptCFStringRefObj")
 LSItemInfoRecord = OpaqueType("LSItemInfoRecord", "LSItemInfoRecord")
-#MenuRef = OpaqueByValueType("MenuRef", "MenuObj")
-#MenuItemIndex = Type("MenuItemIndex", "H")
-
-#WindowPeek = OpaqueByValueType("WindowPeek", OBJECTPREFIX)
-
-#RgnHandle = FakeType("(RgnHandle)0")
-# XXXX Should be next, but this will break a lot of code...
-# RgnHandle = OpaqueByValueType("RgnHandle", "OptResObj")
-
-#KeyMap = ArrayOutputBufferType("KeyMap")
-##MacOSEventKind = Type("MacOSEventKind", "h") # Old-style
-##MacOSEventMask = Type("MacOSEventMask", "h") # Old-style
-#EventMask = Type("EventMask", "H")
-#EventKind = Type("EventKind", "H")
 
 includestuff = includestuff + """
 #include <ApplicationServices/ApplicationServices.h>
diff --git a/Mac/Modules/mlte/_Mltemodule.c b/Mac/Modules/mlte/_Mltemodule.c
index 2c972e9f..0b37fe1 100644
--- a/Mac/Modules/mlte/_Mltemodule.c
+++ b/Mac/Modules/mlte/_Mltemodule.c
@@ -361,7 +361,7 @@
 static PyObject *TXNObj_TXNZoomWindow(TXNObjectObject *_self, PyObject *_args)
 {
 	PyObject *_res = NULL;
-	short iPart;
+	SInt16 iPart;
 #ifndef TXNZoomWindow
 	PyMac_PRECHECK(TXNZoomWindow);
 #endif
@@ -697,37 +697,6 @@
 	return _res;
 }
 
-static PyObject *TXNObj_TXNSetData(TXNObjectObject *_self, PyObject *_args)
-{
-	PyObject *_res = NULL;
-	OSStatus _err;
-	TXNDataType iDataType;
-	void * *iDataPtr__in__;
-	ByteCount iDataPtr__len__;
-	int iDataPtr__in_len__;
-	TXNOffset iStartOffset;
-	TXNOffset iEndOffset;
-#ifndef TXNSetData
-	PyMac_PRECHECK(TXNSetData);
-#endif
-	if (!PyArg_ParseTuple(_args, "O&s#ll",
-	                      PyMac_GetOSType, &iDataType,
-	                      &iDataPtr__in__, &iDataPtr__in_len__,
-	                      &iStartOffset,
-	                      &iEndOffset))
-		return NULL;
-	iDataPtr__len__ = iDataPtr__in_len__;
-	_err = TXNSetData(_self->ob_itself,
-	                  iDataType,
-	                  iDataPtr__in__, iDataPtr__len__,
-	                  iStartOffset,
-	                  iEndOffset);
-	if (_err != noErr) return PyMac_Error(_err);
-	Py_INCREF(Py_None);
-	_res = Py_None;
-	return _res;
-}
-
 static PyObject *TXNObj_TXNGetChangeCount(TXNObjectObject *_self, PyObject *_args)
 {
 	PyObject *_res = NULL;
@@ -1150,6 +1119,20 @@
 	return _res;
 }
 
+static PyObject *TXNObj_TXNRecalcTextLayout(TXNObjectObject *_self, PyObject *_args)
+{
+	PyObject *_res = NULL;
+#ifndef TXNRecalcTextLayout
+	PyMac_PRECHECK(TXNRecalcTextLayout);
+#endif
+	if (!PyArg_ParseTuple(_args, ""))
+		return NULL;
+	TXNRecalcTextLayout(_self->ob_itself);
+	Py_INCREF(Py_None);
+	_res = Py_None;
+	return _res;
+}
+
 static PyMethodDef TXNObj_methods[] = {
 	{"TXNDeleteObject", (PyCFunction)TXNObj_TXNDeleteObject, 1,
 	 PyDoc_STR("() -> None")},
@@ -1180,7 +1163,7 @@
 	{"TXNGrowWindow", (PyCFunction)TXNObj_TXNGrowWindow, 1,
 	 PyDoc_STR("(EventRecord iEvent) -> None")},
 	{"TXNZoomWindow", (PyCFunction)TXNObj_TXNZoomWindow, 1,
-	 PyDoc_STR("(short iPart) -> None")},
+	 PyDoc_STR("(SInt16 iPart) -> None")},
 	{"TXNCanUndo", (PyCFunction)TXNObj_TXNCanUndo, 1,
 	 PyDoc_STR("() -> (Boolean _rv, TXNActionKey oTXNActionKey)")},
 	{"TXNUndo", (PyCFunction)TXNObj_TXNUndo, 1,
@@ -1215,8 +1198,6 @@
 	 PyDoc_STR("(TXNOffset iStartOffset, TXNOffset iEndOffset, TXNDataType iEncoding) -> (Handle oDataHandle)")},
 	{"TXNSetDataFromFile", (PyCFunction)TXNObj_TXNSetDataFromFile, 1,
 	 PyDoc_STR("(SInt16 iFileRefNum, OSType iFileType, ByteCount iFileLength, TXNOffset iStartOffset, TXNOffset iEndOffset) -> None")},
-	{"TXNSetData", (PyCFunction)TXNObj_TXNSetData, 1,
-	 PyDoc_STR("(TXNDataType iDataType, Buffer iDataPtr, TXNOffset iStartOffset, TXNOffset iEndOffset) -> None")},
 	{"TXNGetChangeCount", (PyCFunction)TXNObj_TXNGetChangeCount, 1,
 	 PyDoc_STR("() -> (ItemCount _rv)")},
 	{"TXNSave", (PyCFunction)TXNObj_TXNSave, 1,
@@ -1257,6 +1238,8 @@
 	 PyDoc_STR("(UInt32 iLineNumber) -> (Fixed oLineWidth, Fixed oLineHeight)")},
 	{"TXNIsObjectAttachedToSpecificWindow", (PyCFunction)TXNObj_TXNIsObjectAttachedToSpecificWindow, 1,
 	 PyDoc_STR("(WindowPtr iWindow) -> (Boolean oAttached)")},
+	{"TXNRecalcTextLayout", (PyCFunction)TXNObj_TXNRecalcTextLayout, 1,
+	 PyDoc_STR("() -> None")},
 	{NULL, NULL, 0}
 };
 
@@ -1493,7 +1476,7 @@
 	OSStatus _err;
 	FSSpec * iFileSpec;
 	WindowPtr iWindow;
-	Rect * iFrame;
+	Rect iFrame;
 	TXNFrameOptions iFrameOptions;
 	TXNFrameType iFrameType;
 	TXNFileType iFileType;
@@ -1506,7 +1489,7 @@
 	if (!PyArg_ParseTuple(_args, "O&O&O&llO&l",
 	                      OptFSSpecPtr_Convert, &iFileSpec,
 	                      WinObj_Convert, &iWindow,
-	                      OptRectPtr_Convert, &iFrame,
+	                      PyMac_GetRect, &iFrame,
 	                      &iFrameOptions,
 	                      &iFrameType,
 	                      PyMac_GetOSType, &iFileType,
@@ -1514,7 +1497,7 @@
 		return NULL;
 	_err = TXNNewObject(iFileSpec,
 	                    iWindow,
-	                    iFrame,
+	                    &iFrame,
 	                    iFrameOptions,
 	                    iFrameType,
 	                    iFileType,
@@ -1656,7 +1639,7 @@
 
 static PyMethodDef Mlte_methods[] = {
 	{"TXNNewObject", (PyCFunction)Mlte_TXNNewObject, 1,
-	 PyDoc_STR("(FSSpec * iFileSpec, WindowPtr iWindow, Rect * iFrame, TXNFrameOptions iFrameOptions, TXNFrameType iFrameType, TXNFileType iFileType, TXNPermanentTextEncodingType iPermanentEncoding) -> (TXNObject oTXNObject, TXNFrameID oTXNFrameID)")},
+	 PyDoc_STR("(FSSpec * iFileSpec, WindowPtr iWindow, Rect iFrame, TXNFrameOptions iFrameOptions, TXNFrameType iFrameType, TXNFileType iFileType, TXNPermanentTextEncodingType iPermanentEncoding) -> (TXNObject oTXNObject, TXNFrameID oTXNFrameID)")},
 	{"TXNTerminateTextension", (PyCFunction)Mlte_TXNTerminateTextension, 1,
 	 PyDoc_STR("() -> None")},
 	{"TXNIsScrapPastable", (PyCFunction)Mlte_TXNIsScrapPastable, 1,
diff --git a/Mac/Modules/mlte/mltescan.py b/Mac/Modules/mlte/mltescan.py
index 011d7bb..134bffa 100644
--- a/Mac/Modules/mlte/mltescan.py
+++ b/Mac/Modules/mlte/mltescan.py
@@ -52,6 +52,7 @@
 MovieFileType = FOUR_CHAR_CODE('moov')
 kTXNUseEncodingWordRulesMask = 0x80000000
 kTXNFontSizeAttributeSize = 4
+normal = 0
 """)
 
 	def makeblacklistnames(self):
@@ -94,10 +95,18 @@
 			"TXNBackground", #TBD
 			"TXNFindUPP", 
 			"ATSUStyle", #TBD
+			"TXNBackground_ptr", #TBD
+			"TXNControlData_ptr", #TBD
+			"TXNControlTag_ptr", #TBD
+			"TXNLongRect", #TBD
+			"TXNLongRect_ptr", #TBD
+			"TXNTypeAttributes_ptr", #TBD
+
 			"TXNActionKeyMapperProcPtr",
 			"TXNActionKeyMapperUPP",
 			"TXNTextBoxOptionsData",
 			"TXNCountOptions",
+			"void_ptr",
 			]
 
 	def makerepairinstructions(self):
diff --git a/Mac/Modules/osa/osascan.py b/Mac/Modules/osa/osascan.py
index ed58fc8..75e1a08 100644
--- a/Mac/Modules/osa/osascan.py
+++ b/Mac/Modules/osa/osascan.py
@@ -47,6 +47,7 @@
 
 	def makeblacklisttypes(self):
 		return [
+			"OSALocalOrGlobal",
 			"OSACreateAppleEventUPP",
 			"OSAActiveUPP",
 			"AEEventHandlerUPP",
diff --git a/Mac/Modules/osa/osasupport.py b/Mac/Modules/osa/osasupport.py
index fe687b4..7e70223 100644
--- a/Mac/Modules/osa/osasupport.py
+++ b/Mac/Modules/osa/osasupport.py
@@ -40,6 +40,7 @@
 
 ComponentInstance = OpaqueByValueType('ComponentInstance', OBJECTPREFIX)
 OSAError = OSErrType("OSAError", "l")
+# OSALocalOrGlobal = Type("OSALocalOrGlobal", "l")
 OSAID = Type("OSAID", "l")
 OSADebugCallFrameRef = Type("OSADebugCallFrameRef", "l")
 OSADebugSessionRef = Type("OSADebugSessionRef", "l")
diff --git a/Mac/Modules/win/_Winmodule.c b/Mac/Modules/win/_Winmodule.c
index e971e31..2a13182 100644
--- a/Mac/Modules/win/_Winmodule.c
+++ b/Mac/Modules/win/_Winmodule.c
@@ -1041,15 +1041,15 @@
 {
 	PyObject *_res = NULL;
 	OSStatus _err;
-	AliasHandle alias;
+	AliasHandle inAlias;
 #ifndef SetWindowProxyAlias
 	PyMac_PRECHECK(SetWindowProxyAlias);
 #endif
 	if (!PyArg_ParseTuple(_args, "O&",
-	                      ResObj_Convert, &alias))
+	                      ResObj_Convert, &inAlias))
 		return NULL;
 	_err = SetWindowProxyAlias(_self->ob_itself,
-	                           alias);
+	                           inAlias);
 	if (_err != noErr) return PyMac_Error(_err);
 	Py_INCREF(Py_None);
 	_res = Py_None;
@@ -1332,21 +1332,21 @@
 {
 	PyObject *_res = NULL;
 	OSStatus _err;
-	WindowTransitionEffect effect;
-	WindowTransitionAction action;
-	Rect rect;
+	WindowTransitionEffect inEffect;
+	WindowTransitionAction inAction;
+	Rect inRect;
 #ifndef TransitionWindow
 	PyMac_PRECHECK(TransitionWindow);
 #endif
 	if (!PyArg_ParseTuple(_args, "llO&",
-	                      &effect,
-	                      &action,
-	                      PyMac_GetRect, &rect))
+	                      &inEffect,
+	                      &inAction,
+	                      PyMac_GetRect, &inRect))
 		return NULL;
 	_err = TransitionWindow(_self->ob_itself,
-	                        effect,
-	                        action,
-	                        &rect);
+	                        inEffect,
+	                        inAction,
+	                        &inRect);
 	if (_err != noErr) return PyMac_Error(_err);
 	Py_INCREF(Py_None);
 	_res = Py_None;
@@ -1357,24 +1357,24 @@
 {
 	PyObject *_res = NULL;
 	OSStatus _err;
-	WindowPtr parentWindow;
-	WindowTransitionEffect effect;
-	WindowTransitionAction action;
-	Rect rect;
+	WindowPtr inParentWindow;
+	WindowTransitionEffect inEffect;
+	WindowTransitionAction inAction;
+	Rect inRect;
 #ifndef TransitionWindowAndParent
 	PyMac_PRECHECK(TransitionWindowAndParent);
 #endif
 	if (!PyArg_ParseTuple(_args, "O&llO&",
-	                      WinObj_Convert, &parentWindow,
-	                      &effect,
-	                      &action,
-	                      PyMac_GetRect, &rect))
+	                      WinObj_Convert, &inParentWindow,
+	                      &inEffect,
+	                      &inAction,
+	                      PyMac_GetRect, &inRect))
 		return NULL;
 	_err = TransitionWindowAndParent(_self->ob_itself,
-	                                 parentWindow,
-	                                 effect,
-	                                 action,
-	                                 &rect);
+	                                 inParentWindow,
+	                                 inEffect,
+	                                 inAction,
+	                                 &inRect);
 	if (_err != noErr) return PyMac_Error(_err);
 	Py_INCREF(Py_None);
 	_res = Py_None;
@@ -1562,23 +1562,23 @@
 {
 	PyObject *_res = NULL;
 	Boolean _rv;
-	Point startPoint;
-	Rect sizeConstraints;
-	Rect newContentRect;
+	Point inStartPoint;
+	Rect inSizeConstraints;
+	Rect outNewContentRect;
 #ifndef ResizeWindow
 	PyMac_PRECHECK(ResizeWindow);
 #endif
 	if (!PyArg_ParseTuple(_args, "O&O&",
-	                      PyMac_GetPoint, &startPoint,
-	                      PyMac_GetRect, &sizeConstraints))
+	                      PyMac_GetPoint, &inStartPoint,
+	                      PyMac_GetRect, &inSizeConstraints))
 		return NULL;
 	_rv = ResizeWindow(_self->ob_itself,
-	                   startPoint,
-	                   &sizeConstraints,
-	                   &newContentRect);
+	                   inStartPoint,
+	                   &inSizeConstraints,
+	                   &outNewContentRect);
 	_res = Py_BuildValue("bO&",
 	                     _rv,
-	                     PyMac_BuildRect, &newContentRect);
+	                     PyMac_BuildRect, &outNewContentRect);
 	return _res;
 }
 
@@ -1652,20 +1652,20 @@
 {
 	PyObject *_res = NULL;
 	Boolean _rv;
-	Point idealSize;
-	Rect idealStandardState;
+	Point inIdealSize;
+	Rect outIdealStandardState;
 #ifndef IsWindowInStandardState
 	PyMac_PRECHECK(IsWindowInStandardState);
 #endif
-	if (!PyArg_ParseTuple(_args, ""))
+	if (!PyArg_ParseTuple(_args, "O&",
+	                      PyMac_GetPoint, &inIdealSize))
 		return NULL;
 	_rv = IsWindowInStandardState(_self->ob_itself,
-	                              &idealSize,
-	                              &idealStandardState);
-	_res = Py_BuildValue("bO&O&",
+	                              &inIdealSize,
+	                              &outIdealStandardState);
+	_res = Py_BuildValue("bO&",
 	                     _rv,
-	                     PyMac_BuildPoint, idealSize,
-	                     PyMac_BuildRect, &idealStandardState);
+	                     PyMac_BuildRect, &outIdealStandardState);
 	return _res;
 }
 
@@ -1673,16 +1673,16 @@
 {
 	PyObject *_res = NULL;
 	OSStatus _err;
-	WindowPartCode partCode;
+	WindowPartCode inPartCode;
 	Point ioIdealSize;
 #ifndef ZoomWindowIdeal
 	PyMac_PRECHECK(ZoomWindowIdeal);
 #endif
 	if (!PyArg_ParseTuple(_args, "h",
-	                      &partCode))
+	                      &inPartCode))
 		return NULL;
 	_err = ZoomWindowIdeal(_self->ob_itself,
-	                       partCode,
+	                       inPartCode,
 	                       &ioIdealSize);
 	if (_err != noErr) return PyMac_Error(_err);
 	_res = Py_BuildValue("O&",
@@ -1694,17 +1694,17 @@
 {
 	PyObject *_res = NULL;
 	OSStatus _err;
-	Rect userState;
+	Rect outUserState;
 #ifndef GetWindowIdealUserState
 	PyMac_PRECHECK(GetWindowIdealUserState);
 #endif
 	if (!PyArg_ParseTuple(_args, ""))
 		return NULL;
 	_err = GetWindowIdealUserState(_self->ob_itself,
-	                               &userState);
+	                               &outUserState);
 	if (_err != noErr) return PyMac_Error(_err);
 	_res = Py_BuildValue("O&",
-	                     PyMac_BuildRect, &userState);
+	                     PyMac_BuildRect, &outUserState);
 	return _res;
 }
 
@@ -1712,15 +1712,15 @@
 {
 	PyObject *_res = NULL;
 	OSStatus _err;
-	Rect userState;
+	Rect inUserState;
 #ifndef SetWindowIdealUserState
 	PyMac_PRECHECK(SetWindowIdealUserState);
 #endif
 	if (!PyArg_ParseTuple(_args, "O&",
-	                      PyMac_GetRect, &userState))
+	                      PyMac_GetRect, &inUserState))
 		return NULL;
 	_err = SetWindowIdealUserState(_self->ob_itself,
-	                               &userState);
+	                               &inUserState);
 	if (_err != noErr) return PyMac_Error(_err);
 	Py_INCREF(Py_None);
 	_res = Py_None;
@@ -1997,6 +1997,21 @@
 	return _res;
 }
 
+static PyObject *WinObj_GetWindowStructurePort(WindowObject *_self, PyObject *_args)
+{
+	PyObject *_res = NULL;
+	CGrafPtr _rv;
+#ifndef GetWindowStructurePort
+	PyMac_PRECHECK(GetWindowStructurePort);
+#endif
+	if (!PyArg_ParseTuple(_args, ""))
+		return NULL;
+	_rv = GetWindowStructurePort(_self->ob_itself);
+	_res = Py_BuildValue("O&",
+	                     GrafObj_New, _rv);
+	return _res;
+}
+
 static PyObject *WinObj_GetWindowKind(WindowObject *_self, PyObject *_args)
 {
 	PyObject *_res = NULL;
@@ -2412,7 +2427,7 @@
 	{"GetWindowProxyFSSpec", (PyCFunction)WinObj_GetWindowProxyFSSpec, 1,
 	 PyDoc_STR("() -> (FSSpec outFile)")},
 	{"SetWindowProxyAlias", (PyCFunction)WinObj_SetWindowProxyAlias, 1,
-	 PyDoc_STR("(AliasHandle alias) -> None")},
+	 PyDoc_STR("(AliasHandle inAlias) -> None")},
 	{"GetWindowProxyAlias", (PyCFunction)WinObj_GetWindowProxyAlias, 1,
 	 PyDoc_STR("() -> (AliasHandle alias)")},
 	{"SetWindowProxyCreatorAndType", (PyCFunction)WinObj_SetWindowProxyCreatorAndType, 1,
@@ -2442,9 +2457,9 @@
 	{"HiliteWindowFrameForDrag", (PyCFunction)WinObj_HiliteWindowFrameForDrag, 1,
 	 PyDoc_STR("(Boolean hilited) -> None")},
 	{"TransitionWindow", (PyCFunction)WinObj_TransitionWindow, 1,
-	 PyDoc_STR("(WindowTransitionEffect effect, WindowTransitionAction action, Rect rect) -> None")},
+	 PyDoc_STR("(WindowTransitionEffect inEffect, WindowTransitionAction inAction, Rect inRect) -> None")},
 	{"TransitionWindowAndParent", (PyCFunction)WinObj_TransitionWindowAndParent, 1,
-	 PyDoc_STR("(WindowPtr parentWindow, WindowTransitionEffect effect, WindowTransitionAction action, Rect rect) -> None")},
+	 PyDoc_STR("(WindowPtr inParentWindow, WindowTransitionEffect inEffect, WindowTransitionAction inAction, Rect inRect) -> None")},
 	{"MacMoveWindow", (PyCFunction)WinObj_MacMoveWindow, 1,
 	 PyDoc_STR("(short hGlobal, short vGlobal, Boolean front) -> None")},
 	{"SizeWindow", (PyCFunction)WinObj_SizeWindow, 1,
@@ -2464,7 +2479,7 @@
 	{"GetWindowBounds", (PyCFunction)WinObj_GetWindowBounds, 1,
 	 PyDoc_STR("(WindowRegionCode regionCode) -> (Rect globalBounds)")},
 	{"ResizeWindow", (PyCFunction)WinObj_ResizeWindow, 1,
-	 PyDoc_STR("(Point startPoint, Rect sizeConstraints) -> (Boolean _rv, Rect newContentRect)")},
+	 PyDoc_STR("(Point inStartPoint, Rect inSizeConstraints) -> (Boolean _rv, Rect outNewContentRect)")},
 	{"SetWindowBounds", (PyCFunction)WinObj_SetWindowBounds, 1,
 	 PyDoc_STR("(WindowRegionCode regionCode, Rect globalBounds) -> None")},
 	{"RepositionWindow", (PyCFunction)WinObj_RepositionWindow, 1,
@@ -2472,13 +2487,13 @@
 	{"MoveWindowStructure", (PyCFunction)WinObj_MoveWindowStructure, 1,
 	 PyDoc_STR("(short hGlobal, short vGlobal) -> None")},
 	{"IsWindowInStandardState", (PyCFunction)WinObj_IsWindowInStandardState, 1,
-	 PyDoc_STR("() -> (Boolean _rv, Point idealSize, Rect idealStandardState)")},
+	 PyDoc_STR("(Point inIdealSize) -> (Boolean _rv, Rect outIdealStandardState)")},
 	{"ZoomWindowIdeal", (PyCFunction)WinObj_ZoomWindowIdeal, 1,
-	 PyDoc_STR("(WindowPartCode partCode) -> (Point ioIdealSize)")},
+	 PyDoc_STR("(WindowPartCode inPartCode) -> (Point ioIdealSize)")},
 	{"GetWindowIdealUserState", (PyCFunction)WinObj_GetWindowIdealUserState, 1,
-	 PyDoc_STR("() -> (Rect userState)")},
+	 PyDoc_STR("() -> (Rect outUserState)")},
 	{"SetWindowIdealUserState", (PyCFunction)WinObj_SetWindowIdealUserState, 1,
-	 PyDoc_STR("(Rect userState) -> None")},
+	 PyDoc_STR("(Rect inUserState) -> None")},
 	{"GetWindowGreatestAreaDevice", (PyCFunction)WinObj_GetWindowGreatestAreaDevice, 1,
 	 PyDoc_STR("(WindowRegionCode inRegion) -> (GDHandle outGreatestDevice, Rect outGreatestDeviceRect)")},
 	{"ConstrainWindowToScreen", (PyCFunction)WinObj_ConstrainWindowToScreen, 1,
@@ -2507,6 +2522,8 @@
 	 PyDoc_STR("(Point thePt) -> (Boolean _rv)")},
 	{"GetWindowPort", (PyCFunction)WinObj_GetWindowPort, 1,
 	 PyDoc_STR("() -> (CGrafPtr _rv)")},
+	{"GetWindowStructurePort", (PyCFunction)WinObj_GetWindowStructurePort, 1,
+	 PyDoc_STR("() -> (CGrafPtr _rv)")},
 	{"GetWindowKind", (PyCFunction)WinObj_GetWindowKind, 1,
 	 PyDoc_STR("() -> (short _rv)")},
 	{"IsWindowHilited", (PyCFunction)WinObj_IsWindowHilited, 1,
@@ -2998,7 +3015,7 @@
 	PyObject *_res = NULL;
 	OSStatus _err;
 	GDHandle inDevice;
-	Rect availableRect;
+	Rect outAvailableRect;
 #ifndef GetAvailableWindowPositioningBounds
 	PyMac_PRECHECK(GetAvailableWindowPositioningBounds);
 #endif
@@ -3006,10 +3023,10 @@
 	                      ResObj_Convert, &inDevice))
 		return NULL;
 	_err = GetAvailableWindowPositioningBounds(inDevice,
-	                                           &availableRect);
+	                                           &outAvailableRect);
 	if (_err != noErr) return PyMac_Error(_err);
 	_res = Py_BuildValue("O&",
-	                     PyMac_BuildRect, &availableRect);
+	                     PyMac_BuildRect, &outAvailableRect);
 	return _res;
 }
 
@@ -3166,7 +3183,7 @@
 	{"CollapseAllWindows", (PyCFunction)Win_CollapseAllWindows, 1,
 	 PyDoc_STR("(Boolean collapse) -> None")},
 	{"GetAvailableWindowPositioningBounds", (PyCFunction)Win_GetAvailableWindowPositioningBounds, 1,
-	 PyDoc_STR("(GDHandle inDevice) -> (Rect availableRect)")},
+	 PyDoc_STR("(GDHandle inDevice) -> (Rect outAvailableRect)")},
 	{"DisableScreenUpdates", (PyCFunction)Win_DisableScreenUpdates, 1,
 	 PyDoc_STR("() -> None")},
 	{"EnableScreenUpdates", (PyCFunction)Win_EnableScreenUpdates, 1,
diff --git a/Mac/Modules/win/winscan.py b/Mac/Modules/win/winscan.py
index 1aefbd3..6b08c00 100644
--- a/Mac/Modules/win/winscan.py
+++ b/Mac/Modules/win/winscan.py
@@ -35,6 +35,7 @@
 		self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n")
 		self.defsfile.write("false = 0\n")
 		self.defsfile.write("true = 1\n")
+		self.defsfile.write("kWindowNoConstrainAttribute = 0x80000000\n")
 
 	def makeblacklistnames(self):
 		return [
@@ -49,6 +50,7 @@
 			# Constants with funny definitions
 			'kMouseUpOutOfSlop',
 			'kAllWindowClasses',
+			'kWindowNoConstrainAttribute',
 			# OS8 only:
 			'GetAuxWin',
 			'GetWindowDataHandle',