diff options
author | Jack Jansen <jack.jansen@cwi.nl> | 2003-11-19 14:34:18 +0000 |
---|---|---|
committer | Jack Jansen <jack.jansen@cwi.nl> | 2003-11-19 14:34:18 +0000 |
commit | 28ecf70db57828db2ca279643bf9aeca7662f35c (patch) | |
tree | 09b7767bbc411f85313b58d6fe7e5e67d9392973 /Mac/Modules/htmlrender | |
parent | 6045b9c93511c767f6cfa2d2fa299c76181acd9b (diff) | |
download | cpython-git-28ecf70db57828db2ca279643bf9aeca7662f35c.tar.gz |
Getting rid of support for MacOS9 and earlier. This is the first step,
and the biggest in size, but probably the easiest. Hunting through the
source code comes next.
Diffstat (limited to 'Mac/Modules/htmlrender')
-rw-r--r-- | Mac/Modules/htmlrender/HtmlRendermodule.c | 818 | ||||
-rw-r--r-- | Mac/Modules/htmlrender/htmlscan.py | 63 | ||||
-rw-r--r-- | Mac/Modules/htmlrender/htmlsupport.py | 213 |
3 files changed, 0 insertions, 1094 deletions
diff --git a/Mac/Modules/htmlrender/HtmlRendermodule.c b/Mac/Modules/htmlrender/HtmlRendermodule.c deleted file mode 100644 index 08df21f3c3..0000000000 --- a/Mac/Modules/htmlrender/HtmlRendermodule.c +++ /dev/null @@ -1,818 +0,0 @@ - -/* ======================= Module HtmlRender ======================== */ - -#include "Python.h" - - - -#define SystemSevenOrLater 1 - -#include "macglue.h" -#include <Memory.h> -#include <Dialogs.h> -#include <Menus.h> -#include <Controls.h> - -extern PyObject *ResObj_New(Handle); -extern int ResObj_Convert(PyObject *, Handle *); -extern PyObject *OptResObj_New(Handle); -extern int OptResObj_Convert(PyObject *, Handle *); - -extern PyObject *WinObj_New(WindowPtr); -extern int WinObj_Convert(PyObject *, WindowPtr *); -extern PyTypeObject Window_Type; -#define WinObj_Check(x) ((x)->ob_type == &Window_Type) - -extern PyObject *DlgObj_New(DialogPtr); -extern int DlgObj_Convert(PyObject *, DialogPtr *); -extern PyTypeObject Dialog_Type; -#define DlgObj_Check(x) ((x)->ob_type == &Dialog_Type) - -extern PyObject *MenuObj_New(MenuHandle); -extern int MenuObj_Convert(PyObject *, MenuHandle *); - -extern PyObject *CtlObj_New(ControlHandle); -extern int CtlObj_Convert(PyObject *, ControlHandle *); - -extern PyObject *GrafObj_New(GrafPtr); -extern int GrafObj_Convert(PyObject *, GrafPtr *); - -extern PyObject *BMObj_New(BitMapPtr); -extern int BMObj_Convert(PyObject *, BitMapPtr *); - -extern PyObject *WinObj_WhichWindow(WindowPtr); - -#include <HTMLRendering.h> - -static PyObject *Html_Error; - -/* --------------------- Object type HtmlObject --------------------- */ - -PyTypeObject HtmlObject_Type; - -#define HtmlObj_Check(x) ((x)->ob_type == &HtmlObject_Type) - -typedef struct HtmlObjectObject { - PyObject_HEAD - HRReference ob_itself; -} HtmlObjectObject; - -PyObject *HtmlObj_New(itself) - HRReference itself; -{ - HtmlObjectObject *it; - it = PyObject_NEW(HtmlObjectObject, &HtmlObject_Type); - if (it == NULL) return NULL; - it->ob_itself = itself; - return (PyObject *)it; -} -HtmlObj_Convert(v, p_itself) - PyObject *v; - HRReference *p_itself; -{ - if (!HtmlObj_Check(v)) - { - PyErr_SetString(PyExc_TypeError, "HtmlObject required"); - return 0; - } - *p_itself = ((HtmlObjectObject *)v)->ob_itself; - return 1; -} - -static void HtmlObj_dealloc(self) - HtmlObjectObject *self; -{ - /* Cleanup of self->ob_itself goes here */ - PyObject_DEL(self); -} - -static PyObject *HtmlObj_HRDisposeReference(_self, _args) - HtmlObjectObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - OSStatus _err; - if (!PyArg_ParseTuple(_args, "")) - return NULL; - _err = HRDisposeReference(_self->ob_itself); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *HtmlObj_HRSetGrafPtr(_self, _args) - HtmlObjectObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - OSStatus _err; - GrafPtr grafPtr; - if (!PyArg_ParseTuple(_args, "O&", - GrafObj_Convert, &grafPtr)) - return NULL; - _err = HRSetGrafPtr(_self->ob_itself, - grafPtr); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *HtmlObj_HRActivate(_self, _args) - HtmlObjectObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - OSStatus _err; - if (!PyArg_ParseTuple(_args, "")) - return NULL; - _err = HRActivate(_self->ob_itself); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *HtmlObj_HRDeactivate(_self, _args) - HtmlObjectObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - OSStatus _err; - if (!PyArg_ParseTuple(_args, "")) - return NULL; - _err = HRDeactivate(_self->ob_itself); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *HtmlObj_HRDraw(_self, _args) - HtmlObjectObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - OSStatus _err; - RgnHandle updateRgnH; - if (!PyArg_ParseTuple(_args, "O&", - ResObj_Convert, &updateRgnH)) - return NULL; - _err = HRDraw(_self->ob_itself, - updateRgnH); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *HtmlObj_HRSetRenderingRect(_self, _args) - HtmlObjectObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - OSStatus _err; - Rect renderingRect; - if (!PyArg_ParseTuple(_args, "O&", - PyMac_GetRect, &renderingRect)) - return NULL; - _err = HRSetRenderingRect(_self->ob_itself, - &renderingRect); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *HtmlObj_HRGetRenderedImageSize(_self, _args) - HtmlObjectObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - OSStatus _err; - Point renderingSize; - if (!PyArg_ParseTuple(_args, "")) - return NULL; - _err = HRGetRenderedImageSize(_self->ob_itself, - &renderingSize); - if (_err != noErr) return PyMac_Error(_err); - _res = Py_BuildValue("O&", - PyMac_BuildPoint, renderingSize); - return _res; -} - -static PyObject *HtmlObj_HRScrollToLocation(_self, _args) - HtmlObjectObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - OSStatus _err; - Point location; - if (!PyArg_ParseTuple(_args, "")) - return NULL; - _err = HRScrollToLocation(_self->ob_itself, - &location); - if (_err != noErr) return PyMac_Error(_err); - _res = Py_BuildValue("O&", - PyMac_BuildPoint, location); - return _res; -} - -static PyObject *HtmlObj_HRForceQuickdraw(_self, _args) - HtmlObjectObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - OSStatus _err; - Boolean forceQuickdraw; - if (!PyArg_ParseTuple(_args, "b", - &forceQuickdraw)) - return NULL; - _err = HRForceQuickdraw(_self->ob_itself, - forceQuickdraw); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *HtmlObj_HRSetScrollbarState(_self, _args) - HtmlObjectObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - OSStatus _err; - HRScrollbarState hScrollbarState; - HRScrollbarState vScrollbarState; - if (!PyArg_ParseTuple(_args, "hh", - &hScrollbarState, - &vScrollbarState)) - return NULL; - _err = HRSetScrollbarState(_self->ob_itself, - hScrollbarState, - vScrollbarState); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *HtmlObj_HRSetDrawBorder(_self, _args) - HtmlObjectObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - OSStatus _err; - Boolean drawBorder; - if (!PyArg_ParseTuple(_args, "b", - &drawBorder)) - return NULL; - _err = HRSetDrawBorder(_self->ob_itself, - drawBorder); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *HtmlObj_HRSetGrowboxCutout(_self, _args) - HtmlObjectObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - OSStatus _err; - Boolean allowCutout; - if (!PyArg_ParseTuple(_args, "b", - &allowCutout)) - return NULL; - _err = HRSetGrowboxCutout(_self->ob_itself, - allowCutout); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *HtmlObj_HRGoToFile(_self, _args) - HtmlObjectObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - OSStatus _err; - FSSpec fsspec; - Boolean addToHistory; - Boolean forceRefresh; - if (!PyArg_ParseTuple(_args, "O&bb", - PyMac_GetFSSpec, &fsspec, - &addToHistory, - &forceRefresh)) - return NULL; - _err = HRGoToFile(_self->ob_itself, - &fsspec, - addToHistory, - forceRefresh); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *HtmlObj_HRGoToURL(_self, _args) - HtmlObjectObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - OSStatus _err; - char * url; - Boolean addToHistory; - Boolean forceRefresh; - if (!PyArg_ParseTuple(_args, "sbb", - &url, - &addToHistory, - &forceRefresh)) - return NULL; - _err = HRGoToURL(_self->ob_itself, - url, - addToHistory, - forceRefresh); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *HtmlObj_HRGoToAnchor(_self, _args) - HtmlObjectObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - OSStatus _err; - char * anchorName; - if (!PyArg_ParseTuple(_args, "s", - &anchorName)) - return NULL; - _err = HRGoToAnchor(_self->ob_itself, - anchorName); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *HtmlObj_HRGoToPtr(_self, _args) - HtmlObjectObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - OSStatus _err; - char *buffer__in__; - long buffer__len__; - int buffer__in_len__; - Boolean addToHistory; - Boolean forceRefresh; - if (!PyArg_ParseTuple(_args, "s#bb", - &buffer__in__, &buffer__in_len__, - &addToHistory, - &forceRefresh)) - return NULL; - buffer__len__ = buffer__in_len__; - _err = HRGoToPtr(_self->ob_itself, - buffer__in__, buffer__len__, - addToHistory, - forceRefresh); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - buffer__error__: ; - return _res; -} - -static PyObject *HtmlObj_HRGetRootURL(_self, _args) - HtmlObjectObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - OSStatus _err; - Handle rootURLH; - if (!PyArg_ParseTuple(_args, "O&", - ResObj_Convert, &rootURLH)) - return NULL; - _err = HRGetRootURL(_self->ob_itself, - rootURLH); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *HtmlObj_HRGetBaseURL(_self, _args) - HtmlObjectObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - OSStatus _err; - Handle baseURLH; - if (!PyArg_ParseTuple(_args, "O&", - ResObj_Convert, &baseURLH)) - return NULL; - _err = HRGetBaseURL(_self->ob_itself, - baseURLH); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *HtmlObj_HRGetHTMLURL(_self, _args) - HtmlObjectObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - OSStatus _err; - Handle HTMLURLH; - if (!PyArg_ParseTuple(_args, "O&", - ResObj_Convert, &HTMLURLH)) - return NULL; - _err = HRGetHTMLURL(_self->ob_itself, - HTMLURLH); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *HtmlObj_HRGetTitle(_self, _args) - HtmlObjectObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - OSStatus _err; - StringPtr title; - if (!PyArg_ParseTuple(_args, "s", - &title)) - return NULL; - _err = HRGetTitle(_self->ob_itself, - title); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *HtmlObj_HRGetHTMLFile(_self, _args) - HtmlObjectObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - OSStatus _err; - FSSpec fsspec; - if (!PyArg_ParseTuple(_args, "")) - return NULL; - _err = HRGetHTMLFile(_self->ob_itself, - &fsspec); - if (_err != noErr) return PyMac_Error(_err); - _res = Py_BuildValue("O&", - PyMac_BuildFSSpec, fsspec); - return _res; -} - -static PyObject *HtmlObj_HRUnregisterWasURLVisitedUPP(_self, _args) - HtmlObjectObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - if (!PyArg_ParseTuple(_args, "")) - return NULL; - HRUnregisterWasURLVisitedUPP(_self->ob_itself); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *HtmlObj_HRUnregisterNewURLUPP(_self, _args) - HtmlObjectObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - if (!PyArg_ParseTuple(_args, "")) - return NULL; - HRUnregisterNewURLUPP(_self->ob_itself); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *HtmlObj_HRUnregisterURLToFSSpecUPP(_self, _args) - HtmlObjectObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - if (!PyArg_ParseTuple(_args, "")) - return NULL; - HRUnregisterURLToFSSpecUPP(_self->ob_itself); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyMethodDef HtmlObj_methods[] = { - {"HRDisposeReference", (PyCFunction)HtmlObj_HRDisposeReference, 1, - "() -> None"}, - {"HRSetGrafPtr", (PyCFunction)HtmlObj_HRSetGrafPtr, 1, - "(GrafPtr grafPtr) -> None"}, - {"HRActivate", (PyCFunction)HtmlObj_HRActivate, 1, - "() -> None"}, - {"HRDeactivate", (PyCFunction)HtmlObj_HRDeactivate, 1, - "() -> None"}, - {"HRDraw", (PyCFunction)HtmlObj_HRDraw, 1, - "(RgnHandle updateRgnH) -> None"}, - {"HRSetRenderingRect", (PyCFunction)HtmlObj_HRSetRenderingRect, 1, - "(Rect renderingRect) -> None"}, - {"HRGetRenderedImageSize", (PyCFunction)HtmlObj_HRGetRenderedImageSize, 1, - "() -> (Point renderingSize)"}, - {"HRScrollToLocation", (PyCFunction)HtmlObj_HRScrollToLocation, 1, - "() -> (Point location)"}, - {"HRForceQuickdraw", (PyCFunction)HtmlObj_HRForceQuickdraw, 1, - "(Boolean forceQuickdraw) -> None"}, - {"HRSetScrollbarState", (PyCFunction)HtmlObj_HRSetScrollbarState, 1, - "(HRScrollbarState hScrollbarState, HRScrollbarState vScrollbarState) -> None"}, - {"HRSetDrawBorder", (PyCFunction)HtmlObj_HRSetDrawBorder, 1, - "(Boolean drawBorder) -> None"}, - {"HRSetGrowboxCutout", (PyCFunction)HtmlObj_HRSetGrowboxCutout, 1, - "(Boolean allowCutout) -> None"}, - {"HRGoToFile", (PyCFunction)HtmlObj_HRGoToFile, 1, - "(FSSpec fsspec, Boolean addToHistory, Boolean forceRefresh) -> None"}, - {"HRGoToURL", (PyCFunction)HtmlObj_HRGoToURL, 1, - "(char * url, Boolean addToHistory, Boolean forceRefresh) -> None"}, - {"HRGoToAnchor", (PyCFunction)HtmlObj_HRGoToAnchor, 1, - "(char * anchorName) -> None"}, - {"HRGoToPtr", (PyCFunction)HtmlObj_HRGoToPtr, 1, - "(Buffer buffer, Boolean addToHistory, Boolean forceRefresh) -> None"}, - {"HRGetRootURL", (PyCFunction)HtmlObj_HRGetRootURL, 1, - "(Handle rootURLH) -> None"}, - {"HRGetBaseURL", (PyCFunction)HtmlObj_HRGetBaseURL, 1, - "(Handle baseURLH) -> None"}, - {"HRGetHTMLURL", (PyCFunction)HtmlObj_HRGetHTMLURL, 1, - "(Handle HTMLURLH) -> None"}, - {"HRGetTitle", (PyCFunction)HtmlObj_HRGetTitle, 1, - "(StringPtr title) -> None"}, - {"HRGetHTMLFile", (PyCFunction)HtmlObj_HRGetHTMLFile, 1, - "() -> (FSSpec fsspec)"}, - {"HRUnregisterWasURLVisitedUPP", (PyCFunction)HtmlObj_HRUnregisterWasURLVisitedUPP, 1, - "() -> None"}, - {"HRUnregisterNewURLUPP", (PyCFunction)HtmlObj_HRUnregisterNewURLUPP, 1, - "() -> None"}, - {"HRUnregisterURLToFSSpecUPP", (PyCFunction)HtmlObj_HRUnregisterURLToFSSpecUPP, 1, - "() -> None"}, - {NULL, NULL, 0} -}; - -PyMethodChain HtmlObj_chain = { HtmlObj_methods, NULL }; - -static PyObject *HtmlObj_getattr(self, name) - HtmlObjectObject *self; - char *name; -{ - return Py_FindMethodInChain(&HtmlObj_chain, (PyObject *)self, name); -} - -#define HtmlObj_setattr NULL - -#define HtmlObj_compare NULL - -#define HtmlObj_repr NULL - -#define HtmlObj_hash NULL - -PyTypeObject HtmlObject_Type = { - PyObject_HEAD_INIT(&PyType_Type) - 0, /*ob_size*/ - "HtmlRender.HtmlObject", /*tp_name*/ - sizeof(HtmlObjectObject), /*tp_basicsize*/ - 0, /*tp_itemsize*/ - /* methods */ - (destructor) HtmlObj_dealloc, /*tp_dealloc*/ - 0, /*tp_print*/ - (getattrfunc) HtmlObj_getattr, /*tp_getattr*/ - (setattrfunc) HtmlObj_setattr, /*tp_setattr*/ - (cmpfunc) HtmlObj_compare, /*tp_compare*/ - (reprfunc) HtmlObj_repr, /*tp_repr*/ - (PyNumberMethods *)0, /* tp_as_number */ - (PySequenceMethods *)0, /* tp_as_sequence */ - (PyMappingMethods *)0, /* tp_as_mapping */ - (hashfunc) HtmlObj_hash, /*tp_hash*/ -}; - -/* ------------------- End object type HtmlObject ------------------- */ - - -static PyObject *Html_HRGetHTMLRenderingLibVersion(_self, _args) - PyObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - OSStatus _err; - NumVersion returnVers; - if (!PyArg_ParseTuple(_args, "")) - return NULL; - _err = HRGetHTMLRenderingLibVersion(&returnVers); - if (_err != noErr) return PyMac_Error(_err); - _res = Py_BuildValue("O&", - PyMac_BuildNumVersion, returnVers); - return _res; -} - -static PyObject *Html_HRNewReference(_self, _args) - PyObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - OSStatus _err; - HRReference hrRef; - OSType rendererType; - GrafPtr grafPtr; - if (!PyArg_ParseTuple(_args, "O&O&", - PyMac_GetOSType, &rendererType, - GrafObj_Convert, &grafPtr)) - return NULL; - _err = HRNewReference(&hrRef, - rendererType, - grafPtr); - if (_err != noErr) return PyMac_Error(_err); - _res = Py_BuildValue("O&", - HtmlObj_New, hrRef); - return _res; -} - -static PyObject *Html_HRFreeMemory(_self, _args) - PyObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - SInt32 _rv; - Size inBytesNeeded; - if (!PyArg_ParseTuple(_args, "l", - &inBytesNeeded)) - return NULL; - _rv = HRFreeMemory(inBytesNeeded); - _res = Py_BuildValue("l", - _rv); - return _res; -} - -static PyObject *Html_HRScreenConfigurationChanged(_self, _args) - PyObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - if (!PyArg_ParseTuple(_args, "")) - return NULL; - HRScreenConfigurationChanged(); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Html_HRIsHREvent(_self, _args) - PyObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - Boolean _rv; - EventRecord eventRecord; - if (!PyArg_ParseTuple(_args, "O&", - PyMac_GetEventRecord, &eventRecord)) - return NULL; - _rv = HRIsHREvent(&eventRecord); - _res = Py_BuildValue("b", - _rv); - return _res; -} - -static PyObject *Html_HRUtilCreateFullURL(_self, _args) - PyObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - OSStatus _err; - char * rootURL; - char * linkURL; - Handle fullURLH; - if (!PyArg_ParseTuple(_args, "ssO&", - &rootURL, - &linkURL, - ResObj_Convert, &fullURLH)) - return NULL; - _err = HRUtilCreateFullURL(rootURL, - linkURL, - fullURLH); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Html_HRUtilGetFSSpecFromURL(_self, _args) - PyObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - OSStatus _err; - char * rootURL; - char * linkURL; - FSSpec destSpec; - if (!PyArg_ParseTuple(_args, "ss", - &rootURL, - &linkURL)) - return NULL; - _err = HRUtilGetFSSpecFromURL(rootURL, - linkURL, - &destSpec); - if (_err != noErr) return PyMac_Error(_err); - _res = Py_BuildValue("O&", - PyMac_BuildFSSpec, destSpec); - return _res; -} - -static PyObject *Html_HRUtilGetURLFromFSSpec(_self, _args) - PyObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - OSStatus _err; - FSSpec fsspec; - Handle urlHandle; - if (!PyArg_ParseTuple(_args, "O&O&", - PyMac_GetFSSpec, &fsspec, - ResObj_Convert, &urlHandle)) - return NULL; - _err = HRUtilGetURLFromFSSpec(&fsspec, - urlHandle); - if (_err != noErr) return PyMac_Error(_err); - Py_INCREF(Py_None); - _res = Py_None; - return _res; -} - -static PyObject *Html_HRHTMLRenderingLibAvailable(_self, _args) - PyObject *_self; - PyObject *_args; -{ - PyObject *_res = NULL; - int _rv; - if (!PyArg_ParseTuple(_args, "")) - return NULL; - _rv = HRHTMLRenderingLibAvailable(); - _res = Py_BuildValue("i", - _rv); - return _res; -} - -static PyMethodDef Html_methods[] = { - {"HRGetHTMLRenderingLibVersion", (PyCFunction)Html_HRGetHTMLRenderingLibVersion, 1, - "() -> (NumVersion returnVers)"}, - {"HRNewReference", (PyCFunction)Html_HRNewReference, 1, - "(OSType rendererType, GrafPtr grafPtr) -> (HRReference hrRef)"}, - {"HRFreeMemory", (PyCFunction)Html_HRFreeMemory, 1, - "(Size inBytesNeeded) -> (SInt32 _rv)"}, - {"HRScreenConfigurationChanged", (PyCFunction)Html_HRScreenConfigurationChanged, 1, - "() -> None"}, - {"HRIsHREvent", (PyCFunction)Html_HRIsHREvent, 1, - "(EventRecord eventRecord) -> (Boolean _rv)"}, - {"HRUtilCreateFullURL", (PyCFunction)Html_HRUtilCreateFullURL, 1, - "(char * rootURL, char * linkURL, Handle fullURLH) -> None"}, - {"HRUtilGetFSSpecFromURL", (PyCFunction)Html_HRUtilGetFSSpecFromURL, 1, - "(char * rootURL, char * linkURL) -> (FSSpec destSpec)"}, - {"HRUtilGetURLFromFSSpec", (PyCFunction)Html_HRUtilGetURLFromFSSpec, 1, - "(FSSpec fsspec, Handle urlHandle) -> None"}, - {"HRHTMLRenderingLibAvailable", (PyCFunction)Html_HRHTMLRenderingLibAvailable, 1, - "() -> (int _rv)"}, - {NULL, NULL, 0} -}; - - - - -void initHtmlRender() -{ - PyObject *m; - PyObject *d; - - - - - m = Py_InitModule("HtmlRender", Html_methods); - d = PyModule_GetDict(m); - Html_Error = PyMac_GetOSErrException(); - if (Html_Error == NULL || - PyDict_SetItemString(d, "Error", Html_Error) != 0) - Py_FatalError("can't initialize HtmlRender.Error"); - HtmlObject_Type.ob_type = &PyType_Type; - Py_INCREF(&HtmlObject_Type); - if (PyDict_SetItemString(d, "HtmlObjectType", (PyObject *)&HtmlObject_Type) != 0) - Py_FatalError("can't initialize HtmlObjectType"); -} - -/* ===================== End module HtmlRender ====================== */ - diff --git a/Mac/Modules/htmlrender/htmlscan.py b/Mac/Modules/htmlrender/htmlscan.py deleted file mode 100644 index 81f107c2b1..0000000000 --- a/Mac/Modules/htmlrender/htmlscan.py +++ /dev/null @@ -1,63 +0,0 @@ -# Scan an Apple header file, generating a Python file of generator calls. - -import sys -import os -from bgenlocations import TOOLBOXDIR, BGENDIR -sys.path.append(BGENDIR) - -from scantools import Scanner - -LONG = "HtmlRendering" -SHORT = "html" -OBJECT = "HRReference" - -def main(): -## input = LONG + ".h" - input = "Macintosh HD:ufs:jack:SWdev:Universal:Interfaces:CIncludes:HTMLRendering.h" - output = SHORT + "gen.py" - defsoutput = TOOLBOXDIR + LONG + ".py" - scanner = MyScanner(input, output, defsoutput) - scanner.scan() - scanner.close() - print "=== Testing definitions output code ===" - execfile(defsoutput, {}, {}) - 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] - if t == OBJECT and m == "InMode": - classname = "Method" - listname = "methods" - return classname, listname - - def makeblacklistnames(self): - return [ - "HRDisposeReference", - ] - - def makeblacklisttypes(self): - return [ - "HRNewURLUPP", - "HRURLToFSSpecUPP", - "HRWasURLVisitedUPP", - ] - - def makerepairinstructions(self): - return [ - ([('char', '*', 'OutMode'), ('UInt32', '*', 'InMode')], - [('InBuffer', '*', 'InMode')]), - ] - - def writeinitialdefs(self): - self.defsfile.write("def FOUR_CHAR_CODE(x): return x\n") - - -if __name__ == "__main__": - main() diff --git a/Mac/Modules/htmlrender/htmlsupport.py b/Mac/Modules/htmlrender/htmlsupport.py deleted file mode 100644 index e769018b01..0000000000 --- a/Mac/Modules/htmlrender/htmlsupport.py +++ /dev/null @@ -1,213 +0,0 @@ -# This script generates the Dialogs interface for Python. -# It uses the "bgen" package to generate C code. -# It execs the file dlggen.py which contain the function definitions -# (dlggen.py was generated by dlgscan.py, scanning the <Dialogs.h> header file). - -from macsupport import * - -# Create the type objects - -HRReference = OpaqueByValueType("HRReference", "HtmlObj") - -HRScrollbarState = Type("HRScrollbarState", "h") -URLSourceType = Type("URLSourceType", "H") -GrafPtr = OpaqueByValueType("GrafPtr", "GrafObj") -RgnHandle = OpaqueByValueType("RgnHandle", "ResObj") -char_ptr = Type("char *", "s") -StringPtr = Type("StringPtr", "s") - -### An OptHandle is either a handle or None (in case NULL is passed in). -### This is needed for GetDialogItem(). -##OptHandle = OpaqueByValueType("Handle", "OptResObj") -## -##ModalFilterProcPtr = InputOnlyType("PyObject*", "O") -##ModalFilterProcPtr.passInput = lambda name: "NewModalFilterProc(Dlg_PassFilterProc(%s))" % name -##ModalFilterUPP = ModalFilterProcPtr -## -## -##DITLMethod = Type("DITLMethod", "h") -##DialogItemIndex = Type("DialogItemIndex", "h") -##DialogItemType = Type("DialogItemType", "h") -##DialogItemIndexZeroBased = Type("DialogItemIndexZeroBased", "h") -##AlertType = Type("AlertType", "h") -##StringPtr = Str255 -##EventMask = Type("EventMask", "h") -## -includestuff = includestuff + """ -#include <HTMLRendering.h> -""" -## -###ifndef HAVE_UNIVERSAL_HEADERS -###define NewModalFilterProc(x) (x) -###endif -## -###define resNotFound -192 /* Can't include <Errors.h> because of Python's "errors.h" */ -## -##/* XXX Shouldn't this be a stack? */ -##static PyObject *Dlg_FilterProc_callback = NULL; -## -##static PyObject *DlgObj_New(DialogPtr); /* Forward */ -## -##static pascal Boolean Dlg_UnivFilterProc(DialogPtr dialog, -## EventRecord *event, -## short *itemHit) -##{ -## Boolean rv; -## PyObject *args, *res; -## PyObject *callback = Dlg_FilterProc_callback; -## if (callback == NULL) -## return 0; /* Default behavior */ -## Dlg_FilterProc_callback = NULL; /* We'll restore it when call successful */ -## args = Py_BuildValue("O&O&", WinObj_WhichWindow, dialog, PyMac_BuildEventRecord, event); -## if (args == NULL) -## res = NULL; -## else { -## res = PyEval_CallObject(callback, args); -## Py_DECREF(args); -## } -## if (res == NULL) { -## PySys_WriteStderr("Exception in Dialog Filter\\n"); -## PyErr_Print(); -## *itemHit = -1; /* Fake return item */ -## return 1; /* We handled it */ -## } -## else { -## Dlg_FilterProc_callback = callback; -## if (PyInt_Check(res)) { -## *itemHit = PyInt_AsLong(res); -## rv = 1; -## } -## else -## rv = PyObject_IsTrue(res); -## } -## Py_DECREF(res); -## return rv; -##} -## -##static ModalFilterProcPtr -##Dlg_PassFilterProc(PyObject *callback) -##{ -## PyObject *tmp = Dlg_FilterProc_callback; -## Dlg_FilterProc_callback = NULL; -## if (callback == Py_None) { -## Py_XDECREF(tmp); -## return NULL; -## } -## Py_INCREF(callback); -## Dlg_FilterProc_callback = callback; -## Py_XDECREF(tmp); -## return &Dlg_UnivFilterProc; -##} -## -##static PyObject *Dlg_UserItemProc_callback = NULL; -## -##static pascal void Dlg_UnivUserItemProc(DialogPtr dialog, -## short item) -##{ -## PyObject *args, *res; -## -## if (Dlg_UserItemProc_callback == NULL) -## return; /* Default behavior */ -## Dlg_FilterProc_callback = NULL; /* We'll restore it when call successful */ -## args = Py_BuildValue("O&h", WinObj_WhichWindow, dialog, item); -## if (args == NULL) -## res = NULL; -## else { -## res = PyEval_CallObject(Dlg_UserItemProc_callback, args); -## Py_DECREF(args); -## } -## if (res == NULL) { -## PySys_WriteStderr("Exception in Dialog UserItem proc\\n"); -## PyErr_Print(); -## } -## Py_XDECREF(res); -## return; -##} -## -##extern PyMethodChain WinObj_chain; -##""" -## - -# Define a class which specializes our object definition -class MyObjectDefinition(GlobalObjectDefinition): - pass -## def __init__(self, name, prefix = None, itselftype = None): -## GlobalObjectDefinition.__init__(self, name, prefix, itselftype) -## self.basechain = "&WinObj_chain" -## def outputInitStructMembers(self): -## GlobalObjectDefinition.outputInitStructMembers(self) -## Output("SetWRefCon(itself, (long)it);") -## def outputCheckNewArg(self): -## Output("if (itself == NULL) return Py_None;") -## def outputCheckConvertArg(self): -## Output("if (v == Py_None) { *p_itself = NULL; return 1; }") -## Output("if (PyInt_Check(v)) { *p_itself = (DialogPtr)PyInt_AsLong(v);") -## Output(" return 1; }") - def outputFreeIt(self, itselfname): - Output("HRDisposeReference(%s);", itselfname) - -# Create the generator groups and link them -module = MacModule('HtmlRender', 'Html', includestuff, finalstuff, initstuff) -object = MyObjectDefinition('HtmlObject', 'HtmlObj', 'HRReference') -module.addobject(object) - -# Create the generator classes used to populate the lists -Function = OSErrFunctionGenerator -Method = OSErrMethodGenerator - -# Create and populate the lists -functions = [] -methods = [] -execfile("htmlgen.py") - -f = Function(int, 'HRHTMLRenderingLibAvailable') -functions.append(f) - -# add the populated lists to the generator groups -for f in functions: module.add(f) -for f in methods: object.add(f) - -### Some methods that are currently macro's in C, but will be real routines -### in MacOS 8. -## -##f = Method(ExistingDialogPtr, 'GetDialogWindow', (DialogRef, 'dialog', InMode)) -##object.add(f) -##f = Method(SInt16, 'GetDialogDefaultItem', (DialogRef, 'dialog', InMode)) -##object.add(f) -##f = Method(SInt16, 'GetDialogCancelItem', (DialogRef, 'dialog', InMode)) -##object.add(f) -##f = Method(SInt16, 'GetDialogKeyboardFocusItem', (DialogRef, 'dialog', InMode)) -##object.add(f) -##f = Method(void, 'SetGrafPortOfDialog', (DialogRef, 'dialog', InMode)) -##object.add(f) -## -##setuseritembody = """ -## PyObject *new = NULL; -## -## -## if (!PyArg_ParseTuple(_args, "|O", &new)) -## return NULL; -## -## if (Dlg_UserItemProc_callback && new && new != Py_None) { -## PyErr_SetString(Dlg_Error, "Another UserItemProc is already installed"); -## return NULL; -## } -## -## if (new == Py_None) { -## new = NULL; -## _res = Py_None; -## Py_INCREF(Py_None); -## } else { -## Py_INCREF(new); -## _res = Py_BuildValue("O&", ResObj_New, (Handle)NewUserItemProc(Dlg_UnivUserItemProc)); -## } -## -## Dlg_UserItemProc_callback = new; -## return _res; -##""" -##f = ManualGenerator("SetUserItemHandler", setuseritembody) -##module.add(f) - -# generate output -SetOutputFileName('HtmlRendermodule.c') -module.generate() |