mirror of
				https://github.com/python/cpython.git
				synced 2025-10-30 18:07:37 +00:00 
			
		
		
		
	 0b565a6e42
			
		
	
	
		0b565a6e42
		
	
	
	
	
		
			
			a real subtype of Cm.ComponentInstance right now, it turns out that is too difficult. - OSA.OSAComponentInstance initializer does accept a Cm.ComponentInstance instance, though, so at least things are becoming useable.
		
			
				
	
	
		
			1234 lines
		
	
	
	
		
			38 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			1234 lines
		
	
	
	
		
			38 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| 
 | |
| /* ========================== Module _OSA =========================== */
 | |
| 
 | |
| #include "Python.h"
 | |
| 
 | |
| 
 | |
| 
 | |
| #include "pymactoolbox.h"
 | |
| 
 | |
| /* Macro to test whether a weak-loaded CFM function exists */
 | |
| #define PyMac_PRECHECK(rtn) do { if ( &rtn == NULL )  {\
 | |
|         PyErr_SetString(PyExc_NotImplementedError, \
 | |
|         "Not available in this shared library/OS version"); \
 | |
|         return NULL; \
 | |
|     }} while(0)
 | |
| 
 | |
| 
 | |
| #if PY_VERSION_HEX < 0x02040000
 | |
| PyObject *PyMac_GetOSErrException(void);
 | |
| #endif
 | |
| #include <Carbon/Carbon.h>
 | |
| 
 | |
| #ifdef USE_TOOLBOX_OBJECT_GLUE
 | |
| extern PyObject *_OSAObj_New(ComponentInstance);
 | |
| extern int _OSAObj_Convert(PyObject *, ComponentInstance *);
 | |
| 
 | |
| #define OSAObj_New _OSAObj_New
 | |
| #define OSAObj_Convert _OSAObj_Convert
 | |
| #endif
 | |
| 
 | |
| static PyObject *OSA_Error;
 | |
| 
 | |
| /* ---------------- Object type OSAComponentInstance ---------------- */
 | |
| 
 | |
| PyTypeObject OSAComponentInstance_Type;
 | |
| 
 | |
| #define OSAObj_Check(x) ((x)->ob_type == &OSAComponentInstance_Type || PyObject_TypeCheck((x), &OSAComponentInstance_Type))
 | |
| 
 | |
| typedef struct OSAComponentInstanceObject {
 | |
| 	PyObject_HEAD
 | |
| 	ComponentInstance ob_itself;
 | |
| } OSAComponentInstanceObject;
 | |
| 
 | |
| PyObject *OSAObj_New(ComponentInstance itself)
 | |
| {
 | |
| 	OSAComponentInstanceObject *it;
 | |
| 	if (itself == NULL) {
 | |
| 						PyErr_SetString(OSA_Error,"NULL ComponentInstance");
 | |
| 						return NULL;
 | |
| 					}
 | |
| 	it = PyObject_NEW(OSAComponentInstanceObject, &OSAComponentInstance_Type);
 | |
| 	if (it == NULL) return NULL;
 | |
| 	it->ob_itself = itself;
 | |
| 	return (PyObject *)it;
 | |
| }
 | |
| int OSAObj_Convert(PyObject *v, ComponentInstance *p_itself)
 | |
| {
 | |
| 
 | |
| 				if (CmpInstObj_Convert(v, p_itself))
 | |
| 					return 1;
 | |
| 				PyErr_Clear();
 | |
| 				
 | |
| 	if (!OSAObj_Check(v))
 | |
| 	{
 | |
| 		PyErr_SetString(PyExc_TypeError, "OSAComponentInstance required");
 | |
| 		return 0;
 | |
| 	}
 | |
| 	*p_itself = ((OSAComponentInstanceObject *)v)->ob_itself;
 | |
| 	return 1;
 | |
| }
 | |
| 
 | |
| static void OSAObj_dealloc(OSAComponentInstanceObject *self)
 | |
| {
 | |
| 	/* Cleanup of self->ob_itself goes here */
 | |
| 	self->ob_type->tp_free((PyObject *)self);
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSALoad(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	AEDesc scriptData;
 | |
| 	long modeFlags;
 | |
| 	OSAID resultingScriptID;
 | |
| #ifndef OSALoad
 | |
| 	PyMac_PRECHECK(OSALoad);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "O&l",
 | |
| 	                      AEDesc_Convert, &scriptData,
 | |
| 	                      &modeFlags))
 | |
| 		return NULL;
 | |
| 	_err = OSALoad(_self->ob_itself,
 | |
| 	               &scriptData,
 | |
| 	               modeFlags,
 | |
| 	               &resultingScriptID);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("l",
 | |
| 	                     resultingScriptID);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSAStore(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	OSAID scriptID;
 | |
| 	DescType desiredType;
 | |
| 	long modeFlags;
 | |
| 	AEDesc resultingScriptData;
 | |
| #ifndef OSAStore
 | |
| 	PyMac_PRECHECK(OSAStore);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "lO&l",
 | |
| 	                      &scriptID,
 | |
| 	                      PyMac_GetOSType, &desiredType,
 | |
| 	                      &modeFlags))
 | |
| 		return NULL;
 | |
| 	_err = OSAStore(_self->ob_itself,
 | |
| 	                scriptID,
 | |
| 	                desiredType,
 | |
| 	                modeFlags,
 | |
| 	                &resultingScriptData);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("O&",
 | |
| 	                     AEDesc_New, &resultingScriptData);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSAExecute(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	OSAID compiledScriptID;
 | |
| 	OSAID contextID;
 | |
| 	long modeFlags;
 | |
| 	OSAID resultingScriptValueID;
 | |
| #ifndef OSAExecute
 | |
| 	PyMac_PRECHECK(OSAExecute);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "lll",
 | |
| 	                      &compiledScriptID,
 | |
| 	                      &contextID,
 | |
| 	                      &modeFlags))
 | |
| 		return NULL;
 | |
