diff options
Diffstat (limited to 'Mac/Modules/icn')
-rw-r--r-- | Mac/Modules/icn/_Icnmodule.c | 1599 | ||||
-rw-r--r-- | Mac/Modules/icn/icnscan.py | 71 | ||||
-rw-r--r-- | Mac/Modules/icn/icnsupport.py | 90 |
3 files changed, 0 insertions, 1760 deletions
diff --git a/Mac/Modules/icn/_Icnmodule.c b/Mac/Modules/icn/_Icnmodule.c deleted file mode 100644 index 2b43ed4..0000000 --- a/Mac/Modules/icn/_Icnmodule.c +++ /dev/null @@ -1,1599 +0,0 @@ - -/* ========================== Module _Icn =========================== */ - -#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) - - -#include <Carbon/Carbon.h> - - -static PyObject *Icn_Error; - -static PyObject *Icn_GetCIcon(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - CIconHandle _rv; - SInt16 iconID; -#ifndef GetCIcon - PyMac_PRECHECK(GetCIcon); -#endif - if (!PyArg_ParseTuple(_args, "h", - &iconID)) - return NULL; - _rv = GetCIcon(iconID); - _res = Py_BuildValue("O&", - ResObj_New, _rv); - return _res; -} - -static PyObject *Icn_PlotCIcon(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - Rect theRect; - CIconHandle theIcon; -#ifndef PlotCIcon - PyMac_PRECHECK(PlotCIcon); -#endif - if (!PyArg_ParseTuple(_args, "O&O&", - PyMac_GetRect, &theRect, - ResObj_Convert, &theIcon)) - return NULL; - PlotCIcon(&theRect, - theIcon); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_DisposeCIcon(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - CIconHandle theIcon; -#ifndef DisposeCIcon - PyMac_PRECHECK(DisposeCIcon); -#endif - if (!PyArg_ParseTuple(_args, "O&", - ResObj_Convert, &theIcon)) - return NULL; - DisposeCIcon(theIcon); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_GetIcon(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - Handle _rv; - SInt16 iconID; -#ifndef GetIcon - PyMac_PRECHECK(GetIcon); -#endif - if (!PyArg_ParseTuple(_args, "h", - &iconID)) - return NULL; - _rv = GetIcon(iconID); - _res = Py_BuildValue("O&", - ResObj_New, _rv); - return _res; -} - -static PyObject *Icn_PlotIcon(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - Rect theRect; - Handle theIcon; -#ifndef PlotIcon - PyMac_PRECHECK(PlotIcon); -#endif - if (!PyArg_ParseTuple(_args, "O&O&", - PyMac_GetRect, &theRect, - ResObj_Convert, &theIcon)) - return NULL; - PlotIcon(&theRect, - theIcon); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_PlotIconID(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - Rect theRect; - IconAlignmentType align; - IconTransformType transform; - SInt16 theResID; -#ifndef PlotIconID - PyMac_PRECHECK(PlotIconID); -#endif - if (!PyArg_ParseTuple(_args, "O&hhh", - PyMac_GetRect, &theRect, - &align, - &transform, - &theResID)) - return NULL; - _err = PlotIconID(&theRect, - align, - transform, - theResID); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_NewIconSuite(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - IconSuiteRef theIconSuite; -#ifndef NewIconSuite - PyMac_PRECHECK(NewIconSuite); -#endif - if (!PyArg_ParseTuple(_args, "")) - return NULL; - _err = NewIconSuite(&theIconSuite); - if (_err != noErr) return PyMac_Error(_err); - _res = Py_BuildValue("O&", - ResObj_New, theIconSuite); - return _res; -} - -static PyObject *Icn_AddIconToSuite(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - Handle theIconData; - IconSuiteRef theSuite; - ResType theType; -#ifndef AddIconToSuite - PyMac_PRECHECK(AddIconToSuite); -#endif - if (!PyArg_ParseTuple(_args, "O&O&O&", - ResObj_Convert, &theIconData, - ResObj_Convert, &theSuite, - PyMac_GetOSType, &theType)) - return NULL; - _err = AddIconToSuite(theIconData, - theSuite, - theType); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_GetIconFromSuite(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - Handle theIconData; - IconSuiteRef theSuite; - ResType theType; -#ifndef GetIconFromSuite - PyMac_PRECHECK(GetIconFromSuite); -#endif - if (!PyArg_ParseTuple(_args, "O&O&", - ResObj_Convert, &theSuite, - PyMac_GetOSType, &theType)) - return NULL; - _err = GetIconFromSuite(&theIconData, - theSuite, - theType); - if (_err != noErr) return PyMac_Error(_err); - _res = Py_BuildValue("O&", - ResObj_New, theIconData); - return _res; -} - -static PyObject *Icn_GetIconSuite(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - IconSuiteRef theIconSuite; - SInt16 theResID; - IconSelectorValue selector; -#ifndef GetIconSuite - PyMac_PRECHECK(GetIconSuite); -#endif - if (!PyArg_ParseTuple(_args, "hl", - &theResID, - &selector)) - return NULL; - _err = GetIconSuite(&theIconSuite, - theResID, - selector); - if (_err != noErr) return PyMac_Error(_err); - _res = Py_BuildValue("O&", - ResObj_New, theIconSuite); - return _res; -} - -static PyObject *Icn_DisposeIconSuite(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - IconSuiteRef theIconSuite; - Boolean disposeData; -#ifndef DisposeIconSuite - PyMac_PRECHECK(DisposeIconSuite); -#endif - if (!PyArg_ParseTuple(_args, "O&b", - ResObj_Convert, &theIconSuite, - &disposeData)) - return NULL; - _err = DisposeIconSuite(theIconSuite, - disposeData); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_PlotIconSuite(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - Rect theRect; - IconAlignmentType align; - IconTransformType transform; - IconSuiteRef theIconSuite; -#ifndef PlotIconSuite - PyMac_PRECHECK(PlotIconSuite); -#endif - if (!PyArg_ParseTuple(_args, "O&hhO&", - PyMac_GetRect, &theRect, - &align, - &transform, - ResObj_Convert, &theIconSuite)) - return NULL; - _err = PlotIconSuite(&theRect, - align, - transform, - theIconSuite); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_LoadIconCache(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - Rect theRect; - IconAlignmentType align; - IconTransformType transform; - IconCacheRef theIconCache; -#ifndef LoadIconCache - PyMac_PRECHECK(LoadIconCache); -#endif - if (!PyArg_ParseTuple(_args, "O&hhO&", - PyMac_GetRect, &theRect, - &align, - &transform, - ResObj_Convert, &theIconCache)) - return NULL; - _err = LoadIconCache(&theRect, - align, - transform, - theIconCache); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_GetLabel(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - SInt16 labelNumber; - RGBColor labelColor; - Str255 labelString; -#ifndef GetLabel - PyMac_PRECHECK(GetLabel); -#endif - if (!PyArg_ParseTuple(_args, "hO&", - &labelNumber, - PyMac_GetStr255, labelString)) - return NULL; - _err = GetLabel(labelNumber, - &labelColor, - labelString); - if (_err != noErr) return PyMac_Error(_err); - _res = Py_BuildValue("O&", - QdRGB_New, &labelColor); - return _res; -} - -static PyObject *Icn_PtInIconID(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - Boolean _rv; - Point testPt; - Rect iconRect; - IconAlignmentType align; - SInt16 iconID; -#ifndef PtInIconID - PyMac_PRECHECK(PtInIconID); -#endif - if (!PyArg_ParseTuple(_args, "O&O&hh", - PyMac_GetPoint, &testPt, - PyMac_GetRect, &iconRect, - &align, - &iconID)) - return NULL; - _rv = PtInIconID(testPt, - &iconRect, - align, - iconID); - _res = Py_BuildValue("b", - _rv); - return _res; -} - -static PyObject *Icn_PtInIconSuite(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - Boolean _rv; - Point testPt; - Rect iconRect; - IconAlignmentType align; - IconSuiteRef theIconSuite; -#ifndef PtInIconSuite - PyMac_PRECHECK(PtInIconSuite); -#endif - if (!PyArg_ParseTuple(_args, "O&O&hO&", - PyMac_GetPoint, &testPt, - PyMac_GetRect, &iconRect, - &align, - ResObj_Convert, &theIconSuite)) - return NULL; - _rv = PtInIconSuite(testPt, - &iconRect, - align, - theIconSuite); - _res = Py_BuildValue("b", - _rv); - return _res; -} - -static PyObject *Icn_RectInIconID(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - Boolean _rv; - Rect testRect; - Rect iconRect; - IconAlignmentType align; - SInt16 iconID; -#ifndef RectInIconID - PyMac_PRECHECK(RectInIconID); -#endif - if (!PyArg_ParseTuple(_args, "O&O&hh", - PyMac_GetRect, &testRect, - PyMac_GetRect, &iconRect, - &align, - &iconID)) - return NULL; - _rv = RectInIconID(&testRect, - &iconRect, - align, - iconID); - _res = Py_BuildValue("b", - _rv); - return _res; -} - -static PyObject *Icn_RectInIconSuite(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - Boolean _rv; - Rect testRect; - Rect iconRect; - IconAlignmentType align; - IconSuiteRef theIconSuite; -#ifndef RectInIconSuite - PyMac_PRECHECK(RectInIconSuite); -#endif - if (!PyArg_ParseTuple(_args, "O&O&hO&", - PyMac_GetRect, &testRect, - PyMac_GetRect, &iconRect, - &align, - ResObj_Convert, &theIconSuite)) - return NULL; - _rv = RectInIconSuite(&testRect, - &iconRect, - align, - theIconSuite); - _res = Py_BuildValue("b", - _rv); - return _res; -} - -static PyObject *Icn_IconIDToRgn(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - RgnHandle theRgn; - Rect iconRect; - IconAlignmentType align; - SInt16 iconID; -#ifndef IconIDToRgn - PyMac_PRECHECK(IconIDToRgn); -#endif - if (!PyArg_ParseTuple(_args, "O&O&hh", - ResObj_Convert, &theRgn, - PyMac_GetRect, &iconRect, - &align, - &iconID)) - return NULL; - _err = IconIDToRgn(theRgn, - &iconRect, - align, - iconID); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_IconSuiteToRgn(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - RgnHandle theRgn; - Rect iconRect; - IconAlignmentType align; - IconSuiteRef theIconSuite; -#ifndef IconSuiteToRgn - PyMac_PRECHECK(IconSuiteToRgn); -#endif - if (!PyArg_ParseTuple(_args, "O&O&hO&", - ResObj_Convert, &theRgn, - PyMac_GetRect, &iconRect, - &align, - ResObj_Convert, &theIconSuite)) - return NULL; - _err = IconSuiteToRgn(theRgn, - &iconRect, - align, - theIconSuite); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_SetSuiteLabel(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - IconSuiteRef theSuite; - SInt16 theLabel; -#ifndef SetSuiteLabel - PyMac_PRECHECK(SetSuiteLabel); -#endif - if (!PyArg_ParseTuple(_args, "O&h", - ResObj_Convert, &theSuite, - &theLabel)) - return NULL; - _err = SetSuiteLabel(theSuite, - theLabel); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_GetSuiteLabel(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - SInt16 _rv; - IconSuiteRef theSuite; -#ifndef GetSuiteLabel - PyMac_PRECHECK(GetSuiteLabel); -#endif - if (!PyArg_ParseTuple(_args, "O&", - ResObj_Convert, &theSuite)) - return NULL; - _rv = GetSuiteLabel(theSuite); - _res = Py_BuildValue("h", - _rv); - return _res; -} - -static PyObject *Icn_PlotIconHandle(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - Rect theRect; - IconAlignmentType align; - IconTransformType transform; - Handle theIcon; -#ifndef PlotIconHandle - PyMac_PRECHECK(PlotIconHandle); -#endif - if (!PyArg_ParseTuple(_args, "O&hhO&", - PyMac_GetRect, &theRect, - &align, - &transform, - ResObj_Convert, &theIcon)) - return NULL; - _err = PlotIconHandle(&theRect, - align, - transform, - theIcon); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_PlotSICNHandle(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - Rect theRect; - IconAlignmentType align; - IconTransformType transform; - Handle theSICN; -#ifndef PlotSICNHandle - PyMac_PRECHECK(PlotSICNHandle); -#endif - if (!PyArg_ParseTuple(_args, "O&hhO&", - PyMac_GetRect, &theRect, - &align, - &transform, - ResObj_Convert, &theSICN)) - return NULL; - _err = PlotSICNHandle(&theRect, - align, - transform, - theSICN); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_PlotCIconHandle(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - Rect theRect; - IconAlignmentType align; - IconTransformType transform; - CIconHandle theCIcon; -#ifndef PlotCIconHandle - PyMac_PRECHECK(PlotCIconHandle); -#endif - if (!PyArg_ParseTuple(_args, "O&hhO&", - PyMac_GetRect, &theRect, - &align, - &transform, - ResObj_Convert, &theCIcon)) - return NULL; - _err = PlotCIconHandle(&theRect, - align, - transform, - theCIcon); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_IconRefToIconFamily(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - IconRef theIconRef; - IconSelectorValue whichIcons; - IconFamilyHandle iconFamily; -#ifndef IconRefToIconFamily - PyMac_PRECHECK(IconRefToIconFamily); -#endif - if (!PyArg_ParseTuple(_args, "O&l", - ResObj_Convert, &theIconRef, - &whichIcons)) - return NULL; - _err = IconRefToIconFamily(theIconRef, - whichIcons, - &iconFamily); - if (_err != noErr) return PyMac_Error(_err); - _res = Py_BuildValue("O&", - ResObj_New, iconFamily); - return _res; -} - -static PyObject *Icn_IconFamilyToIconSuite(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - IconFamilyHandle iconFamily; - IconSelectorValue whichIcons; - IconSuiteRef iconSuite; -#ifndef IconFamilyToIconSuite - PyMac_PRECHECK(IconFamilyToIconSuite); -#endif - if (!PyArg_ParseTuple(_args, "O&l", - ResObj_Convert, &iconFamily, - &whichIcons)) - return NULL; - _err = IconFamilyToIconSuite(iconFamily, - whichIcons, - &iconSuite); - if (_err != noErr) return PyMac_Error(_err); - _res = Py_BuildValue("O&", - ResObj_New, iconSuite); - return _res; -} - -static PyObject *Icn_IconSuiteToIconFamily(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - IconSuiteRef iconSuite; - IconSelectorValue whichIcons; - IconFamilyHandle iconFamily; -#ifndef IconSuiteToIconFamily - PyMac_PRECHECK(IconSuiteToIconFamily); -#endif - if (!PyArg_ParseTuple(_args, "O&l", - ResObj_Convert, &iconSuite, - &whichIcons)) - return NULL; - _err = IconSuiteToIconFamily(iconSuite, - whichIcons, - &iconFamily); - if (_err != noErr) return PyMac_Error(_err); - _res = Py_BuildValue("O&", - ResObj_New, iconFamily); - return _res; -} - -static PyObject *Icn_SetIconFamilyData(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - IconFamilyHandle iconFamily; - OSType iconType; - Handle h; -#ifndef SetIconFamilyData - PyMac_PRECHECK(SetIconFamilyData); -#endif - if (!PyArg_ParseTuple(_args, "O&O&O&", - ResObj_Convert, &iconFamily, - PyMac_GetOSType, &iconType, - ResObj_Convert, &h)) - return NULL; - _err = SetIconFamilyData(iconFamily, - iconType, - h); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_GetIconFamilyData(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - IconFamilyHandle iconFamily; - OSType iconType; - Handle h; -#ifndef GetIconFamilyData - PyMac_PRECHECK(GetIconFamilyData); -#endif - if (!PyArg_ParseTuple(_args, "O&O&O&", - ResObj_Convert, &iconFamily, - PyMac_GetOSType, &iconType, - ResObj_Convert, &h)) - return NULL; - _err = GetIconFamilyData(iconFamily, - iconType, - h); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_GetIconRefOwners(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - IconRef theIconRef; - UInt16 owners; -#ifndef GetIconRefOwners - PyMac_PRECHECK(GetIconRefOwners); -#endif - if (!PyArg_ParseTuple(_args, "O&", - ResObj_Convert, &theIconRef)) - return NULL; - _err = GetIconRefOwners(theIconRef, - &owners); - if (_err != noErr) return PyMac_Error(_err); - _res = Py_BuildValue("H", - owners); - return _res; -} - -static PyObject *Icn_AcquireIconRef(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - IconRef theIconRef; -#ifndef AcquireIconRef - PyMac_PRECHECK(AcquireIconRef); -#endif - if (!PyArg_ParseTuple(_args, "O&", - ResObj_Convert, &theIconRef)) - return NULL; - _err = AcquireIconRef(theIconRef); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_ReleaseIconRef(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - IconRef theIconRef; -#ifndef ReleaseIconRef - PyMac_PRECHECK(ReleaseIconRef); -#endif - if (!PyArg_ParseTuple(_args, "O&", - ResObj_Convert, &theIconRef)) - return NULL; - _err = ReleaseIconRef(theIconRef); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_GetIconRefFromFile(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - FSSpec theFile; - IconRef theIconRef; - SInt16 theLabel; -#ifndef GetIconRefFromFile - PyMac_PRECHECK(GetIconRefFromFile); -#endif - if (!PyArg_ParseTuple(_args, "O&", - PyMac_GetFSSpec, &theFile)) - return NULL; - _err = GetIconRefFromFile(&theFile, - &theIconRef, - &theLabel); - if (_err != noErr) return PyMac_Error(_err); - _res = Py_BuildValue("O&h", - ResObj_New, theIconRef, - theLabel); - return _res; -} - -static PyObject *Icn_GetIconRef(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - SInt16 vRefNum; - OSType creator; - OSType iconType; - IconRef theIconRef; -#ifndef GetIconRef - PyMac_PRECHECK(GetIconRef); -#endif - if (!PyArg_ParseTuple(_args, "hO&O&", - &vRefNum, - PyMac_GetOSType, &creator, - PyMac_GetOSType, &iconType)) - return NULL; - _err = GetIconRef(vRefNum, - creator, - iconType, - &theIconRef); - if (_err != noErr) return PyMac_Error(_err); - _res = Py_BuildValue("O&", - ResObj_New, theIconRef); - return _res; -} - -static PyObject *Icn_GetIconRefFromFolder(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - SInt16 vRefNum; - SInt32 parentFolderID; - SInt32 folderID; - SInt8 attributes; - SInt8 accessPrivileges; - IconRef theIconRef; -#ifndef GetIconRefFromFolder - PyMac_PRECHECK(GetIconRefFromFolder); -#endif - if (!PyArg_ParseTuple(_args, "hllbb", - &vRefNum, - &parentFolderID, - &folderID, - &attributes, - &accessPrivileges)) - return NULL; - _err = GetIconRefFromFolder(vRefNum, - parentFolderID, - folderID, - attributes, - accessPrivileges, - &theIconRef); - if (_err != noErr) return PyMac_Error(_err); - _res = Py_BuildValue("O&", - ResObj_New, theIconRef); - return _res; -} - -static PyObject *Icn_RegisterIconRefFromIconFamily(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - OSType creator; - OSType iconType; - IconFamilyHandle iconFamily; - IconRef theIconRef; -#ifndef RegisterIconRefFromIconFamily - PyMac_PRECHECK(RegisterIconRefFromIconFamily); -#endif - if (!PyArg_ParseTuple(_args, "O&O&O&", - PyMac_GetOSType, &creator, - PyMac_GetOSType, &iconType, - ResObj_Convert, &iconFamily)) - return NULL; - _err = RegisterIconRefFromIconFamily(creator, - iconType, - iconFamily, - &theIconRef); - if (_err != noErr) return PyMac_Error(_err); - _res = Py_BuildValue("O&", - ResObj_New, theIconRef); - return _res; -} - -static PyObject *Icn_RegisterIconRefFromResource(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - OSType creator; - OSType iconType; - FSSpec resourceFile; - SInt16 resourceID; - IconRef theIconRef; -#ifndef RegisterIconRefFromResource - PyMac_PRECHECK(RegisterIconRefFromResource); -#endif - if (!PyArg_ParseTuple(_args, "O&O&O&h", - PyMac_GetOSType, &creator, - PyMac_GetOSType, &iconType, - PyMac_GetFSSpec, &resourceFile, - &resourceID)) - return NULL; - _err = RegisterIconRefFromResource(creator, - iconType, - &resourceFile, - resourceID, - &theIconRef); - if (_err != noErr) return PyMac_Error(_err); - _res = Py_BuildValue("O&", - ResObj_New, theIconRef); - return _res; -} - -static PyObject *Icn_RegisterIconRefFromFSRef(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSStatus _err; - OSType creator; - OSType iconType; - FSRef iconFile; - IconRef theIconRef; -#ifndef RegisterIconRefFromFSRef - PyMac_PRECHECK(RegisterIconRefFromFSRef); -#endif - if (!PyArg_ParseTuple(_args, "O&O&O&", - PyMac_GetOSType, &creator, - PyMac_GetOSType, &iconType, - PyMac_GetFSRef, &iconFile)) - return NULL; - _err = RegisterIconRefFromFSRef(creator, - iconType, - &iconFile, - &theIconRef); - if (_err != noErr) return PyMac_Error(_err); - _res = Py_BuildValue("O&", - ResObj_New, theIconRef); - return _res; -} - -static PyObject *Icn_UnregisterIconRef(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - OSType creator; - OSType iconType; -#ifndef UnregisterIconRef - PyMac_PRECHECK(UnregisterIconRef); -#endif - if (!PyArg_ParseTuple(_args, "O&O&", - PyMac_GetOSType, &creator, - PyMac_GetOSType, &iconType)) - return NULL; - _err = UnregisterIconRef(creator, - iconType); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_UpdateIconRef(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - IconRef theIconRef; -#ifndef UpdateIconRef - PyMac_PRECHECK(UpdateIconRef); -#endif - if (!PyArg_ParseTuple(_args, "O&", - ResObj_Convert, &theIconRef)) - return NULL; - _err = UpdateIconRef(theIconRef); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_OverrideIconRefFromResource(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - IconRef theIconRef; - FSSpec resourceFile; - SInt16 resourceID; -#ifndef OverrideIconRefFromResource - PyMac_PRECHECK(OverrideIconRefFromResource); -#endif - if (!PyArg_ParseTuple(_args, "O&O&h", - ResObj_Convert, &theIconRef, - PyMac_GetFSSpec, &resourceFile, - &resourceID)) - return NULL; - _err = OverrideIconRefFromResource(theIconRef, - &resourceFile, - resourceID); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_OverrideIconRef(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - IconRef oldIconRef; - IconRef newIconRef; -#ifndef OverrideIconRef - PyMac_PRECHECK(OverrideIconRef); -#endif - if (!PyArg_ParseTuple(_args, "O&O&", - ResObj_Convert, &oldIconRef, - ResObj_Convert, &newIconRef)) - return NULL; - _err = OverrideIconRef(oldIconRef, - newIconRef); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_RemoveIconRefOverride(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - IconRef theIconRef; -#ifndef RemoveIconRefOverride - PyMac_PRECHECK(RemoveIconRefOverride); -#endif - if (!PyArg_ParseTuple(_args, "O&", - ResObj_Convert, &theIconRef)) - return NULL; - _err = RemoveIconRefOverride(theIconRef); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_CompositeIconRef(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - IconRef backgroundIconRef; - IconRef foregroundIconRef; - IconRef compositeIconRef; -#ifndef CompositeIconRef - PyMac_PRECHECK(CompositeIconRef); -#endif - if (!PyArg_ParseTuple(_args, "O&O&", - ResObj_Convert, &backgroundIconRef, - ResObj_Convert, &foregroundIconRef)) - return NULL; - _err = CompositeIconRef(backgroundIconRef, - foregroundIconRef, - &compositeIconRef); - if (_err != noErr) return PyMac_Error(_err); - _res = Py_BuildValue("O&", - ResObj_New, compositeIconRef); - return _res; -} - -static PyObject *Icn_IsIconRefComposite(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - IconRef compositeIconRef; - IconRef backgroundIconRef; - IconRef foregroundIconRef; -#ifndef IsIconRefComposite - PyMac_PRECHECK(IsIconRefComposite); -#endif - if (!PyArg_ParseTuple(_args, "O&", - ResObj_Convert, &compositeIconRef)) - return NULL; - _err = IsIconRefComposite(compositeIconRef, - &backgroundIconRef, - &foregroundIconRef); - if (_err != noErr) return PyMac_Error(_err); - _res = Py_BuildValue("O&O&", - ResObj_New, backgroundIconRef, - ResObj_New, foregroundIconRef); - return _res; -} - -static PyObject *Icn_IsValidIconRef(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - Boolean _rv; - IconRef theIconRef; -#ifndef IsValidIconRef - PyMac_PRECHECK(IsValidIconRef); -#endif - if (!PyArg_ParseTuple(_args, "O&", - ResObj_Convert, &theIconRef)) - return NULL; - _rv = IsValidIconRef(theIconRef); - _res = Py_BuildValue("b", - _rv); - return _res; -} - -static PyObject *Icn_PlotIconRef(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - Rect theRect; - IconAlignmentType align; - IconTransformType transform; - IconServicesUsageFlags theIconServicesUsageFlags; - IconRef theIconRef; -#ifndef PlotIconRef - PyMac_PRECHECK(PlotIconRef); -#endif - if (!PyArg_ParseTuple(_args, "O&hhlO&", - PyMac_GetRect, &theRect, - &align, - &transform, - &theIconServicesUsageFlags, - ResObj_Convert, &theIconRef)) - return NULL; - _err = PlotIconRef(&theRect, - align, - transform, - theIconServicesUsageFlags, - theIconRef); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_PtInIconRef(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - Boolean _rv; - Point testPt; - Rect iconRect; - IconAlignmentType align; - IconServicesUsageFlags theIconServicesUsageFlags; - IconRef theIconRef; -#ifndef PtInIconRef - PyMac_PRECHECK(PtInIconRef); -#endif - if (!PyArg_ParseTuple(_args, "O&O&hlO&", - PyMac_GetPoint, &testPt, - PyMac_GetRect, &iconRect, - &align, - &theIconServicesUsageFlags, - ResObj_Convert, &theIconRef)) - return NULL; - _rv = PtInIconRef(&testPt, - &iconRect, - align, - theIconServicesUsageFlags, - theIconRef); - _res = Py_BuildValue("b", - _rv); - return _res; -} - -static PyObject *Icn_RectInIconRef(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - Boolean _rv; - Rect testRect; - Rect iconRect; - IconAlignmentType align; - IconServicesUsageFlags iconServicesUsageFlags; - IconRef theIconRef; -#ifndef RectInIconRef - PyMac_PRECHECK(RectInIconRef); -#endif - if (!PyArg_ParseTuple(_args, "O&O&hlO&", - PyMac_GetRect, &testRect, - PyMac_GetRect, &iconRect, - &align, - &iconServicesUsageFlags, - ResObj_Convert, &theIconRef)) - return NULL; - _rv = RectInIconRef(&testRect, - &iconRect, - align, - iconServicesUsageFlags, - theIconRef); - _res = Py_BuildValue("b", - _rv); - return _res; -} - -static PyObject *Icn_IconRefToRgn(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - RgnHandle theRgn; - Rect iconRect; - IconAlignmentType align; - IconServicesUsageFlags iconServicesUsageFlags; - IconRef theIconRef; -#ifndef IconRefToRgn - PyMac_PRECHECK(IconRefToRgn); -#endif - if (!PyArg_ParseTuple(_args, "O&O&hlO&", - ResObj_Convert, &theRgn, - PyMac_GetRect, &iconRect, - &align, - &iconServicesUsageFlags, - ResObj_Convert, &theIconRef)) - return NULL; - _err = IconRefToRgn(theRgn, - &iconRect, - align, - iconServicesUsageFlags, - theIconRef); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_GetIconSizesFromIconRef(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - IconSelectorValue iconSelectorInput; - IconSelectorValue iconSelectorOutputPtr; - IconServicesUsageFlags iconServicesUsageFlags; - IconRef theIconRef; -#ifndef GetIconSizesFromIconRef - PyMac_PRECHECK(GetIconSizesFromIconRef); -#endif - if (!PyArg_ParseTuple(_args, "llO&", - &iconSelectorInput, - &iconServicesUsageFlags, - ResObj_Convert, &theIconRef)) - return NULL; - _err = GetIconSizesFromIconRef(iconSelectorInput, - &iconSelectorOutputPtr, - iconServicesUsageFlags, - theIconRef); - if (_err != noErr) return PyMac_Error(_err); - _res = Py_BuildValue("l", - iconSelectorOutputPtr); - return _res; -} - -static PyObject *Icn_FlushIconRefs(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - OSType creator; - OSType iconType; -#ifndef FlushIconRefs - PyMac_PRECHECK(FlushIconRefs); -#endif - if (!PyArg_ParseTuple(_args, "O&O&", - PyMac_GetOSType, &creator, - PyMac_GetOSType, &iconType)) - return NULL; - _err = FlushIconRefs(creator, - iconType); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_FlushIconRefsByVolume(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - SInt16 vRefNum; -#ifndef FlushIconRefsByVolume - PyMac_PRECHECK(FlushIconRefsByVolume); -#endif - if (!PyArg_ParseTuple(_args, "h", - &vRefNum)) - return NULL; - _err = FlushIconRefsByVolume(vRefNum); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_SetCustomIconsEnabled(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - SInt16 vRefNum; - Boolean enableCustomIcons; -#ifndef SetCustomIconsEnabled - PyMac_PRECHECK(SetCustomIconsEnabled); -#endif - if (!PyArg_ParseTuple(_args, "hb", - &vRefNum, - &enableCustomIcons)) - return NULL; - _err = SetCustomIconsEnabled(vRefNum, - enableCustomIcons); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Icn_GetCustomIconsEnabled(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - SInt16 vRefNum; - Boolean customIconsEnabled; -#ifndef GetCustomIconsEnabled - PyMac_PRECHECK(GetCustomIconsEnabled); -#endif - if (!PyArg_ParseTuple(_args, "h", - &vRefNum)) - return NULL; - _err = GetCustomIconsEnabled(vRefNum, - &customIconsEnabled); - if (_err != noErr) return PyMac_Error(_err); - _res = Py_BuildValue("b", - customIconsEnabled); - return _res; -} - -static PyObject *Icn_IsIconRefMaskEmpty(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - Boolean _rv; - IconRef iconRef; -#ifndef IsIconRefMaskEmpty - PyMac_PRECHECK(IsIconRefMaskEmpty); -#endif - if (!PyArg_ParseTuple(_args, "O&", - ResObj_Convert, &iconRef)) - return NULL; - _rv = IsIconRefMaskEmpty(iconRef); - _res = Py_BuildValue("b", - _rv); - return _res; -} - -static PyObject *Icn_GetIconRefVariant(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - IconRef _rv; - IconRef inIconRef; - OSType inVariant; - IconTransformType outTransform; -#ifndef GetIconRefVariant - PyMac_PRECHECK(GetIconRefVariant); -#endif - if (!PyArg_ParseTuple(_args, "O&O&", - ResObj_Convert, &inIconRef, - PyMac_GetOSType, &inVariant)) - return NULL; - _rv = GetIconRefVariant(inIconRef, - inVariant, - &outTransform); - _res = Py_BuildValue("O&h", - ResObj_New, _rv, - outTransform); - return _res; -} - -static PyObject *Icn_RegisterIconRefFromIconFile(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - OSType creator; - OSType iconType; - FSSpec iconFile; - IconRef theIconRef; -#ifndef RegisterIconRefFromIconFile - PyMac_PRECHECK(RegisterIconRefFromIconFile); -#endif - if (!PyArg_ParseTuple(_args, "O&O&O&", - PyMac_GetOSType, &creator, - PyMac_GetOSType, &iconType, - PyMac_GetFSSpec, &iconFile)) - return NULL; - _err = RegisterIconRefFromIconFile(creator, - iconType, - &iconFile, - &theIconRef); - if (_err != noErr) return PyMac_Error(_err); - _res = Py_BuildValue("O&", - ResObj_New, theIconRef); - return _res; -} - -static PyObject *Icn_ReadIconFile(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - FSSpec iconFile; - IconFamilyHandle iconFamily; -#ifndef ReadIconFile - PyMac_PRECHECK(ReadIconFile); -#endif - if (!PyArg_ParseTuple(_args, "O&", - PyMac_GetFSSpec, &iconFile)) - return NULL; - _err = ReadIconFile(&iconFile, - &iconFamily); - if (_err != noErr) return PyMac_Error(_err); - _res = Py_BuildValue("O&", - ResObj_New, iconFamily); - return _res; -} - -static PyObject *Icn_ReadIconFromFSRef(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSStatus _err; - FSRef ref; - IconFamilyHandle iconFamily; -#ifndef ReadIconFromFSRef - PyMac_PRECHECK(ReadIconFromFSRef); -#endif - if (!PyArg_ParseTuple(_args, "O&", - PyMac_GetFSRef, &ref)) - return NULL; - _err = ReadIconFromFSRef(&ref, - &iconFamily); - if (_err != noErr) return PyMac_Error(_err); - _res = Py_BuildValue("O&", - ResObj_New, iconFamily); - return _res; -} - -static PyObject *Icn_WriteIconFile(PyObject *_self, PyObject *_args) -{ - PyObject *_res = NULL; - OSErr _err; - IconFamilyHandle iconFamily; - FSSpec iconFile; -#ifndef WriteIconFile - PyMac_PRECHECK(WriteIconFile); -#endif - if (!PyArg_ParseTuple(_args, "O&O&", - ResObj_Convert, &iconFamily, - PyMac_GetFSSpec, &iconFile)) - return NULL; - _err = WriteIconFile(iconFamily, - &iconFile); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyMethodDef Icn_methods[] = { - {"GetCIcon", (PyCFunction)Icn_GetCIcon, 1, - PyDoc_STR("(SInt16 iconID) -> (CIconHandle _rv)")}, - {"PlotCIcon", (PyCFunction)Icn_PlotCIcon, 1, - PyDoc_STR("(Rect theRect, CIconHandle theIcon) -> None")}, - {"DisposeCIcon", (PyCFunction)Icn_DisposeCIcon, 1, - PyDoc_STR("(CIconHandle theIcon) -> None")}, - {"GetIcon", (PyCFunction)Icn_GetIcon, 1, - PyDoc_STR("(SInt16 iconID) -> (Handle _rv)")}, - {"PlotIcon", (PyCFunction)Icn_PlotIcon, 1, - PyDoc_STR("(Rect theRect, Handle theIcon) -> None")}, - {"PlotIconID", (PyCFunction)Icn_PlotIconID, 1, - PyDoc_STR("(Rect theRect, IconAlignmentType align, IconTransformType transform, SInt16 theResID) -> None")}, - {"NewIconSuite", (PyCFunction)Icn_NewIconSuite, 1, - PyDoc_STR("() -> (IconSuiteRef theIconSuite)")}, - {"AddIconToSuite", (PyCFunction)Icn_AddIconToSuite, 1, - PyDoc_STR("(Handle theIconData, IconSuiteRef theSuite, ResType theType) -> None")}, - {"GetIconFromSuite", (PyCFunction)Icn_GetIconFromSuite, 1, - PyDoc_STR("(IconSuiteRef theSuite, ResType theType) -> (Handle theIconData)")}, - {"GetIconSuite", (PyCFunction)Icn_GetIconSuite, 1, - PyDoc_STR("(SInt16 theResID, IconSelectorValue selector) -> (IconSuiteRef theIconSuite)")}, - {"DisposeIconSuite", (PyCFunction)Icn_DisposeIconSuite, 1, - PyDoc_STR("(IconSuiteRef theIconSuite, Boolean disposeData) -> None")}, - {"PlotIconSuite", (PyCFunction)Icn_PlotIconSuite, 1, - PyDoc_STR("(Rect theRect, IconAlignmentType align, IconTransformType transform, IconSuiteRef theIconSuite) -> None")}, - {"LoadIconCache", (PyCFunction)Icn_LoadIconCache, 1, - PyDoc_STR("(Rect theRect, IconAlignmentType align, IconTransformType transform, IconCacheRef theIconCache) -> None")}, - {"GetLabel", (PyCFunction)Icn_GetLabel, 1, - PyDoc_STR("(SInt16 labelNumber, Str255 labelString) -> (RGBColor labelColor)")}, - {"PtInIconID", (PyCFunction)Icn_PtInIconID, 1, - PyDoc_STR("(Point testPt, Rect iconRect, IconAlignmentType align, SInt16 iconID) -> (Boolean _rv)")}, - {"PtInIconSuite", (PyCFunction)Icn_PtInIconSuite, 1, - PyDoc_STR("(Point testPt, Rect iconRect, IconAlignmentType align, IconSuiteRef theIconSuite) -> (Boolean _rv)")}, - {"RectInIconID", (PyCFunction)Icn_RectInIconID, 1, - PyDoc_STR("(Rect testRect, Rect iconRect, IconAlignmentType align, SInt16 iconID) -> (Boolean _rv)")}, - {"RectInIconSuite", (PyCFunction)Icn_RectInIconSuite, 1, - PyDoc_STR("(Rect testRect, Rect iconRect, IconAlignmentType align, IconSuiteRef theIconSuite) -> (Boolean _rv)")}, - {"IconIDToRgn", (PyCFunction)Icn_IconIDToRgn, 1, - PyDoc_STR("(RgnHandle theRgn, Rect iconRect, IconAlignmentType align, SInt16 iconID) -> None")}, - {"IconSuiteToRgn", (PyCFunction)Icn_IconSuiteToRgn, 1, - PyDoc_STR("(RgnHandle theRgn, Rect iconRect, IconAlignmentType align, IconSuiteRef theIconSuite) -> None")}, - {"SetSuiteLabel", (PyCFunction)Icn_SetSuiteLabel, 1, - PyDoc_STR("(IconSuiteRef theSuite, SInt16 theLabel) -> None")}, - {"GetSuiteLabel", (PyCFunction)Icn_GetSuiteLabel, 1, - PyDoc_STR("(IconSuiteRef theSuite) -> (SInt16 _rv)")}, - {"PlotIconHandle", (PyCFunction)Icn_PlotIconHandle, 1, - PyDoc_STR("(Rect theRect, IconAlignmentType align, IconTransformType transform, Handle theIcon) -> None")}, - {"PlotSICNHandle", (PyCFunction)Icn_PlotSICNHandle, 1, - PyDoc_STR("(Rect theRect, IconAlignmentType align, IconTransformType transform, Handle theSICN) -> None")}, - {"PlotCIconHandle", (PyCFunction)Icn_PlotCIconHandle, 1, - PyDoc_STR("(Rect theRect, IconAlignmentType align, IconTransformType transform, CIconHandle theCIcon) -> None")}, - {"IconRefToIconFamily", (PyCFunction)Icn_IconRefToIconFamily, 1, - PyDoc_STR("(IconRef theIconRef, IconSelectorValue whichIcons) -> (IconFamilyHandle iconFamily)")}, - {"IconFamilyToIconSuite", (PyCFunction)Icn_IconFamilyToIconSuite, 1, - PyDoc_STR("(IconFamilyHandle iconFamily, IconSelectorValue whichIcons) -> (IconSuiteRef iconSuite)")}, - {"IconSuiteToIconFamily", (PyCFunction)Icn_IconSuiteToIconFamily, 1, - PyDoc_STR("(IconSuiteRef iconSuite, IconSelectorValue whichIcons) -> (IconFamilyHandle iconFamily)")}, - {"SetIconFamilyData", (PyCFunction)Icn_SetIconFamilyData, 1, - PyDoc_STR("(IconFamilyHandle iconFamily, OSType iconType, Handle h) -> None")}, - {"GetIconFamilyData", (PyCFunction)Icn_GetIconFamilyData, 1, - PyDoc_STR("(IconFamilyHandle iconFamily, OSType iconType, Handle h) -> None")}, - {"GetIconRefOwners", (PyCFunction)Icn_GetIconRefOwners, 1, - PyDoc_STR("(IconRef theIconRef) -> (UInt16 owners)")}, - {"AcquireIconRef", (PyCFunction)Icn_AcquireIconRef, 1, - PyDoc_STR("(IconRef theIconRef) -> None")}, - {"ReleaseIconRef", (PyCFunction)Icn_ReleaseIconRef, 1, - PyDoc_STR("(IconRef theIconRef) -> None")}, - {"GetIconRefFromFile", (PyCFunction)Icn_GetIconRefFromFile, 1, - PyDoc_STR("(FSSpec theFile) -> (IconRef theIconRef, SInt16 theLabel)")}, - {"GetIconRef", (PyCFunction)Icn_GetIconRef, 1, - PyDoc_STR("(SInt16 vRefNum, OSType creator, OSType iconType) -> (IconRef theIconRef)")}, - {"GetIconRefFromFolder", (PyCFunction)Icn_GetIconRefFromFolder, 1, - PyDoc_STR("(SInt16 vRefNum, SInt32 parentFolderID, SInt32 folderID, SInt8 attributes, SInt8 accessPrivileges) -> (IconRef theIconRef)")}, - {"RegisterIconRefFromIconFamily", (PyCFunction)Icn_RegisterIconRefFromIconFamily, 1, - PyDoc_STR("(OSType creator, OSType iconType, IconFamilyHandle iconFamily) -> (IconRef theIconRef)")}, - {"RegisterIconRefFromResource", (PyCFunction)Icn_RegisterIconRefFromResource, 1, - PyDoc_STR("(OSType creator, OSType iconType, FSSpec resourceFile, SInt16 resourceID) -> (IconRef theIconRef)")}, - {"RegisterIconRefFromFSRef", (PyCFunction)Icn_RegisterIconRefFromFSRef, 1, - PyDoc_STR("(OSType creator, OSType iconType, FSRef iconFile) -> (IconRef theIconRef)")}, - {"UnregisterIconRef", (PyCFunction)Icn_UnregisterIconRef, 1, - PyDoc_STR("(OSType creator, OSType iconType) -> None")}, - {"UpdateIconRef", (PyCFunction)Icn_UpdateIconRef, 1, - PyDoc_STR("(IconRef theIconRef) -> None")}, - {"OverrideIconRefFromResource", (PyCFunction)Icn_OverrideIconRefFromResource, 1, - PyDoc_STR("(IconRef theIconRef, FSSpec resourceFile, SInt16 resourceID) -> None")}, - {"OverrideIconRef", (PyCFunction)Icn_OverrideIconRef, 1, - PyDoc_STR("(IconRef oldIconRef, IconRef newIconRef) -> None")}, - {"RemoveIconRefOverride", (PyCFunction)Icn_RemoveIconRefOverride, 1, - PyDoc_STR("(IconRef theIconRef) -> None")}, - {"CompositeIconRef", (PyCFunction)Icn_CompositeIconRef, 1, - PyDoc_STR("(IconRef backgroundIconRef, IconRef foregroundIconRef) -> (IconRef compositeIconRef)")}, - {"IsIconRefComposite", (PyCFunction)Icn_IsIconRefComposite, 1, - PyDoc_STR("(IconRef compositeIconRef) -> (IconRef backgroundIconRef, IconRef foregroundIconRef)")}, - {"IsValidIconRef", (PyCFunction)Icn_IsValidIconRef, 1, - PyDoc_STR("(IconRef theIconRef) -> (Boolean _rv)")}, - {"PlotIconRef", (PyCFunction)Icn_PlotIconRef, 1, - PyDoc_STR("(Rect theRect, IconAlignmentType align, IconTransformType transform, IconServicesUsageFlags theIconServicesUsageFlags, IconRef theIconRef) -> None")}, - {"PtInIconRef", (PyCFunction)Icn_PtInIconRef, 1, - PyDoc_STR("(Point testPt, Rect iconRect, IconAlignmentType align, IconServicesUsageFlags theIconServicesUsageFlags, IconRef theIconRef) -> (Boolean _rv)")}, - {"RectInIconRef", (PyCFunction)Icn_RectInIconRef, 1, - PyDoc_STR("(Rect testRect, Rect iconRect, IconAlignmentType align, IconServicesUsageFlags iconServicesUsageFlags, IconRef theIconRef) -> (Boolean _rv)")}, - {"IconRefToRgn", (PyCFunction)Icn_IconRefToRgn, 1, - PyDoc_STR("(RgnHandle theRgn, Rect iconRect, IconAlignmentType align, IconServicesUsageFlags iconServicesUsageFlags, IconRef theIconRef) -> None")}, - {"GetIconSizesFromIconRef", (PyCFunction)Icn_GetIconSizesFromIconRef, 1, - PyDoc_STR("(IconSelectorValue iconSelectorInput, IconServicesUsageFlags iconServicesUsageFlags, IconRef theIconRef) -> (IconSelectorValue iconSelectorOutputPtr)")}, - {"FlushIconRefs", (PyCFunction)Icn_FlushIconRefs, 1, - PyDoc_STR("(OSType creator, OSType iconType) -> None")}, - {"FlushIconRefsByVolume", (PyCFunction)Icn_FlushIconRefsByVolume, 1, - PyDoc_STR("(SInt16 vRefNum) -> None")}, - {"SetCustomIconsEnabled", (PyCFunction)Icn_SetCustomIconsEnabled, 1, - PyDoc_STR("(SInt16 vRefNum, Boolean enableCustomIcons) -> None")}, - {"GetCustomIconsEnabled", (PyCFunction)Icn_GetCustomIconsEnabled, 1, - PyDoc_STR("(SInt16 vRefNum) -> (Boolean customIconsEnabled)")}, - {"IsIconRefMaskEmpty", (PyCFunction)Icn_IsIconRefMaskEmpty, 1, - PyDoc_STR("(IconRef iconRef) -> (Boolean _rv)")}, - {"GetIconRefVariant", (PyCFunction)Icn_GetIconRefVariant, 1, - PyDoc_STR("(IconRef inIconRef, OSType inVariant) -> (IconRef _rv, IconTransformType outTransform)")}, - {"RegisterIconRefFromIconFile", (PyCFunction)Icn_RegisterIconRefFromIconFile, 1, - PyDoc_STR("(OSType creator, OSType iconType, FSSpec iconFile) -> (IconRef theIconRef)")}, - {"ReadIconFile", (PyCFunction)Icn_ReadIconFile, 1, - PyDoc_STR("(FSSpec iconFile) -> (IconFamilyHandle iconFamily)")}, - {"ReadIconFromFSRef", (PyCFunction)Icn_ReadIconFromFSRef, 1, - PyDoc_STR("(FSRef ref) -> (IconFamilyHandle iconFamily)")}, - {"WriteIconFile", (PyCFunction)Icn_WriteIconFile, 1, - PyDoc_STR("(IconFamilyHandle iconFamily, FSSpec iconFile) -> None")}, - {NULL, NULL, 0} -}; - - - - -void init_Icn(void) -{ - PyObject *m; - PyObject *d; - - - - - m = Py_InitModule("_Icn", Icn_methods); - d = PyModule_GetDict(m); - Icn_Error = PyMac_GetOSErrException(); - if (Icn_Error == NULL || - PyDict_SetItemString(d, "Error", Icn_Error) != 0) - return; -} - -/* ======================== End module _Icn ========================= */ - diff --git a/Mac/Modules/icn/icnscan.py b/Mac/Modules/icn/icnscan.py deleted file mode 100644 index 217fb03..0000000 --- a/Mac/Modules/icn/icnscan.py +++ /dev/null @@ -1,71 +0,0 @@ -# Scan an Apple header file, generating a Python file of generator calls. - -import sys -from bgenlocations import TOOLBOXDIR, BGENDIR -sys.path.append(BGENDIR) -from scantools import Scanner - -LONG = "Icons" -SHORT = "icn" -OBJECT = "NOTUSED" - -def main(): - input = LONG + ".h" - output = SHORT + "gen.py" - defsoutput = TOOLBOXDIR + LONG + ".py" - scanner = MyScanner(input, output, defsoutput) - scanner.scan() - scanner.close() - print("=== Testing definitions output code ===") - exec(open(defsoutput).read(), {}, {}) - print("=== Done scanning and generating, now importing the generated code... ===") - exec "import " + SHORT + "support" - print("=== Done. It's up to you to compile it now! ===") - -class MyScanner(Scanner): - - def destination(self, type, name, arglist): - classname = "Function" - listname = "functions" - if arglist: - t, n, m = arglist[0] - # This is non-functional today - if t == OBJECT and m == "InMode": - classname = "Method" - listname = "methods" - return classname, listname - - def makeblacklistnames(self): - return [ - "GetIconCacheData", - "SetIconCacheData", - # Constants with funny definitions - "kSelectorAllHugeData", - "kSelectorAllAvailableData", - "svAllAvailableData", - # Something in a comment accidentally seen as a const definition - "err", - # OS8 only - 'IconServicesTerminate', - # Lazy, right now. - "GetIconRefFromFileInfo" - ] - - def makeblacklisttypes(self): - return [ - "IconActionUPP", - "IconGetterUPP", - "CFragInitBlockPtr", - "CGRect_ptr", - ] - - def makerepairinstructions(self): - return [ - ] - - def writeinitialdefs(self): - self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n") - self.defsfile.write("from Carbon.Files import *\n") - -if __name__ == "__main__": - main() diff --git a/Mac/Modules/icn/icnsupport.py b/Mac/Modules/icn/icnsupport.py deleted file mode 100644 index e9a8b78..0000000 --- a/Mac/Modules/icn/icnsupport.py +++ /dev/null @@ -1,90 +0,0 @@ -# This script generates a Python interface for an Apple Macintosh Manager. -# It uses the "bgen" package to generate C code. -# The function specifications are generated by scanning the mamager's header file, -# using the "scantools" package (customized for this particular manager). - -import string - -# Declarations that change for each manager -MACHEADERFILE = 'Icons.h' # The Apple header file -MODNAME = '_Icn' # The name of the module -OBJECTNAME = 'Icon' # The basic name of the objects used here -KIND = 'Handle' # Usually 'Ptr' or 'Handle' - -# The following is *usually* unchanged but may still require tuning -MODPREFIX = 'Icn' # The prefix for module-wide routines -OBJECTTYPE = OBJECTNAME + KIND # The C type used to represent them -OBJECTPREFIX = MODPREFIX + 'Obj' # The prefix for object methods -INPUTFILE = string.lower(MODPREFIX) + 'gen.py' # The file generated by the scanner -OUTPUTFILE = MODNAME + "module.c" # The file generated by this program - -from macsupport import * - -# Create the type objects -CIconHandle = OpaqueByValueType("CIconHandle", "ResObj") -IconSuiteRef = OpaqueByValueType("IconSuiteRef", "ResObj") -IconCacheRef = OpaqueByValueType("IconCacheRef", "ResObj") -IconRef = OpaqueByValueType("IconRef", "ResObj") -IconFamilyHandle = OpaqueByValueType("IconFamilyHandle", "ResObj") -RgnHandle = OpaqueByValueType("RgnHandle", "ResObj") -IconAlignmentType = Type("IconAlignmentType", "h") -IconTransformType = Type("IconTransformType", "h") -IconSelectorValue = Type("IconSelectorValue", "l") -IconServicesUsageFlags = Type("IconServicesUsageFlags", "l") -RGBColor = OpaqueType("RGBColor", "QdRGB") -CGContextRef = OpaqueByValueType("CGContextRef", "CGContextRefObj") - -#WindowPeek = OpaqueByValueType("WindowPeek", OBJECTPREFIX) - -# RgnHandle = FakeType("(RgnHandle)0") -# XXXX Should be next, but this will break a lot of code... -# RgnHandle = OpaqueByValueType("RgnHandle", "OptResObj") - -# KeyMap = ArrayOutputBufferType("KeyMap") -#MacOSEventKind = Type("MacOSEventKind", "h") # Old-style -#MacOSEventMask = Type("MacOSEventMask", "h") # Old-style -#EventMask = Type("EventMask", "H") -#EventKind = Type("EventKind", "H") - -includestuff = includestuff + """ -#include <Carbon/Carbon.h> - -""" - -class MyObjectDefinition(PEP253Mixin, GlobalObjectDefinition): - def outputCheckNewArg(self): - Output("if (itself == NULL) return PyMac_Error(resNotFound);") - def outputCheckConvertArg(self): - OutLbrace("if (DlgObj_Check(v))") - Output("*p_itself = ((WindowObject *)v)->ob_itself;") - Output("return 1;") - OutRbrace() - Out(""" - if (v == Py_None) { *p_itself = NULL; return 1; } - if (PyInt_Check(v)) { *p_itself = (WindowPtr)PyInt_AsLong(v); return 1; } - """) - -# From here on it's basically all boiler plate... - -# Create the generator groups and link them -module = MacModule(MODNAME, MODPREFIX, includestuff, finalstuff, initstuff) -##object = MyObjectDefinition(OBJECTNAME, OBJECTPREFIX, OBJECTTYPE) -##module.addobject(object) - -# Create the generator classes used to populate the lists -Function = OSErrWeakLinkFunctionGenerator -##Method = OSErrMethodGenerator - -# Create and populate the lists -functions = [] -##methods = [] -exec(open(INPUTFILE).read()) - -# add the populated lists to the generator groups -# (in a different wordl the scan program would generate this) -for f in functions: module.add(f) -##for f in methods: object.add(f) - -# generate output (open the output file as late as possible) -SetOutputFileName(OUTPUTFILE) -module.generate() |