svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r22668:22701
[blender.git] / source / blender / python / simple_enum_gen.py
1  # ***** BEGIN GPL LICENSE BLOCK *****
2  #
3  # This program is free software; you can redistribute it and/or
4  # modify it under the terms of the GNU General Public License
5  # as published by the Free Software Foundation; either version 2
6  # of the License, or (at your option) any later version.
7  #
8  # This program is distributed in the hope that it will be useful,
9  # but WITHOUT ANY WARRANTY; without even the implied warranty of
10  # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11  # GNU General Public License for more details.
12  #
13  # You should have received a copy of the GNU General Public License
14  # along with this program; if not, write to the Free Software Foundation,
15  # Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
16  #
17  # Contributor(s): Campbell Barton
18  #
19  # #**** END GPL LICENSE BLOCK #****
20
21 defs = """
22         SPACE_EMPTY,
23         SPACE_VIEW3D,
24         SPACE_IPO,
25         SPACE_OUTLINER,
26         SPACE_BUTS,
27         SPACE_FILE,
28         SPACE_IMAGE,            
29         SPACE_INFO,
30         SPACE_SEQ,
31         SPACE_TEXT,
32         SPACE_IMASEL,
33         SPACE_SOUND,
34         SPACE_ACTION,
35         SPACE_NLA,
36         SPACE_SCRIPT,
37         SPACE_TIME,
38         SPACE_NODE,
39         SPACEICONMAX
40 """
41
42 print '\tmod = PyModule_New("dummy");'
43 print '\tPyModule_AddObject( submodule, "key", mod );'
44
45 for d in defs.split('\n'):
46         
47         d = d.replace(',', ' ')
48         w = d.split()
49         
50         if not w:
51                 continue
52         
53         try:            w.remove("#define")
54         except: pass
55         
56         # print w
57         
58         val = w[0]
59         py_val = w[0]
60         
61         print '\tPyModule_AddObject( mod, "%s", PyLong_FromSize_t(%s) );' % (val, py_val)
62         
63
64
65