| 	_err = OSAExecute(_self->ob_itself,
 | |
| 	                  compiledScriptID,
 | |
| 	                  contextID,
 | |
| 	                  modeFlags,
 | |
| 	                  &resultingScriptValueID);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("l",
 | |
| 	                     resultingScriptValueID);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSADisplay(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	OSAID scriptValueID;
 | |
| 	DescType desiredType;
 | |
| 	long modeFlags;
 | |
| 	AEDesc resultingText;
 | |
| #ifndef OSADisplay
 | |
| 	PyMac_PRECHECK(OSADisplay);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "lO&l",
 | |
| 	                      &scriptValueID,
 | |
| 	                      PyMac_GetOSType, &desiredType,
 | |
| 	                      &modeFlags))
 | |
| 		return NULL;
 | |
| 	_err = OSADisplay(_self->ob_itself,
 | |
| 	                  scriptValueID,
 | |
| 	                  desiredType,
 | |
| 	                  modeFlags,
 | |
| 	                  &resultingText);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("O&",
 | |
| 	                     AEDesc_New, &resultingText);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSAScriptError(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	OSType selector;
 | |
| 	DescType desiredType;
 | |
| 	AEDesc resultingErrorDescription;
 | |
| #ifndef OSAScriptError
 | |
| 	PyMac_PRECHECK(OSAScriptError);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "O&O&",
 | |
| 	                      PyMac_GetOSType, &selector,
 | |
| 	                      PyMac_GetOSType, &desiredType))
 | |
| 		return NULL;
 | |
| 	_err = OSAScriptError(_self->ob_itself,
 | |
| 	                      selector,
 | |
| 	                      desiredType,
 | |
| 	                      &resultingErrorDescription);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("O&",
 | |
| 	                     AEDesc_New, &resultingErrorDescription);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSADispose(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	OSAID scriptID;
 | |
| #ifndef OSADispose
 | |
| 	PyMac_PRECHECK(OSADispose);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "l",
 | |
| 	                      &scriptID))
 | |
| 		return NULL;
 | |
| 	_err = OSADispose(_self->ob_itself,
 | |
| 	                  scriptID);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	Py_INCREF(Py_None);
 | |
| 	_res = Py_None;
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSASetScriptInfo(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	OSAID scriptID;
 | |
| 	OSType selector;
 | |
| 	long value;
 | |
| #ifndef OSASetScriptInfo
 | |
| 	PyMac_PRECHECK(OSASetScriptInfo);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "lO&l",
 | |
| 	                      &scriptID,
 | |
| 	                      PyMac_GetOSType, &selector,
 | |
| 	                      &value))
 | |
| 		return NULL;
 | |
| 	_err = OSASetScriptInfo(_self->ob_itself,
 | |
| 	                        scriptID,
 | |
| 	                        selector,
 | |
| 	                        value);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	Py_INCREF(Py_None);
 | |
| 	_res = Py_None;
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSAGetScriptInfo(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	OSAID scriptID;
 | |
| 	OSType selector;
 | |
| 	long result;
 | |
| #ifndef OSAGetScriptInfo
 | |
| 	PyMac_PRECHECK(OSAGetScriptInfo);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "lO&",
 | |
| 	                      &scriptID,
 | |
| 	                      PyMac_GetOSType, &selector))
 | |
| 		return NULL;
 | |
| 	_err = OSAGetScriptInfo(_self->ob_itself,
 | |
| 	                        scriptID,
 | |
| 	                        selector,
 | |
| 	                        &result);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("l",
 | |
| 	                     result);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSAScriptingComponentName(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	AEDesc resultingScriptingComponentName;
 | |
| #ifndef OSAScriptingComponentName
 | |
| 	PyMac_PRECHECK(OSAScriptingComponentName);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, ""))
 | |
| 		return NULL;
 | |
| 	_err = OSAScriptingComponentName(_self->ob_itself,
 | |
| 	                                 &resultingScriptingComponentName);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("O&",
 | |
| 	                     AEDesc_New, &resultingScriptingComponentName);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSACompile(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	AEDesc sourceData;
 | |
| 	long modeFlags;
 | |
| 	OSAID previousAndResultingScriptID;
 | |
| #ifndef OSACompile
 | |
| 	PyMac_PRECHECK(OSACompile);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "O&l",
 | |
| 	                      AEDesc_Convert, &sourceData,
 | |
| 	                      &modeFlags))
 | |
| 		return NULL;
 | |
| 	_err = OSACompile(_self->ob_itself,
 | |
| 	                  &sourceData,
 | |
| 	                  modeFlags,
 | |
| 	                  &previousAndResultingScriptID);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("l",
 | |
| 	                     previousAndResultingScriptID);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSACopyID(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	OSAID fromID;
 | |
| 	OSAID toID;
 | |
| #ifndef OSACopyID
 | |
| 	PyMac_PRECHECK(OSACopyID);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "l",
 | |
| 	                      &fromID))
 | |
| 		return NULL;
 | |
| 	_err = OSACopyID(_self->ob_itself,
 | |
| 	                 fromID,
 | |
| 	                 &toID);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("l",
 | |
| 	                     toID);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSAGetSource(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	OSAID scriptID;
 | |
| 	DescType desiredType;
 | |
| 	AEDesc resultingSourceData;
 | |
| #ifndef OSAGetSource
 | |
| 	PyMac_PRECHECK(OSAGetSource);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "lO&",
 | |
| 	                      &scriptID,
 | |
| 	                      PyMac_GetOSType, &desiredType))
 | |
| 		return NULL;
 | |
| 	_err = OSAGetSource(_self->ob_itself,
 | |
| 	                    scriptID,
 | |
| 	                    desiredType,
 | |
| 	                    &resultingSourceData);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("O&",
 | |
| 	                     AEDesc_New, &resultingSourceData);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSACoerceFromDesc(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	AEDesc scriptData;
 | |
| 	long modeFlags;
 | |
| 	OSAID resultingScriptID;
 | |
| #ifndef OSACoerceFromDesc
 | |
| 	PyMac_PRECHECK(OSACoerceFromDesc);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "O&l",
 | |
| 	                      AEDesc_Convert, &scriptData,
 | |
| 	                      &modeFlags))
 | |
