Today's Carbon Toolbox addition: CarbonEvt.TrackMouseLocation() and friends.
diff --git a/Mac/Modules/carbonevt/CarbonEvtscan.py b/Mac/Modules/carbonevt/CarbonEvtscan.py
index 37faa54..3539196 100644
--- a/Mac/Modules/carbonevt/CarbonEvtscan.py
+++ b/Mac/Modules/carbonevt/CarbonEvtscan.py
@@ -63,9 +63,9 @@
 		return [
 			"sHandler",
 			"MacCreateEvent",
-			"TrackMouseLocationWithOptions",
-			"TrackMouseLocation",
-			"TrackMouseRegion",
+#			"TrackMouseLocationWithOptions",
+#			"TrackMouseLocation",
+#			"TrackMouseRegion",
 			"RegisterToolboxObjectClass",
 			"UnregisterToolboxObjectClass",
 			"ProcessHICommand",
diff --git a/Mac/Modules/carbonevt/CarbonEvtsupport.py b/Mac/Modules/carbonevt/CarbonEvtsupport.py
index 8ed13eb..cbaca2a 100644
--- a/Mac/Modules/carbonevt/CarbonEvtsupport.py
+++ b/Mac/Modules/carbonevt/CarbonEvtsupport.py
@@ -68,6 +68,11 @@
 		OutRbrace()
 
 
+RgnHandle = OpaqueByValueType("RgnHandle", "ResObj")
+GrafPtr = OpaqueByValueType("GrafPtr", "GrafObj")
+MouseTrackingResult = UInt16
+
+
 includestuff = r"""
 #ifdef WITHOUT_FRAMEWORKS
 #include <CarbonEvents.h>
diff --git a/Mac/Modules/carbonevt/_CarbonEvtmodule.c b/Mac/Modules/carbonevt/_CarbonEvtmodule.c
index 8488a2f..2099cff 100755
--- a/Mac/Modules/carbonevt/_CarbonEvtmodule.c
+++ b/Mac/Modules/carbonevt/_CarbonEvtmodule.c
@@ -1390,6 +1390,78 @@
 	return _res;
 }
 
+static PyObject *CarbonEvents_TrackMouseLocation(PyObject *_self, PyObject *_args)
+{
+	PyObject *_res = NULL;
+	OSStatus _err;
+	GrafPtr inPort;
+	Point outPt;
+	UInt16 outResult;
+	if (!PyArg_ParseTuple(_args, "O&",
+	                      GrafObj_Convert, &inPort))
+		return NULL;
+	_err = TrackMouseLocation(inPort,
+	                          &outPt,
+	                          &outResult);
+	if (_err != noErr) return PyMac_Error(_err);
+	_res = Py_BuildValue("O&H",
+	                     PyMac_BuildPoint, outPt,
+	                     outResult);
+	return _res;
+}
+
+static PyObject *CarbonEvents_TrackMouseLocationWithOptions(PyObject *_self, PyObject *_args)
+{
+	PyObject *_res = NULL;
+	OSStatus _err;
+	GrafPtr inPort;
+	OptionBits inOptions;
+	double inTimeout;
+	Point outPt;
+	UInt32 outModifiers;
+	UInt16 outResult;
+	if (!PyArg_ParseTuple(_args, "O&ld",
+	                      GrafObj_Convert, &inPort,
+	                      &inOptions,
+	                      &inTimeout))
+		return NULL;
+	_err = TrackMouseLocationWithOptions(inPort,
+	                                     inOptions,
+	                                     inTimeout,
+	                                     &outPt,
+	                                     &outModifiers,
+	                                     &outResult);
+	if (_err != noErr) return PyMac_Error(_err);
+	_res = Py_BuildValue("O&lH",
+	                     PyMac_BuildPoint, outPt,
+	                     outModifiers,
+	                     outResult);
+	return _res;
+}
+
+static PyObject *CarbonEvents_TrackMouseRegion(PyObject *_self, PyObject *_args)
+{
+	PyObject *_res = NULL;
+	OSStatus _err;
+	GrafPtr inPort;
+	RgnHandle inRegion;
+	Boolean ioWasInRgn;
+	UInt16 outResult;
+	if (!PyArg_ParseTuple(_args, "O&O&",
+	                      GrafObj_Convert, &inPort,
+	                      ResObj_Convert, &inRegion))
+		return NULL;
+	_err = TrackMouseRegion(inPort,
+	                        inRegion,
+	                        &ioWasInRgn,
+	                        &outResult);
+	if (_err != noErr) return PyMac_Error(_err);
+	_res = Py_BuildValue("bH",
+	                     ioWasInRgn,
+	                     outResult);
+	return _res;
+}
+
 static PyObject *CarbonEvents_GetLastUserEventTime(PyObject *_self, PyObject *_args)
 {
 	PyObject *_res = NULL;
@@ -1718,6 +1790,12 @@
 	 "() -> (EventQueueRef _rv)"},
 	{"GetCurrentEventTime", (PyCFunction)CarbonEvents_GetCurrentEventTime, 1,
 	 "() -> (double _rv)"},
+	{"TrackMouseLocation", (PyCFunction)CarbonEvents_TrackMouseLocation, 1,
+	 "(GrafPtr inPort) -> (Point outPt, UInt16 outResult)"},
+	{"TrackMouseLocationWithOptions", (PyCFunction)CarbonEvents_TrackMouseLocationWithOptions, 1,
+	 "(GrafPtr inPort, OptionBits inOptions, double inTimeout) -> (Point outPt, UInt32 outModifiers, UInt16 outResult)"},
+	{"TrackMouseRegion", (PyCFunction)CarbonEvents_TrackMouseRegion, 1,
+	 "(GrafPtr inPort, RgnHandle inRegion) -> (Boolean ioWasInRgn, UInt16 outResult)"},
 	{"GetLastUserEventTime", (PyCFunction)CarbonEvents_GetLastUserEventTime, 1,
 	 "() -> (double _rv)"},
 	{"GetWindowEventTarget", (PyCFunction)CarbonEvents_GetWindowEventTarget, 1,