The TNXDraw gworld argument is optional.

This commit is contained in:
Jack Jansen 2001-07-16 21:58:44 +00:00
parent e160fe13da
commit e85e4e43bd
3 changed files with 35 additions and 2 deletions

View file

@ -70,6 +70,20 @@ OptRectPtr_Convert(PyObject *v, Rect **p_itself)
return PyMac_GetRect(v, *p_itself);
}
/*
** Parse an optional GWorld
*/
static int
OptGWorldObj_Convert(PyObject *v, GWorldPtr *p_itself)
{
if (v == Py_None)
{
*p_itself = NULL;
return 1;
}
return GWorldObj_Convert(v, p_itself);
}
static PyObject *Mlte_Error;
@ -276,7 +290,7 @@ static PyObject *TXNObj_TXNDraw(TXNObjectObject *_self, PyObject *_args)
GWorldPtr iDrawPort;
PyMac_PRECHECK(TXNDraw);
if (!PyArg_ParseTuple(_args, "O&",
GWorldObj_Convert, &iDrawPort))
OptGWorldObj_Convert, &iDrawPort))
return NULL;
TXNDraw(_self->ob_itself,
iDrawPort);

View file

@ -116,7 +116,11 @@ MovieFileType = FOUR_CHAR_CODE('moov')
# The AdjustCursor region handle is optional
([("RgnHandle", "ioCursorRgn", "InMode")],
[("OptRgnHandle", "*", "*")])
[("OptRgnHandle", "*", "*")]),
# The GWorld for TXNDraw is optional
([('GWorldPtr', 'iDrawPort', 'InMode')],
[('OptGWorldPtr', '*', '*')]),
]
if __name__ == "__main__":

View file

@ -74,6 +74,20 @@ OptRectPtr_Convert(PyObject *v, Rect **p_itself)
return PyMac_GetRect(v, *p_itself);
}
/*
** Parse an optional GWorld
*/
static int
OptGWorldObj_Convert(PyObject *v, GWorldPtr *p_itself)
{
if (v == Py_None)
{
*p_itself = NULL;
return 1;
}
return GWorldObj_Convert(v, p_itself);
}
"""
initstuff = initstuff + """
@ -109,6 +123,7 @@ DragTrackingMessage = Type("DragTrackingMessage", "h")
RgnHandle = OpaqueByValueType("RgnHandle", "ResObj")
OptRgnHandle = OpaqueByValueType("RgnHandle", "OptResObj")
GWorldPtr = OpaqueByValueType("GWorldPtr", "GWorldObj")
OptGWorldPtr = OpaqueByValueType("GWorldPtr", "OptGWorldObj")
MlteInBuffer = VarInputBufferType('void *', 'ByteCount', 'l')
OptFSSpecPtr = OpaqueByValueType("FSSpec *", "OptFSSpecPtr")