| 		return NULL;
 | |
| 	_err = OSACoerceFromDesc(_self->ob_itself,
 | |
| 	                         &scriptData,
 | |
| 	                         modeFlags,
 | |
| 	                         &resultingScriptID);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("l",
 | |
| 	                     resultingScriptID);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSACoerceToDesc(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	OSAID scriptID;
 | |
| 	DescType desiredType;
 | |
| 	long modeFlags;
 | |
| 	AEDesc result;
 | |
| #ifndef OSACoerceToDesc
 | |
| 	PyMac_PRECHECK(OSACoerceToDesc);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "lO&l",
 | |
| 	                      &scriptID,
 | |
| 	                      PyMac_GetOSType, &desiredType,
 | |
| 	                      &modeFlags))
 | |
| 		return NULL;
 | |
| 	_err = OSACoerceToDesc(_self->ob_itself,
 | |
| 	                       scriptID,
 | |
| 	                       desiredType,
 | |
| 	                       modeFlags,
 | |
| 	                       &result);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("O&",
 | |
| 	                     AEDesc_New, &result);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSASetDefaultTarget(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	AEAddressDesc target;
 | |
| #ifndef OSASetDefaultTarget
 | |
| 	PyMac_PRECHECK(OSASetDefaultTarget);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "O&",
 | |
| 	                      AEDesc_Convert, &target))
 | |
| 		return NULL;
 | |
| 	_err = OSASetDefaultTarget(_self->ob_itself,
 | |
| 	                           &target);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	Py_INCREF(Py_None);
 | |
| 	_res = Py_None;
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSAStartRecording(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	OSAID compiledScriptToModifyID;
 | |
| #ifndef OSAStartRecording
 | |
| 	PyMac_PRECHECK(OSAStartRecording);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, ""))
 | |
| 		return NULL;
 | |
| 	_err = OSAStartRecording(_self->ob_itself,
 | |
| 	                         &compiledScriptToModifyID);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("l",
 | |
| 	                     compiledScriptToModifyID);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSAStopRecording(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	OSAID compiledScriptID;
 | |
| #ifndef OSAStopRecording
 | |
| 	PyMac_PRECHECK(OSAStopRecording);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "l",
 | |
| 	                      &compiledScriptID))
 | |
| 		return NULL;
 | |
| 	_err = OSAStopRecording(_self->ob_itself,
 | |
| 	                        compiledScriptID);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	Py_INCREF(Py_None);
 | |
| 	_res = Py_None;
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSALoadExecute(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	AEDesc scriptData;
 | |
| 	OSAID contextID;
 | |
| 	long modeFlags;
 | |
| 	OSAID resultingScriptValueID;
 | |
| #ifndef OSALoadExecute
 | |
| 	PyMac_PRECHECK(OSALoadExecute);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "O&ll",
 | |
| 	                      AEDesc_Convert, &scriptData,
 | |
| 	                      &contextID,
 | |
| 	                      &modeFlags))
 | |
| 		return NULL;
 | |
| 	_err = OSALoadExecute(_self->ob_itself,
 | |
| 	                      &scriptData,
 | |
| 	                      contextID,
 | |
| 	                      modeFlags,
 | |
| 	                      &resultingScriptValueID);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("l",
 | |
| 	                     resultingScriptValueID);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSACompileExecute(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	AEDesc sourceData;
 | |
| 	OSAID contextID;
 | |
| 	long modeFlags;
 | |
| 	OSAID resultingScriptValueID;
 | |
| #ifndef OSACompileExecute
 | |
| 	PyMac_PRECHECK(OSACompileExecute);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "O&ll",
 | |
| 	                      AEDesc_Convert, &sourceData,
 | |
| 	                      &contextID,
 | |
| 	                      &modeFlags))
 | |
| 		return NULL;
 | |
| 	_err = OSACompileExecute(_self->ob_itself,
 | |
| 	                         &sourceData,
 | |
| 	                         contextID,
 | |
| 	                         modeFlags,
 | |
| 	                         &resultingScriptValueID);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("l",
 | |
| 	                     resultingScriptValueID);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSADoScript(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	AEDesc sourceData;
 | |
| 	OSAID contextID;
 | |
| 	DescType desiredType;
 | |
| 	long modeFlags;
 | |
| 	AEDesc resultingText;
 | |
| #ifndef OSADoScript
 | |
| 	PyMac_PRECHECK(OSADoScript);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "O&lO&l",
 | |
| 	                      AEDesc_Convert, &sourceData,
 | |
| 	                      &contextID,
 | |
| 	                      PyMac_GetOSType, &desiredType,
 | |
| 	                      &modeFlags))
 | |
| 		return NULL;
 | |
| 	_err = OSADoScript(_self->ob_itself,
 | |
| 	                   &sourceData,
 | |
| 	                   contextID,
 | |
| 	                   desiredType,
 | |
| 	                   modeFlags,
 | |
| 	                   &resultingText);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("O&",
 | |
| 	                     AEDesc_New, &resultingText);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSASetCurrentDialect(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	short dialectCode;
 | |
| #ifndef OSASetCurrentDialect
 | |
| 	PyMac_PRECHECK(OSASetCurrentDialect);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "h",
 | |
| 	                      &dialectCode))
 | |
| 		return NULL;
 | |
| 	_err = OSASetCurrentDialect(_self->ob_itself,
 | |
| 	                            dialectCode);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	Py_INCREF(Py_None);
 | |
| 	_res = Py_None;
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSAGetCurrentDialect(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	short resultingDialectCode;
 | |
| #ifndef OSAGetCurrentDialect
 | |
| 	PyMac_PRECHECK(OSAGetCurrentDialect);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, ""))
 | |
| 		return NULL;
 | |
| 	_err = OSAGetCurrentDialect(_self->ob_itself,
 | |
| 	                            &resultingDialectCode);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("h",
 | |
| 	                     resultingDialectCode);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSAAvailableDialects(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	AEDesc resultingDialectInfoList;
 | |
| #ifndef OSAAvailableDialects
 | |
| 	PyMac_PRECHECK(OSAAvailableDialects);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, ""))
 | |
