Added {Get,Set}WindowUserData methods.
diff --git a/Mac/Modules/win/Winmodule.c b/Mac/Modules/win/Winmodule.c
index 58da8fd..dd23ab0 100644
--- a/Mac/Modules/win/Winmodule.c
+++ b/Mac/Modules/win/Winmodule.c
@@ -46,9 +46,6 @@
 
 #define resNotFound -192 /* Can't include <Errors.h> because of Python's "errors.h" */
 
-#ifdef HAVE_UNIVERSAL_HEADERS
-#define WindowPeek WindowPtr
-#endif
 
 static PyObject *Win_Error;
 
@@ -967,6 +964,36 @@
 	return _res;
 }
 
+static PyObject *WinObj_GetWindowDataHandle(_self, _args)
+	WindowObject *_self;
+	PyObject *_args;
+{
+	PyObject *_res = NULL;
+	Handle _rv;
+	if (!PyArg_ParseTuple(_args, ""))
+		return NULL;
+	_rv = GetWindowDataHandle(_self->ob_itself);
+	_res = Py_BuildValue("O&",
+	                     ResObj_New, _rv);
+	return _res;
+}
+
+static PyObject *WinObj_SetWindowDataHandle(_self, _args)
+	WindowObject *_self;
+	PyObject *_args;
+{
+	PyObject *_res = NULL;
+	Handle data;
+	if (!PyArg_ParseTuple(_args, "O&",
+	                      ResObj_Convert, &data))
+		return NULL;
+	SetWindowDataHandle(_self->ob_itself,
+	                    data);
+	Py_INCREF(Py_None);
+	_res = Py_None;
+	return _res;
+}
+
 static PyObject *WinObj_CloseWindow(_self, _args)
 	WindowObject *_self;
 	PyObject *_args;
@@ -1128,6 +1155,10 @@
 	 "(Rect r) -> None"},
 	{"SetWindowUserState", (PyCFunction)WinObj_SetWindowUserState, 1,
 	 "(Rect r) -> None"},
+	{"GetWindowDataHandle", (PyCFunction)WinObj_GetWindowDataHandle, 1,
+	 "() -> (Handle _rv)"},
+	{"SetWindowDataHandle", (PyCFunction)WinObj_SetWindowDataHandle, 1,
+	 "(Handle data) -> None"},
 	{"CloseWindow", (PyCFunction)WinObj_CloseWindow, 1,
 	 "() -> None"},
 	{"MoveWindow", (PyCFunction)WinObj_MoveWindow, 1,
diff --git a/Mac/Modules/win/winedit.py b/Mac/Modules/win/winedit.py
index b7c2a97..6a81b9b 100644
--- a/Mac/Modules/win/winedit.py
+++ b/Mac/Modules/win/winedit.py
@@ -96,6 +96,16 @@
 )
 methods.append(f)
 
+f = Method(Handle, 'GetWindowDataHandle',
+	(WindowRef, 'theWindow', InMode),
+)
+methods.append(f)
+f = Method(void, 'SetWindowDataHandle',
+	(WindowRef, 'theWindow', InMode),
+	(Handle, 'data', InMode),
+)
+methods.append(f)
+
 # These have Mac prefixed to their name in the 3.1 universal headers,
 # so we add the old/real names by hand.
 f = Method(void, 'CloseWindow',
diff --git a/Mac/Modules/win/winsupport.py b/Mac/Modules/win/winsupport.py
index c7e1f7a..6150819 100644
--- a/Mac/Modules/win/winsupport.py
+++ b/Mac/Modules/win/winsupport.py
@@ -42,9 +42,6 @@
 
 #define resNotFound -192 /* Can't include <Errors.h> because of Python's "errors.h" */
 
-#ifdef HAVE_UNIVERSAL_HEADERS
-#define WindowPeek WindowPtr
-#endif
 """
 
 finalstuff = finalstuff + """