Commit 870a9cea authored by Jack Jansen's avatar Jack Jansen

StdFilterProc() uses InOut parameters.

parent a2116508
...@@ -14,9 +14,9 @@ ...@@ -14,9 +14,9 @@
/* Macro to test whether a weak-loaded CFM function exists */ /* Macro to test whether a weak-loaded CFM function exists */
#define PyMac_PRECHECK(rtn) do { if ( &rtn == NULL ) {\ #define PyMac_PRECHECK(rtn) do { if ( &rtn == NULL ) {\
PyErr_SetString(PyExc_NotImplementedError, \ PyErr_SetString(PyExc_NotImplementedError, \
"Not available in this shared library/OS version"); \ "Not available in this shared library/OS version"); \
return NULL; \ return NULL; \
}} while(0) }} while(0)
...@@ -502,7 +502,9 @@ static PyObject *DlgObj_StdFilterProc(DialogObject *_self, PyObject *_args) ...@@ -502,7 +502,9 @@ static PyObject *DlgObj_StdFilterProc(DialogObject *_self, PyObject *_args)
#ifndef StdFilterProc #ifndef StdFilterProc
PyMac_PRECHECK(StdFilterProc); PyMac_PRECHECK(StdFilterProc);
#endif #endif
if (!PyArg_ParseTuple(_args, "")) if (!PyArg_ParseTuple(_args, "O&h",
PyMac_GetEventRecord, &event,
&itemHit))
return NULL; return NULL;
_rv = StdFilterProc(_self->ob_itself, _rv = StdFilterProc(_self->ob_itself,
&event, &event,
...@@ -903,7 +905,7 @@ static PyMethodDef DlgObj_methods[] = { ...@@ -903,7 +905,7 @@ static PyMethodDef DlgObj_methods[] = {
{"RemoveDialogItems", (PyCFunction)DlgObj_RemoveDialogItems, 1, {"RemoveDialogItems", (PyCFunction)DlgObj_RemoveDialogItems, 1,
PyDoc_STR("(DialogItemIndex itemNo, DialogItemIndex amountToRemove, Boolean disposeItemData) -> None")}, PyDoc_STR("(DialogItemIndex itemNo, DialogItemIndex amountToRemove, Boolean disposeItemData) -> None")},
{"StdFilterProc", (PyCFunction)DlgObj_StdFilterProc, 1, {"StdFilterProc", (PyCFunction)DlgObj_StdFilterProc, 1,
PyDoc_STR("() -> (Boolean _rv, EventRecord event, DialogItemIndex itemHit)")}, PyDoc_STR("(EventRecord event, DialogItemIndex itemHit) -> (Boolean _rv, EventRecord event, DialogItemIndex itemHit)")},
{"SetDialogDefaultItem", (PyCFunction)DlgObj_SetDialogDefaultItem, 1, {"SetDialogDefaultItem", (PyCFunction)DlgObj_SetDialogDefaultItem, 1,
PyDoc_STR("(DialogItemIndex newItem) -> None")}, PyDoc_STR("(DialogItemIndex newItem) -> None")},
{"SetDialogCancelItem", (PyCFunction)DlgObj_SetDialogCancelItem, 1, {"SetDialogCancelItem", (PyCFunction)DlgObj_SetDialogCancelItem, 1,
......
...@@ -99,6 +99,13 @@ class MyScanner(Scanner): ...@@ -99,6 +99,13 @@ class MyScanner(Scanner):
[("ExistingWindowPtr", "*", "*")]), [("ExistingWindowPtr", "*", "*")]),
([("WindowPtr", "*", "ReturnMode")], ([("WindowPtr", "*", "ReturnMode")],
[("ExistingWindowPtr", "*", "*")]), [("ExistingWindowPtr", "*", "*")]),
# StdFilterProc
([('EventRecord', 'event', 'OutMode'),
('DialogItemIndex', 'itemHit', 'OutMode')],
[('EventRecord', 'event', 'InOutMode'),
('DialogItemIndex', 'itemHit', 'InOutMode')])
] ]
def writeinitialdefs(self): def writeinitialdefs(self):
......
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