Commit ff75c214 authored by Jack Jansen's avatar Jack Jansen

Adapted to Universal Headers 3.4: new refcontype and use UPP names in stead of...

Adapted to Universal Headers 3.4: new refcontype and use UPP names in stead of Proc names for callback creation.
parent 5daef313
......@@ -1204,9 +1204,14 @@ static PyMethodDef AE_methods[] = {
};
#if UNIVERSAL_INTERFACES_VERSION >= 0x0340
typedef long refcontype;
#else
typedef unsigned long refcontype;
#endif
static pascal OSErr
GenericEventHandler(const AppleEvent *request, AppleEvent *reply, unsigned long refcon)
GenericEventHandler(const AppleEvent *request, AppleEvent *reply, refcontype refcon)
{
PyObject *handler = (PyObject *)refcon;
AEDescObject *requestObject, *replyObject;
......@@ -1244,7 +1249,7 @@ void initAE(void)
upp_AEIdleProc = NewAEIdleUPP(AEIdleProc);
upp_GenericEventHandler = NewAEEventHandlerUPP(GenericEventHandler);
upp_GenericEventHandler = NewAEEventHandlerUPP(&GenericEventHandler);
PyMac_INIT_TOOLBOX_OBJECT_NEW(AEDesc *, AEDesc_New);
PyMac_INIT_TOOLBOX_OBJECT_CONVERT(AEDesc, AEDesc_Convert);
......
......@@ -116,8 +116,14 @@ AEIdleUPP upp_AEIdleProc;
"""
finalstuff = finalstuff + """
#if UNIVERSAL_INTERFACES_VERSION >= 0x0340
typedef long refcontype;
#else
typedef unsigned long refcontype;
#endif
static pascal OSErr
GenericEventHandler(const AppleEvent *request, AppleEvent *reply, unsigned long refcon)
GenericEventHandler(const AppleEvent *request, AppleEvent *reply, refcontype refcon)
{
PyObject *handler = (PyObject *)refcon;
AEDescObject *requestObject, *replyObject;
......@@ -149,7 +155,11 @@ GenericEventHandler(const AppleEvent *request, AppleEvent *reply, unsigned long
initstuff = initstuff + """
upp_AEIdleProc = NewAEIdleUPP(AEIdleProc);
#if UNIVERSAL_INTERFACES_VERSION >= 0x0340
upp_GenericEventHandler = NewAEEventHandlerUPP(&GenericEventHandler);
#else
upp_GenericEventHandler = NewAEEventHandlerUPP(GenericEventHandler);
#endif
PyMac_INIT_TOOLBOX_OBJECT_NEW(AEDesc *, AEDesc_New);
PyMac_INIT_TOOLBOX_OBJECT_CONVERT(AEDesc, AEDesc_Convert);
"""
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment