Mercurial > cpython-lru_cache-weakref
annotate Mac/Modules/ColorPickermodule.c @ 80661:94de77bd0b4b 2.7
Issue #16194: document imp.load_dynamic problems
when read several extension modules from the same binary object file.
| author | Andrew Svetlov <andrew.svetlov@gmail.com> |
|---|---|
| date | Thu, 29 Nov 2012 19:51:28 +0200 |
| parents | b36cb4602e21 |
| children |
| rev | line source |
|---|---|
|
8102
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
1 /****************************************************************** |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
2 Copyright 1998 by Just van Rossum, Den Haag, The Netherlands. |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
3 |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
4 All Rights Reserved |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
5 |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
6 Permission to use, copy, modify, and distribute this software and its |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
7 documentation for any purpose and without fee is hereby granted, |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
8 provided that the above copyright notice appear in all copies and that |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
9 both that copyright notice and this permission notice appear in |
|
61465
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
10 supporting documentation, and that the name of Just van Rossum not be |
|
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
11 used in advertising or publicity pertaining to distribution of the |
|
8102
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
12 software without specific, written prior permission. |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
13 |
|
61465
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
14 JUST VAN ROSSUM DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, |
|
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
15 INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO |
|
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
16 EVENT SHALL JUST VAN ROSSUM BE LIABLE FOR ANY SPECIAL, INDIRECT OR |
|
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
17 CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF |
|
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
18 USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR |
|
8102
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
19 OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
20 PERFORMANCE OF THIS SOFTWARE. |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
21 |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
22 ******************************************************************/ |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
23 |
|
29251
3a8b1d16b7c6
modernized ColorPicker somewhat
Just van Rossum <just@letterror.com>
parents:
13606
diff
changeset
|
24 #include <Carbon/Carbon.h> |
|
8102
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
25 #include "Python.h" |
|
13606
c9a4a1316170
pymactoolbox.h contains protoypes for all externally visible toolbox module
Jack Jansen <jack.jansen@cwi.nl>
parents:
8153
diff
changeset
|
26 #include "pymactoolbox.h" |
|
8102
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
27 |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
28 /* ----------------------------------------------------- */ |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
29 |
|
47473
c34e34057714
MacOS X: Enable 4-way universal builds
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
46967
diff
changeset
|
30 |
|
c34e34057714
MacOS X: Enable 4-way universal builds
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
46967
diff
changeset
|
31 #ifndef __LP64__ |
|
c34e34057714
MacOS X: Enable 4-way universal builds
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
46967
diff
changeset
|
32 |
|
8102
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
33 static char cp_GetColor__doc__[] = |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
34 "GetColor(prompt, (r, g, b)) -> (r, g, b), ok" |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
35 ; |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
36 |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
37 static PyObject * |
|
29493
abc2a20dc3a3
This wasn't ansified. Fixed.
Jack Jansen <jack.jansen@cwi.nl>
parents:
29251
diff
changeset
|
38 cp_GetColor(PyObject *self, PyObject *args) |
|
8102
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
39 { |
|
61465
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
40 RGBColor inColor, outColor; |
|
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
41 Boolean ok; |
|
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
42 Point where = {0, 0}; |
|
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
43 Str255 prompt; |
|
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
44 |
|
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
45 if (!PyArg_ParseTuple(args, "O&O&", PyMac_GetStr255, prompt, QdRGB_Convert, &inColor)) |
|
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
46 return NULL; |
|
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
47 |
|
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
48 ok = GetColor(where, prompt, &inColor, &outColor); |
|
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
49 |
|
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
50 return Py_BuildValue("O&h", QdRGB_New, &outColor, ok); |
|
8102
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
51 } |
|
47473
c34e34057714
MacOS X: Enable 4-way universal builds
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
46967
diff
changeset
|
52 #endif /* __LP64__ */ |
|
8102
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
53 |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
54 /* List of methods defined in the module */ |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
55 |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
56 static struct PyMethodDef cp_methods[] = { |
|
47473
c34e34057714
MacOS X: Enable 4-way universal builds
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
46967
diff
changeset
|
57 #ifndef __LP64__ |
|
61465
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
58 {"GetColor", (PyCFunction)cp_GetColor, METH_VARARGS, cp_GetColor__doc__}, |
|
47473
c34e34057714
MacOS X: Enable 4-way universal builds
Ronald Oussoren <ronaldoussoren@mac.com>
parents:
46967
diff
changeset
|
59 #endif /* __LP64__ */ |
|
61465
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
60 {NULL, (PyCFunction)NULL, 0, NULL} /* sentinel */ |
|
8102
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
61 }; |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
62 |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
63 |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
64 /* Initialization function for the module (*must* be called initColorPicker) */ |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
65 |
|
61465
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
66 static char cp_module_documentation[] = |
|
8102
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
67 "" |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
68 ; |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
69 |
|
29493
abc2a20dc3a3
This wasn't ansified. Fixed.
Jack Jansen <jack.jansen@cwi.nl>
parents:
29251
diff
changeset
|
70 void initColorPicker(void) |
|
8102
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
71 { |
|
61465
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
72 PyObject *m; |
|
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
73 |
|
61463
fd25030223b0
Untabify C files. Will watch buildbots.
Antoine Pitrou <solipsis@pitrou.net>
parents:
60271
diff
changeset
|
74 if (PyErr_WarnPy3k("In 3.x, the ColorPicker module is removed.", 1) < 0) |
|
61465
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
75 return; |
|
8102
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
76 |
|
61465
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
77 /* Create the module and add the functions */ |
|
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
78 m = Py_InitModule4("ColorPicker", cp_methods, |
|
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
79 cp_module_documentation, |
|
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
80 (PyObject*)NULL,PYTHON_API_VERSION); |
|
8102
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
81 |
|
61465
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
82 /* Add symbolic constants to the module here */ |
|
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
83 |
|
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
84 /* XXXX Add constants here */ |
|
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
85 |
|
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
86 /* Check for errors */ |
|
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
87 if (PyErr_Occurred()) |
|
e38335d4df91
Recorded merge of revisions 81029 via svnmerge from
Antoine Pitrou <solipsis@pitrou.net>
parents:
47473
diff
changeset
|
88 Py_FatalError("can't initialize module ColorPicker"); |
|
8102
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
89 } |
|
427f3489e52b
Added ColorPicker and Printing modules, donated by Just. In config.c
Jack Jansen <jack.jansen@cwi.nl>
parents:
diff
changeset
|
90 |
