]> granicus.if.org Git - python/commitdiff
Fixed callback handling on 68K machines.
authorJack Jansen <jack.jansen@cwi.nl>
Mon, 20 May 1996 11:30:45 +0000 (11:30 +0000)
committerJack Jansen <jack.jansen@cwi.nl>
Mon, 20 May 1996 11:30:45 +0000 (11:30 +0000)
Mac/Modules/waste/wastemodule.c
Mac/Modules/waste/wastesupport.py

index 22fd22b96e593a7408c8bdb71b44467c0159fcc9..9c62d1c91e9c1ea41fa7a2a587f0943004ccf770 100644 (file)
@@ -119,7 +119,10 @@ LongPt_New(LongPt *p)
 
 /* Stuff for the callbacks: */
 static PyObject *callbackdict;
-UniversalProcPtr upp_new_handler, upp_dispose_handler, upp_draw_handler, upp_click_handler;
+WENewObjectUPP upp_new_handler;
+WEDisposeObjectUPP upp_dispose_handler;
+WEDrawObjectUPP upp_draw_handler;
+WEClickObjectUPP upp_click_handler;
 
 static OSErr
 any_handler(WESelector what, WEObjectReference who, PyObject *args, PyObject **rv)
@@ -1826,10 +1829,10 @@ static PyObject *waste_WEInstallObjectHandler(_self, _args)
                                &py_handler,
                                ExistingwasteObj_New, &we) ) return NULL;
                                
-               if ( selector == weNewHandler ) handler = upp_new_handler;
-               else if ( selector == weDisposeHandler ) handler = upp_dispose_handler;
-               else if ( selector == weDrawHandler ) handler = upp_draw_handler;
-               else if ( selector == weClickHandler ) handler = upp_click_handler;
+               if ( selector == weNewHandler ) handler = (UniversalProcPtr)upp_new_handler;
+               else if ( selector == weDisposeHandler ) handler = (UniversalProcPtr)upp_dispose_handler;
+               else if ( selector == weDrawHandler ) handler = (UniversalProcPtr)upp_draw_handler;
+               else if ( selector == weClickHandler ) handler = (UniversalProcPtr)upp_click_handler;
                else return PyMac_Error(weUndefinedSelectorErr);
                                
                if ((key = Py_BuildValue("O&O&", 
@@ -1914,9 +1917,9 @@ void initwaste()
                if (callbackdict == NULL || PyDict_SetItemString(d, "callbacks", callbackdict) != 0)
                        Py_FatalError("can't initialize Waste.callbackdict");
                upp_new_handler = NewWENewObjectProc(my_new_handler);
-               upp_dispose_handler = NewWENewObjectProc(my_dispose_handler);
-               upp_draw_handler = NewWENewObjectProc(my_draw_handler);
-               upp_click_handler = NewWENewObjectProc(my_click_handler);
+               upp_dispose_handler = NewWEDisposeObjectProc(my_dispose_handler);
+               upp_draw_handler = NewWEDrawObjectProc(my_draw_handler);
+               upp_click_handler = NewWEClickObjectProc(my_click_handler);
 
 
 }
index ad18d26e258970b9b084e30cbb2b47ecec86e0d3..3d7c1e7d176daa3930324d4d6c202af7972a9727 100644 (file)
@@ -126,7 +126,10 @@ LongPt_New(LongPt *p)
 
 /* Stuff for the callbacks: */
 static PyObject *callbackdict;
-UniversalProcPtr upp_new_handler, upp_dispose_handler, upp_draw_handler, upp_click_handler;
+WENewObjectUPP upp_new_handler;
+WEDisposeObjectUPP upp_dispose_handler;
+WEDrawObjectUPP upp_draw_handler;
+WEClickObjectUPP upp_click_handler;
 
 static OSErr
 any_handler(WESelector what, WEObjectReference who, PyObject *args, PyObject **rv)
@@ -279,9 +282,9 @@ variablestuff = """
        if (callbackdict == NULL || PyDict_SetItemString(d, "callbacks", callbackdict) != 0)
                Py_FatalError("can't initialize Waste.callbackdict");
        upp_new_handler = NewWENewObjectProc(my_new_handler);
-       upp_dispose_handler = NewWENewObjectProc(my_dispose_handler);
-       upp_draw_handler = NewWENewObjectProc(my_draw_handler);
-       upp_click_handler = NewWENewObjectProc(my_click_handler);
+       upp_dispose_handler = NewWEDisposeObjectProc(my_dispose_handler);
+       upp_draw_handler = NewWEDrawObjectProc(my_draw_handler);
+       upp_click_handler = NewWEClickObjectProc(my_click_handler);
 """
 
 
@@ -363,10 +366,10 @@ inshandler_body = """
                        &py_handler,
                        ExistingwasteObj_New, &we) ) return NULL;
                        
-       if ( selector == weNewHandler ) handler = upp_new_handler;
-       else if ( selector == weDisposeHandler ) handler = upp_dispose_handler;
-       else if ( selector == weDrawHandler ) handler = upp_draw_handler;
-       else if ( selector == weClickHandler ) handler = upp_click_handler;
+       if ( selector == weNewHandler ) handler = (UniversalProcPtr)upp_new_handler;
+       else if ( selector == weDisposeHandler ) handler = (UniversalProcPtr)upp_dispose_handler;
+       else if ( selector == weDrawHandler ) handler = (UniversalProcPtr)upp_draw_handler;
+       else if ( selector == weClickHandler ) handler = (UniversalProcPtr)upp_click_handler;
        else return PyMac_Error(weUndefinedSelectorErr);
                        
        if ((key = Py_BuildValue("O&O&",