| 		return NULL;
 | |
| 	_err = OSAAvailableDialects(_self->ob_itself,
 | |
| 	                            &resultingDialectInfoList);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("O&",
 | |
| 	                     AEDesc_New, &resultingDialectInfoList);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSAGetDialectInfo(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	short dialectCode;
 | |
| 	OSType selector;
 | |
| 	AEDesc resultingDialectInfo;
 | |
| #ifndef OSAGetDialectInfo
 | |
| 	PyMac_PRECHECK(OSAGetDialectInfo);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "hO&",
 | |
| 	                      &dialectCode,
 | |
| 	                      PyMac_GetOSType, &selector))
 | |
| 		return NULL;
 | |
| 	_err = OSAGetDialectInfo(_self->ob_itself,
 | |
| 	                         dialectCode,
 | |
| 	                         selector,
 | |
| 	                         &resultingDialectInfo);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("O&",
 | |
| 	                     AEDesc_New, &resultingDialectInfo);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSAAvailableDialectCodeList(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	AEDesc resultingDialectCodeList;
 | |
| #ifndef OSAAvailableDialectCodeList
 | |
| 	PyMac_PRECHECK(OSAAvailableDialectCodeList);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, ""))
 | |
| 		return NULL;
 | |
| 	_err = OSAAvailableDialectCodeList(_self->ob_itself,
 | |
| 	                                   &resultingDialectCodeList);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("O&",
 | |
| 	                     AEDesc_New, &resultingDialectCodeList);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSAExecuteEvent(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	AppleEvent theAppleEvent;
 | |
| 	OSAID contextID;
 | |
| 	long modeFlags;
 | |
| 	OSAID resultingScriptValueID;
 | |
| #ifndef OSAExecuteEvent
 | |
| 	PyMac_PRECHECK(OSAExecuteEvent);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "O&ll",
 | |
| 	                      AEDesc_Convert, &theAppleEvent,
 | |
| 	                      &contextID,
 | |
| 	                      &modeFlags))
 | |
| 		return NULL;
 | |
| 	_err = OSAExecuteEvent(_self->ob_itself,
 | |
| 	                       &theAppleEvent,
 | |
| 	                       contextID,
 | |
| 	                       modeFlags,
 | |
| 	                       &resultingScriptValueID);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("l",
 | |
| 	                     resultingScriptValueID);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSADoEvent(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	AppleEvent theAppleEvent;
 | |
| 	OSAID contextID;
 | |
| 	long modeFlags;
 | |
| 	AppleEvent reply;
 | |
| #ifndef OSADoEvent
 | |
| 	PyMac_PRECHECK(OSADoEvent);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "O&ll",
 | |
| 	                      AEDesc_Convert, &theAppleEvent,
 | |
| 	                      &contextID,
 | |
| 	                      &modeFlags))
 | |
| 		return NULL;
 | |
| 	_err = OSADoEvent(_self->ob_itself,
 | |
| 	                  &theAppleEvent,
 | |
| 	                  contextID,
 | |
| 	                  modeFlags,
 | |
| 	                  &reply);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("O&",
 | |
| 	                     AEDesc_New, &reply);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSAMakeContext(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	AEDesc contextName;
 | |
| 	OSAID parentContext;
 | |
| 	OSAID resultingContextID;
 | |
| #ifndef OSAMakeContext
 | |
| 	PyMac_PRECHECK(OSAMakeContext);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "O&l",
 | |
| 	                      AEDesc_Convert, &contextName,
 | |
| 	                      &parentContext))
 | |
| 		return NULL;
 | |
| 	_err = OSAMakeContext(_self->ob_itself,
 | |
| 	                      &contextName,
 | |
| 	                      parentContext,
 | |
| 	                      &resultingContextID);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("l",
 | |
| 	                     resultingContextID);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSADebuggerCreateSession(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	OSAID inScript;
 | |
| 	OSAID inContext;
 | |
| 	OSADebugSessionRef outSession;
 | |
| #ifndef OSADebuggerCreateSession
 | |
| 	PyMac_PRECHECK(OSADebuggerCreateSession);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "ll",
 | |
| 	                      &inScript,
 | |
| 	                      &inContext))
 | |
| 		return NULL;
 | |
| 	_err = OSADebuggerCreateSession(_self->ob_itself,
 | |
| 	                                inScript,
 | |
| 	                                inContext,
 | |
| 	                                &outSession);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("l",
 | |
| 	                     outSession);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSADebuggerGetSessionState(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	OSADebugSessionRef inSession;
 | |
| 	AERecord outState;
 | |
| #ifndef OSADebuggerGetSessionState
 | |
| 	PyMac_PRECHECK(OSADebuggerGetSessionState);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "l",
 | |
| 	                      &inSession))
 | |
| 		return NULL;
 | |
| 	_err = OSADebuggerGetSessionState(_self->ob_itself,
 | |
| 	                                  inSession,
 | |
| 	                                  &outState);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("O&",
 | |
| 	                     AEDesc_New, &outState);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSADebuggerSessionStep(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	OSADebugSessionRef inSession;
 | |
| 	OSADebugStepKind inKind;
 | |
| #ifndef OSADebuggerSessionStep
 | |
| 	PyMac_PRECHECK(OSADebuggerSessionStep);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "ll",
 | |
| 	                      &inSession,
 | |
| 	                      &inKind))
 | |
| 		return NULL;
 | |
| 	_err = OSADebuggerSessionStep(_self->ob_itself,
 | |
| 	                              inSession,
 | |
| 	                              inKind);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	Py_INCREF(Py_None);
 | |
| 	_res = Py_None;
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSADebuggerDisposeSession(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	OSADebugSessionRef inSession;
 | |
| #ifndef OSADebuggerDisposeSession
 | |
| 	PyMac_PRECHECK(OSADebuggerDisposeSession);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "l",
 | |
| 	                      &inSession))
 | |
