1 | /***********************************************************
|
---|
2 | Copyright 1991-1997 by Stichting Mathematisch Centrum, Amsterdam,
|
---|
3 | The Netherlands.
|
---|
4 |
|
---|
5 | All Rights Reserved
|
---|
6 |
|
---|
7 | Permission to use, copy, modify, and distribute this software and its
|
---|
8 | documentation for any purpose and without fee is hereby granted,
|
---|
9 | provided that the above copyright notice appear in all copies and that
|
---|
10 | both that copyright notice and this permission notice appear in
|
---|
11 | supporting documentation, and that the names of Stichting Mathematisch
|
---|
12 | Centrum or CWI not be used in advertising or publicity pertaining to
|
---|
13 | distribution of the software without specific, written prior permission.
|
---|
14 |
|
---|
15 | STICHTING MATHEMATISCH CENTRUM DISCLAIMS ALL WARRANTIES WITH REGARD TO
|
---|
16 | THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
|
---|
17 | FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH CENTRUM BE LIABLE
|
---|
18 | FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
---|
19 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
---|
20 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
---|
21 | OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
---|
22 |
|
---|
23 | ******************************************************************/
|
---|
24 |
|
---|
25 | /* Macintosh Gestalt interface */
|
---|
26 |
|
---|
27 | #include "Python.h"
|
---|
28 | #include "pymactoolbox.h"
|
---|
29 |
|
---|
30 | #include <Carbon/Carbon.h>
|
---|
31 |
|
---|
32 | static PyObject *
|
---|
33 | gestalt_gestalt(PyObject *self, PyObject *args)
|
---|
34 | {
|
---|
35 | OSErr iErr;
|
---|
36 | OSType selector;
|
---|
37 | SInt32 response;
|
---|
38 | if (!PyArg_ParseTuple(args, "O&", PyMac_GetOSType, &selector))
|
---|
39 | return NULL;
|
---|
40 | iErr = Gestalt ( selector, &response );
|
---|
41 | if (iErr != 0)
|
---|
42 | return PyMac_Error(iErr);
|
---|
43 | return PyInt_FromLong(response);
|
---|
44 | }
|
---|
45 |
|
---|
46 | static struct PyMethodDef gestalt_methods[] = {
|
---|
47 | {"gestalt", gestalt_gestalt, METH_VARARGS},
|
---|
48 | {NULL, NULL} /* Sentinel */
|
---|
49 | };
|
---|
50 |
|
---|
51 | void
|
---|
52 | initgestalt(void)
|
---|
53 | {
|
---|
54 | Py_InitModule("gestalt", gestalt_methods);
|
---|
55 | }
|
---|