annotate Mac/Modules/htmlrender/htmlsupport.py @ 25838:8540887bcec6 2.2

Backport of 2.183: Fix memory leak in add_subclass() found by NealN with valgrind.
author Guido van Rossum <guido@python.org>
date Fri, 18 Oct 2002 13:42:21 +0000
parents e8ce1bb056ae
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
12709
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
1 # This script generates the Dialogs interface for Python.
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
2 # It uses the "bgen" package to generate C code.
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
3 # It execs the file dlggen.py which contain the function definitions
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
4 # (dlggen.py was generated by dlgscan.py, scanning the <Dialogs.h> header file).
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
5
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
6 from macsupport import *
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
7
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
8 # Create the type objects
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
9
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
10 HRReference = OpaqueByValueType("HRReference", "HtmlObj")
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
11
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
12 HRScrollbarState = Type("HRScrollbarState", "h")
13398
e8ce1bb056ae Changed all (hopefully) uses of unsigned 16 bit value to use H format specifier, now that h is signed-only.
Jack Jansen <jack.jansen@cwi.nl>
parents: 12711
diff changeset
13 URLSourceType = Type("URLSourceType", "H")
12709
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
14 GrafPtr = OpaqueByValueType("GrafPtr", "GrafObj")
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
15 RgnHandle = OpaqueByValueType("RgnHandle", "ResObj")
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
16 char_ptr = Type("char *", "s")
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
17 StringPtr = Type("StringPtr", "s")
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
18
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
19 ### An OptHandle is either a handle or None (in case NULL is passed in).
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
20 ### This is needed for GetDialogItem().
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
21 ##OptHandle = OpaqueByValueType("Handle", "OptResObj")
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
22 ##
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
23 ##ModalFilterProcPtr = InputOnlyType("PyObject*", "O")
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
24 ##ModalFilterProcPtr.passInput = lambda name: "NewModalFilterProc(Dlg_PassFilterProc(%s))" % name
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
25 ##ModalFilterUPP = ModalFilterProcPtr
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
26 ##
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
27 ##
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
28 ##DITLMethod = Type("DITLMethod", "h")
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
29 ##DialogItemIndex = Type("DialogItemIndex", "h")
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
30 ##DialogItemType = Type("DialogItemType", "h")
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
31 ##DialogItemIndexZeroBased = Type("DialogItemIndexZeroBased", "h")
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
32 ##AlertType = Type("AlertType", "h")
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
33 ##StringPtr = Str255
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
34 ##EventMask = Type("EventMask", "h")
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
35 ##
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
36 includestuff = includestuff + """
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
37 #include <HTMLRendering.h>
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
38 """
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
39 ##
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
40 ###ifndef HAVE_UNIVERSAL_HEADERS
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
41 ###define NewModalFilterProc(x) (x)
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
42 ###endif
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
43 ##
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
44 ###define resNotFound -192 /* Can't include <Errors.h> because of Python's "errors.h" */
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
45 ##
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
46 ##/* XXX Shouldn't this be a stack? */
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
47 ##static PyObject *Dlg_FilterProc_callback = NULL;
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
48 ##
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
49 ##static PyObject *DlgObj_New(DialogPtr); /* Forward */
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
50 ##
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
51 ##static pascal Boolean Dlg_UnivFilterProc(DialogPtr dialog,
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
52 ## EventRecord *event,
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
53 ## short *itemHit)
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
54 ##{
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
55 ## Boolean rv;
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
56 ## PyObject *args, *res;
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
57 ## PyObject *callback = Dlg_FilterProc_callback;
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
58 ## if (callback == NULL)
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
59 ## return 0; /* Default behavior */
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
60 ## Dlg_FilterProc_callback = NULL; /* We'll restore it when call successful */
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
61 ## args = Py_BuildValue("O&O&", WinObj_WhichWindow, dialog, PyMac_BuildEventRecord, event);
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
62 ## if (args == NULL)
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
63 ## res = NULL;
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
64 ## else {
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
65 ## res = PyEval_CallObject(callback, args);
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
66 ## Py_DECREF(args);
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
67 ## }
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
68 ## if (res == NULL) {
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
69 ## PySys_WriteStderr("Exception in Dialog Filter\\n");
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
70 ## PyErr_Print();
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
71 ## *itemHit = -1; /* Fake return item */
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
72 ## return 1; /* We handled it */
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
73 ## }
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
74 ## else {
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
75 ## Dlg_FilterProc_callback = callback;
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
76 ## if (PyInt_Check(res)) {
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
77 ## *itemHit = PyInt_AsLong(res);
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
78 ## rv = 1;
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
79 ## }
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
80 ## else
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
81 ## rv = PyObject_IsTrue(res);
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
82 ## }
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
83 ## Py_DECREF(res);
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
84 ## return rv;
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
85 ##}
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
86 ##
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
87 ##static ModalFilterProcPtr
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
88 ##Dlg_PassFilterProc(PyObject *callback)
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
89 ##{
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
90 ## PyObject *tmp = Dlg_FilterProc_callback;
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
91 ## Dlg_FilterProc_callback = NULL;
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
92 ## if (callback == Py_None) {
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
93 ## Py_XDECREF(tmp);
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
94 ## return NULL;
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
95 ## }
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
96 ## Py_INCREF(callback);
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
97 ## Dlg_FilterProc_callback = callback;
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
98 ## Py_XDECREF(tmp);
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
99 ## return &Dlg_UnivFilterProc;
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
100 ##}
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
101 ##
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
102 ##static PyObject *Dlg_UserItemProc_callback = NULL;
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
103 ##
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
104 ##static pascal void Dlg_UnivUserItemProc(DialogPtr dialog,
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
105 ## short item)
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
106 ##{
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
107 ## PyObject *args, *res;
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
108 ##
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
109 ## if (Dlg_UserItemProc_callback == NULL)
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
110 ## return; /* Default behavior */
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
111 ## Dlg_FilterProc_callback = NULL; /* We'll restore it when call successful */
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
112 ## args = Py_BuildValue("O&h", WinObj_WhichWindow, dialog, item);
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
113 ## if (args == NULL)
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
114 ## res = NULL;
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
115 ## else {
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
116 ## res = PyEval_CallObject(Dlg_UserItemProc_callback, args);
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
117 ## Py_DECREF(args);
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
118 ## }
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
119 ## if (res == NULL) {
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
120 ## PySys_WriteStderr("Exception in Dialog UserItem proc\\n");
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
121 ## PyErr_Print();
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
122 ## }
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
123 ## Py_XDECREF(res);
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
124 ## return;
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
125 ##}
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
126 ##
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
127 ##extern PyMethodChain WinObj_chain;
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
128 ##"""
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
129 ##
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
130
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
131 # Define a class which specializes our object definition
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
132 class MyObjectDefinition(GlobalObjectDefinition):
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
133 pass
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
134 ## def __init__(self, name, prefix = None, itselftype = None):
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
135 ## GlobalObjectDefinition.__init__(self, name, prefix, itselftype)
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
136 ## self.basechain = "&WinObj_chain"
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
137 ## def outputInitStructMembers(self):
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
138 ## GlobalObjectDefinition.outputInitStructMembers(self)
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
139 ## Output("SetWRefCon(itself, (long)it);")
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
140 ## def outputCheckNewArg(self):
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
141 ## Output("if (itself == NULL) return Py_None;")
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
142 ## def outputCheckConvertArg(self):
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
143 ## Output("if (v == Py_None) { *p_itself = NULL; return 1; }")
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
144 ## Output("if (PyInt_Check(v)) { *p_itself = (DialogPtr)PyInt_AsLong(v);")
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
145 ## Output(" return 1; }")
12711
b817f1639939 Manually added HRHTMLRenderingLibAvailable.
Jack Jansen <jack.jansen@cwi.nl>
parents: 12709
diff changeset
146 def outputFreeIt(self, itselfname):
b817f1639939 Manually added HRHTMLRenderingLibAvailable.
Jack Jansen <jack.jansen@cwi.nl>
parents: 12709
diff changeset
147 Output("HRDisposeReference(%s);", itselfname)
12709
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
148
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
149 # Create the generator groups and link them
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
150 module = MacModule('HtmlRender', 'Html', includestuff, finalstuff, initstuff)
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
151 object = MyObjectDefinition('HtmlObject', 'HtmlObj', 'HRReference')
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
152 module.addobject(object)
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
153
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
154 # Create the generator classes used to populate the lists
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
155 Function = OSErrFunctionGenerator
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
156 Method = OSErrMethodGenerator
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
157
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
158 # Create and populate the lists
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
159 functions = []
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
160 methods = []
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
161 execfile("htmlgen.py")
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
162
12711
b817f1639939 Manually added HRHTMLRenderingLibAvailable.
Jack Jansen <jack.jansen@cwi.nl>
parents: 12709
diff changeset
163 f = Function(int, 'HRHTMLRenderingLibAvailable')
b817f1639939 Manually added HRHTMLRenderingLibAvailable.
Jack Jansen <jack.jansen@cwi.nl>
parents: 12709
diff changeset
164 functions.append(f)
b817f1639939 Manually added HRHTMLRenderingLibAvailable.
Jack Jansen <jack.jansen@cwi.nl>
parents: 12709
diff changeset
165
12709
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
166 # add the populated lists to the generator groups
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
167 for f in functions: module.add(f)
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
168 for f in methods: object.add(f)
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
169
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
170 ### Some methods that are currently macro's in C, but will be real routines
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
171 ### in MacOS 8.
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
172 ##
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
173 ##f = Method(ExistingDialogPtr, 'GetDialogWindow', (DialogRef, 'dialog', InMode))
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
174 ##object.add(f)
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
175 ##f = Method(SInt16, 'GetDialogDefaultItem', (DialogRef, 'dialog', InMode))
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
176 ##object.add(f)
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
177 ##f = Method(SInt16, 'GetDialogCancelItem', (DialogRef, 'dialog', InMode))
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
178 ##object.add(f)
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
179 ##f = Method(SInt16, 'GetDialogKeyboardFocusItem', (DialogRef, 'dialog', InMode))
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
180 ##object.add(f)
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
181 ##f = Method(void, 'SetGrafPortOfDialog', (DialogRef, 'dialog', InMode))
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
182 ##object.add(f)
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
183 ##
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
184 ##setuseritembody = """
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
185 ## PyObject *new = NULL;
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
186 ##
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
187 ##
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
188 ## if (!PyArg_ParseTuple(_args, "|O", &new))
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
189 ## return NULL;
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
190 ##
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
191 ## if (Dlg_UserItemProc_callback && new && new != Py_None) {
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
192 ## PyErr_SetString(Dlg_Error, "Another UserItemProc is already installed");
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
193 ## return NULL;
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
194 ## }
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
195 ##
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
196 ## if (new == Py_None) {
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
197 ## new = NULL;
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
198 ## _res = Py_None;
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
199 ## Py_INCREF(Py_None);
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
200 ## } else {
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
201 ## Py_INCREF(new);
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
202 ## _res = Py_BuildValue("O&", ResObj_New, (Handle)NewUserItemProc(Dlg_UnivUserItemProc));
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
203 ## }
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
204 ##
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
205 ## Dlg_UserItemProc_callback = new;
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
206 ## return _res;
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
207 ##"""
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
208 ##f = ManualGenerator("SetUserItemHandler", setuseritembody)
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
209 ##module.add(f)
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
210
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
211 # generate output
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
212 SetOutputFileName('HtmlRendermodule.c')
1bf714e0c10f Interface to macOS 9 HTMLRenderingLib. Not yet functional.
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff changeset
213 module.generate()