| 		return NULL;
 | |
| 	_err = OSADebuggerDisposeSession(_self->ob_itself,
 | |
| 	                                 inSession);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	Py_INCREF(Py_None);
 | |
| 	_res = Py_None;
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSADebuggerGetStatementRanges(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	OSADebugSessionRef inSession;
 | |
| 	AEDescList outStatementRangeArray;
 | |
| #ifndef OSADebuggerGetStatementRanges
 | |
| 	PyMac_PRECHECK(OSADebuggerGetStatementRanges);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "l",
 | |
| 	                      &inSession))
 | |
| 		return NULL;
 | |
| 	_err = OSADebuggerGetStatementRanges(_self->ob_itself,
 | |
| 	                                     inSession,
 | |
| 	                                     &outStatementRangeArray);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("O&",
 | |
| 	                     AEDesc_New, &outStatementRangeArray);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSADebuggerGetBreakpoint(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	OSADebugSessionRef inSession;
 | |
| 	UInt32 inSrcOffset;
 | |
| 	OSAID outBreakpoint;
 | |
| #ifndef OSADebuggerGetBreakpoint
 | |
| 	PyMac_PRECHECK(OSADebuggerGetBreakpoint);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "ll",
 | |
| 	                      &inSession,
 | |
| 	                      &inSrcOffset))
 | |
| 		return NULL;
 | |
| 	_err = OSADebuggerGetBreakpoint(_self->ob_itself,
 | |
| 	                                inSession,
 | |
| 	                                inSrcOffset,
 | |
| 	                                &outBreakpoint);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("l",
 | |
| 	                     outBreakpoint);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSADebuggerSetBreakpoint(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	OSADebugSessionRef inSession;
 | |
| 	UInt32 inSrcOffset;
 | |
| 	OSAID inBreakpoint;
 | |
| #ifndef OSADebuggerSetBreakpoint
 | |
| 	PyMac_PRECHECK(OSADebuggerSetBreakpoint);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "lll",
 | |
| 	                      &inSession,
 | |
| 	                      &inSrcOffset,
 | |
| 	                      &inBreakpoint))
 | |
| 		return NULL;
 | |
| 	_err = OSADebuggerSetBreakpoint(_self->ob_itself,
 | |
| 	                                inSession,
 | |
| 	                                inSrcOffset,
 | |
| 	                                inBreakpoint);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	Py_INCREF(Py_None);
 | |
| 	_res = Py_None;
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSADebuggerGetDefaultBreakpoint(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	OSADebugSessionRef inSession;
 | |
| 	OSAID outBreakpoint;
 | |
| #ifndef OSADebuggerGetDefaultBreakpoint
 | |
| 	PyMac_PRECHECK(OSADebuggerGetDefaultBreakpoint);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "l",
 | |
| 	                      &inSession))
 | |
| 		return NULL;
 | |
| 	_err = OSADebuggerGetDefaultBreakpoint(_self->ob_itself,
 | |
| 	                                       inSession,
 | |
| 	                                       &outBreakpoint);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("l",
 | |
| 	                     outBreakpoint);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSADebuggerGetCurrentCallFrame(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	OSADebugSessionRef inSession;
 | |
| 	OSADebugCallFrameRef outCallFrame;
 | |
| #ifndef OSADebuggerGetCurrentCallFrame
 | |
| 	PyMac_PRECHECK(OSADebuggerGetCurrentCallFrame);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "l",
 | |
| 	                      &inSession))
 | |
| 		return NULL;
 | |
| 	_err = OSADebuggerGetCurrentCallFrame(_self->ob_itself,
 | |
| 	                                      inSession,
 | |
| 	                                      &outCallFrame);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("l",
 | |
| 	                     outCallFrame);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSADebuggerGetCallFrameState(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	OSADebugCallFrameRef inCallFrame;
 | |
| 	AERecord outState;
 | |
| #ifndef OSADebuggerGetCallFrameState
 | |
| 	PyMac_PRECHECK(OSADebuggerGetCallFrameState);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "l",
 | |
| 	                      &inCallFrame))
 | |
| 		return NULL;
 | |
| 	_err = OSADebuggerGetCallFrameState(_self->ob_itself,
 | |
| 	                                    inCallFrame,
 | |
| 	                                    &outState);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("O&",
 | |
| 	                     AEDesc_New, &outState);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSADebuggerGetVariable(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	OSADebugCallFrameRef inCallFrame;
 | |
| 	AEDesc inVariableName;
 | |
| 	OSAID outVariable;
 | |
| #ifndef OSADebuggerGetVariable
 | |
| 	PyMac_PRECHECK(OSADebuggerGetVariable);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "lO&",
 | |
| 	                      &inCallFrame,
 | |
| 	                      AEDesc_Convert, &inVariableName))
 | |
| 		return NULL;
 | |
| 	_err = OSADebuggerGetVariable(_self->ob_itself,
 | |
| 	                              inCallFrame,
 | |
| 	                              &inVariableName,
 | |
| 	                              &outVariable);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("l",
 | |
| 	                     outVariable);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSADebuggerSetVariable(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	OSADebugCallFrameRef inCallFrame;
 | |
| 	AEDesc inVariableName;
 | |
| 	OSAID inVariable;
 | |
| #ifndef OSADebuggerSetVariable
 | |
| 	PyMac_PRECHECK(OSADebuggerSetVariable);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "lO&l",
 | |
| 	                      &inCallFrame,
 | |
| 	                      AEDesc_Convert, &inVariableName,
 | |
| 	                      &inVariable))
 | |
| 		return NULL;
 | |
| 	_err = OSADebuggerSetVariable(_self->ob_itself,
 | |
| 	                              inCallFrame,
 | |
| 	                              &inVariableName,
 | |
| 	                              inVariable);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	Py_INCREF(Py_None);
 | |
| 	_res = Py_None;
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSADebuggerGetPreviousCallFrame(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	OSADebugCallFrameRef inCurrentFrame;
 | |
| 	OSADebugCallFrameRef outPrevFrame;
 | |
| #ifndef OSADebuggerGetPreviousCallFrame
 | |
| 	PyMac_PRECHECK(OSADebuggerGetPreviousCallFrame);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "l",
 | |
| 	                      &inCurrentFrame))
 | |
| 		return NULL;
 | |
| 	_err = OSADebuggerGetPreviousCallFrame(_self->ob_itself,
 | |
| 	                                       inCurrentFrame,
 | |
| 	                                       &outPrevFrame);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	_res = Py_BuildValue("l",
 | |
| 	                     outPrevFrame);
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyObject *OSAObj_OSADebuggerDisposeCallFrame(OSAComponentInstanceObject *_self, PyObject *_args)
 | |
| {
 | |
| 	PyObject *_res = NULL;
 | |
| 	OSAError _err;
 | |
| 	OSADebugCallFrameRef inCallFrame;
 | |
| #ifndef OSADebuggerDisposeCallFrame
 | |
| 	PyMac_PRECHECK(OSADebuggerDisposeCallFrame);
 | |
| #endif
 | |
| 	if (!PyArg_ParseTuple(_args, "l",
 | |
| 	                      &inCallFrame))
 | |
| 		return NULL;
 | |
| 	_err = OSADebuggerDisposeCallFrame(_self->ob_itself,
 | |
| 	                                   inCallFrame);
 | |
| 	if (_err != noErr) return PyMac_Error(_err);
 | |
| 	Py_INCREF(Py_None);
 | |
| 	_res = Py_None;
 | |
| 	return _res;
 | |
| }
 | |
| 
 | |
| static PyMethodDef OSAObj_methods[] = {
 | |
| 	{"OSALoad", (PyCFunction)OSAObj_OSALoad, 1,
 | |
| 	 PyDoc_STR("(AEDesc scriptData, long modeFlags) -> (OSAID resultingScriptID)")},
 | |
| 	{"OSAStore", (PyCFunction)OSAObj_OSAStore, 1,
 | |
| 	 PyDoc_STR("(OSAID scriptID, DescType desiredType, long modeFlags) -> (AEDesc resultingScriptData)")},
 | |
| 	{"OSAExecute", (PyCFunction)OSAObj_OSAExecute, 1,
 | |
| 	 PyDoc_STR("(OSAID compiledScriptID, OSAID contextID, long modeFlags) -> (OSAID resultingScriptValueID)")},
 | |
| 	{"OSADisplay", (PyCFunction)OSAObj_OSADisplay, 1,
 | |
| 	 PyDoc_STR("(OSAID scriptValueID, DescType desiredType, long modeFlags) -> (AEDesc resultingText)")},
 | |
| 	{"OSAScriptError", (PyCFunction)OSAObj_OSAScriptError, 1,
 | |
| 	 PyDoc_STR("(OSType selector, DescType desiredType) -> (AEDesc resultingErrorDescription)")},
 | |
| 	{"OSADispose", (PyCFunction)OSAObj_OSADispose, 1,
 | |
| 	 PyDoc_STR("(OSAID scriptID) -> None")},
 | |
| 	{"OSASetScriptInfo", (PyCFunction)OSAObj_OSASetScriptInfo, 1,
 | |
| 	 PyDoc_STR("(OSAID scriptID, OSType selector, long value) -> None")},
 | |
| 	{"OSAGetScriptInfo", (PyCFunction)OSAObj_OSAGetScriptInfo, 1,
 | |
| 	 PyDoc_STR("(OSAID scriptID, OSType selector) -> (long result)")},
 | |
| 	{"OSAScriptingComponentName", (PyCFunction)OSAObj_OSAScriptingComponentName, 1,
 | |
| 	 PyDoc_STR("() -> (AEDesc resultingScriptingComponentName)")},
 | |
| 	{"OSACompile", (PyCFunction)OSAObj_OSACompile, 1,
 | |
| 	 PyDoc_STR("(AEDesc sourceData, long modeFlags) -> (OSAID previousAndResultingScriptID)")},
 | |
| 	{"OSACopyID", (PyCFunction)OSAObj_OSACopyID, 1,
 | |
| 	 PyDoc_STR("(OSAID fromID) -> (OSAID toID)")},
 | |
| 	{"OSAGetSource", (PyCFunction)OSAObj_OSAGetSource, 1,
 | |
| 	 PyDoc_STR("(OSAID scriptID, DescType desiredType) -> (AEDesc resultingSourceData)")},
 | |
| 	{"OSACoerceFromDesc", (PyCFunction)OSAObj_OSACoerceFromDesc, 1,
 | |
| 	 PyDoc_STR("(AEDesc scriptData, long modeFlags) -> (OSAID resultingScriptID)")},
 | |
| 	{"OSACoerceToDesc", (PyCFunction)OSAObj_OSACoerceToDesc, 1,
 | |
| 	 PyDoc_STR("(OSAID scriptID, DescType desiredType, long modeFlags) -> (AEDesc result)")},
 | |
| 	{"OSASetDefaultTarget", (PyCFunction)OSAObj_OSASetDefaultTarget, 1,
 | |
| 	 PyDoc_STR("(AEAddressDesc target) -> None")},
 | |
| 	{"OSAStartRecording", (PyCFunction)OSAObj_OSAStartRecording, 1,
 | |
| 	 PyDoc_STR("() -> (OSAID compiledScriptToModifyID)")},
 | |
| 	{"OSAStopRecording", (PyCFunction)OSAObj_OSAStopRecording, 1,
 | |
| 	 PyDoc_STR("(OSAID compiledScriptID) -> None")},
 | |
| 	{"OSALoadExecute", (PyCFunction)OSAObj_OSALoadExecute, 1,
 | |
| 	 PyDoc_STR("(AEDesc scriptData, OSAID contextID, long modeFlags) -> (OSAID resultingScriptValueID)")},
 | |
| 	{"OSACompileExecute", (PyCFunction)OSAObj_OSACompileExecute, 1,
 | |
| 	 PyDoc_STR("(AEDesc sourceData, OSAID contextID, long modeFlags) -> (OSAID resultingScriptValueID)")},
 | |
| 	{"OSADoScript", (PyCFunction)OSAObj_OSADoScript, 1,
 | |
| 	 PyDoc_STR("(AEDesc sourceData, OSAID contextID, DescType desiredType, long modeFlags) -> (AEDesc resultingText)")},
 | |
| 	{"OSASetCurrentDialect", (PyCFunction)OSAObj_OSASetCurrentDialect, 1,
 | |
| 	 PyDoc_STR("(short dialectCode) -> None")},
 | |
| 	{"OSAGetCurrentDialect", (PyCFunction)OSAObj_OSAGetCurrentDialect, 1,
 | |
| 	 PyDoc_STR("() -> (short resultingDialectCode)")},
 | |
| 	{"OSAAvailableDialects", (PyCFunction)OSAObj_OSAAvailableDialects, 1,
 | |
| 	 PyDoc_STR("() -> (AEDesc resultingDialectInfoList)")},
 | |
| 	{"OSAGetDialectInfo", (PyCFunction)OSAObj_OSAGetDialectInfo, 1,
 | |
| 	 PyDoc_STR("(short dialectCode, OSType selector) -> (AEDesc resultingDialectInfo)")},
 | |
| 	{"OSAAvailableDialectCodeList", (PyCFunction)OSAObj_OSAAvailableDialectCodeList, 1,
 | |
| 	 PyDoc_STR("() -> (AEDesc resultingDialectCodeList)")},
 | |
| 	{"OSAExecuteEvent", (PyCFunction)OSAObj_OSAExecuteEvent, 1,
 | |
| 	 PyDoc_STR("(AppleEvent theAppleEvent, OSAID contextID, long modeFlags) -> (OSAID resultingScriptValueID)")},
 | |
| 	{"OSADoEvent", (PyCFunction)OSAObj_OSADoEvent, 1,
 | |
| 	 PyDoc_STR("(AppleEvent theAppleEvent, OSAID contextID, long modeFlags) -> (AppleEvent reply)")},
 | |
| 	{"OSAMakeContext", (PyCFunction)OSAObj_OSAMakeContext, 1,
 | |
| 	 PyDoc_STR("(AEDesc contextName, OSAID parentContext) -> (OSAID resultingContextID)")},
 | |
| 	{"OSADebuggerCreateSession", (PyCFunction)OSAObj_OSADebuggerCreateSession, 1,
 | |
| 	 PyDoc_STR("(OSAID inScript, OSAID inContext) -> (OSADebugSessionRef outSession)")},
 | |
| 	{"OSADebuggerGetSessionState", (PyCFunction)OSAObj_OSADebuggerGetSessionState, 1,
 | |
| 	 PyDoc_STR("(OSADebugSessionRef inSession) -> (AERecord outState)")},
 | |
| 	{"OSADebuggerSessionStep", (PyCFunction)OSAObj_OSADebuggerSessionStep, 1,
 | |
| 	 PyDoc_STR("(OSADebugSessionRef inSession, OSADebugStepKind inKind) -> None")},
 | |
| 	{"OSADebuggerDisposeSession", (PyCFunction)OSAObj_OSADebuggerDisposeSession, 1,
 | |
| 	 PyDoc_STR("(OSADebugSessionRef inSession) -> None")},
 | |
| 	{"OSADebuggerGetStatementRanges", (PyCFunction)OSAObj_OSADebuggerGetStatementRanges, 1,
 | |
| 	 PyDoc_STR("(OSADebugSessionRef inSession) -> (AEDescList outStatementRangeArray)")},
 | |
| 	{"OSADebuggerGetBreakpoint", (PyCFunction)OSAObj_OSADebuggerGetBreakpoint, 1,
 | |
| 	 PyDoc_STR("(OSADebugSessionRef inSession, UInt32 inSrcOffset) -> (OSAID outBreakpoint)")},
 | |
| 	{"OSADebuggerSetBreakpoint", (PyCFunction)OSAObj_OSADebuggerSetBreakpoint, 1,
 | |
| 	 PyDoc_STR("(OSADebugSessionRef inSession, UInt32 inSrcOffset, OSAID inBreakpoint) -> None")},
 | |
| 	{"OSADebuggerGetDefaultBreakpoint", (PyCFunction)OSAObj_OSADebuggerGetDefaultBreakpoint, 1,
 | |
| 	 PyDoc_STR("(OSADebugSessionRef inSession) -> (OSAID outBreakpoint)")},
 | |
| 	{"OSADebuggerGetCurrentCallFrame", (PyCFunction)OSAObj_OSADebuggerGetCurrentCallFrame, 1,
 | |
| 	 PyDoc_STR("(OSADebugSessionRef inSession) -> (OSADebugCallFrameRef outCallFrame)")},
 | |
| 	{"OSADebuggerGetCallFrameState", (PyCFunction)OSAObj_OSADebuggerGetCallFrameState, 1,
 | |
| 	 PyDoc_STR("(OSADebugCallFrameRef inCallFrame) -> (AERecord outState)")},
 | |
| 	{"OSADebuggerGetVariable", (PyCFunction)OSAObj_OSADebuggerGetVariable, 1,
 | |
| 	 PyDoc_STR("(OSADebugCallFrameRef inCallFrame, AEDesc inVariableName) -> (OSAID outVariable)")},
 | |
| 	{"OSADebuggerSetVariable", (PyCFunction)OSAObj_OSADebuggerSetVariable, 1,
 | |
| 	 PyDoc_STR("(OSADebugCallFrameRef inCallFrame, AEDesc inVariableName, OSAID inVariable) -> None")},
 | |
| 	{"OSADebuggerGetPreviousCallFrame", (PyCFunction)OSAObj_OSADebuggerGetPreviousCallFrame, 1,
 | |
| 	 PyDoc_STR("(OSADebugCallFrameRef inCurrentFrame) -> (OSADebugCallFrameRef outPrevFrame)")},
 | |
| 	{"OSADebuggerDisposeCallFrame", (PyCFunction)OSAObj_OSADebuggerDisposeCallFrame, 1,
 | |
| 	 PyDoc_STR("(OSADebugCallFrameRef inCallFrame) -> None")},
 | |
| 	{NULL, NULL, 0}
 | |
| };
 | |
| 
 | |
| #define OSAObj_getsetlist NULL
 | |
| 
 | |
| 
 | |
| #define OSAObj_compare NULL
 | |
| 
 | |
| #define OSAObj_repr NULL
 | |
| 
 | |
| #define OSAObj_hash NULL
 | |
| #define OSAObj_tp_init 0
 | |
| 
 | |
| #define OSAObj_tp_alloc PyType_GenericAlloc
 | |
| 
 | |
| static PyObject *OSAObj_tp_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
 | |
| {
 | |
| 	PyObject *self;
 | |
| 	ComponentInstance itself;
 | |
| 	char *kw[] = {"itself", 0};
 | |
| 
 | |
| 	if (!PyArg_ParseTupleAndKeywords(args, kwds, "O&", kw, OSAObj_Convert, &itself)) return NULL;
 | |
| 	if ((self = type->tp_alloc(type, 0)) == NULL) return NULL;
 | |
| 	((OSAComponentInstanceObject *)self)->ob_itself = itself;
 | |
| 	return self;
 | |
| }
 | |
| 
 | |
| #define OSAObj_tp_free PyObject_Del
 | |
| 
 | |
| 
 | |
| PyTypeObject OSAComponentInstance_Type = {
 | |
| 	PyObject_HEAD_INIT(NULL)
 | |
| 	0, /*ob_size*/
 | |
| 	"_OSA.OSAComponentInstance", /*tp_name*/
 | |
| 	sizeof(OSAComponentInstanceObject), /*tp_basicsize*/
 | |
| 	0, /*tp_itemsize*/
 | |
| 	/* methods */
 | |
| 	(destructor) OSAObj_dealloc, /*tp_dealloc*/
 | |
| 	0, /*tp_print*/
 | |
| 	(getattrfunc)0, /*tp_getattr*/
 | |
| 	(setattrfunc)0, /*tp_setattr*/
 | |
| 	(cmpfunc) OSAObj_compare, /*tp_compare*/
 | |
| 	(reprfunc) OSAObj_repr, /*tp_repr*/
 | |
| 	(PyNumberMethods *)0, /* tp_as_number */
 | |
| 	(PySequenceMethods *)0, /* tp_as_sequence */
 | |
| 	(PyMappingMethods *)0, /* tp_as_mapping */
 | |
| 	(hashfunc) OSAObj_hash, /*tp_hash*/
 | |
| 	0, /*tp_call*/
 | |
| 	0, /*tp_str*/
 | |
| 	PyObject_GenericGetAttr, /*tp_getattro*/
 | |
| 	PyObject_GenericSetAttr, /*tp_setattro */
 | |
| 	0, /*tp_as_buffer*/
 | |
| 	Py_TPFLAGS_DEFAULT|Py_TPFLAGS_BASETYPE, /* tp_flags */
 | |
| 	0, /*tp_doc*/
 | |
| 	0, /*tp_traverse*/
 | |
| 	0, /*tp_clear*/
 | |
| 	0, /*tp_richcompare*/
 | |
| 	0, /*tp_weaklistoffset*/
 | |
| 	0, /*tp_iter*/
 | |
| 	0, /*tp_iternext*/
 | |
| 	OSAObj_methods, /* tp_methods */
 | |
| 	0, /*tp_members*/
 | |
| 	OSAObj_getsetlist, /*tp_getset*/
 | |
| 	0, /*tp_base*/
 | |
| 	0, /*tp_dict*/
 | |
| 	0, /*tp_descr_get*/
 | |
| 	0, /*tp_descr_set*/
 | |
| 	0, /*tp_dictoffset*/
 | |
| 	OSAObj_tp_init, /* tp_init */
 | |
| 	OSAObj_tp_alloc, /* tp_alloc */
 | |
| 	OSAObj_tp_new, /* tp_new */
 | |
| 	OSAObj_tp_free, /* tp_free */
 | |
| };
 | |
| 
 | |
| /* -------------- End object type OSAComponentInstance -------------- */
 | |
| 
 | |
| 
 | |
| static PyMethodDef OSA_methods[] = {
 | |
| 	{NULL, NULL, 0}
 | |
| };
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| void init_OSA(void)
 | |
| {
 | |
| 	PyObject *m;
 | |
| 	PyObject *d;
 | |
| 
 | |
| 
 | |
| 
 | |
| 	/*
 | |
| 		PyMac_INIT_TOOLBOX_OBJECT_NEW(ComponentInstance, OSAObj_New);
 | |
| 		PyMac_INIT_TOOLBOX_OBJECT_CONVERT(ComponentInstance, OSAObj_Convert);
 | |
| 	*/
 | |
| 
 | |
| 
 | |
| 	m = Py_InitModule("_OSA", OSA_methods);
 | |
| 	d = PyModule_GetDict(m);
 | |
| 	OSA_Error = PyMac_GetOSErrException();
 | |
| 	if (OSA_Error == NULL ||
 | |
| 	    PyDict_SetItemString(d, "Error", OSA_Error) != 0)
 | |
| 		return;
 | |
| 	OSAComponentInstance_Type.ob_type = &PyType_Type;
 | |
| 	if (PyType_Ready(&OSAComponentInstance_Type) < 0) return;
 | |
| 	Py_INCREF(&OSAComponentInstance_Type);
 | |
| 	PyModule_AddObject(m, "OSAComponentInstance", (PyObject *)&OSAComponentInstance_Type);
 | |
| 	/* Backward-compatible name */
 | |
| 	Py_INCREF(&OSAComponentInstance_Type);
 | |
| 	PyModule_AddObject(m, "OSAComponentInstanceType", (PyObject *)&OSAComponentInstance_Type);
 | |
| }
 | |
| 
 | |
| /* ======================== End module _OSA ========================= */
 | |
| 
 |