Fix compilation error when building without Blender
[blender-staging.git] / release / datafiles / blender_icons_update.py
1 #!/usr/bin/env python3
2
3 # This script updates icons from the SVG file
4 import os
5 import sys
6
7 def run(cmd):
8     print("   ", cmd)
9     os.system(cmd)
10
11 BASEDIR = os.path.abspath(os.path.dirname(__file__)) + os.sep
12
13 inkscape_path = 'inkscape'
14
15 if sys.platform == 'darwin':
16     inkscape_app_path = '/Applications/Inkscape.app/Contents/Resources/script'
17     if os.path.exists(inkscape_app_path):
18         inkscape_path = inkscape_app_path
19
20 cmd = inkscape_path + ' "%sblender_icons.svg" --export-dpi=90  --without-gui --export-png="%sblender_icons16.png"' % (BASEDIR, BASEDIR)
21 run(cmd)
22 cmd = inkscape_path + ' "%sblender_icons.svg" --export-dpi=180 --without-gui --export-png="%sblender_icons32.png"' % (BASEDIR, BASEDIR)
23 run(cmd)
24
25
26 # For testing it can be good to clear all old
27 # rm ./blender_icons16/*.dat
28 # rm ./blender_icons32/*.dat
29
30 datatoc_icon_split_py = os.path.join(BASEDIR, "..", "..", "source", "blender", "datatoc", "datatoc_icon_split.py")
31
32 # create .dat pixmaps (which are stored in git)
33 cmd = (
34     "blender "
35     "--background -noaudio "
36     "--python " + datatoc_icon_split_py + " -- "
37     "--image=" + BASEDIR + "blender_icons16.png "
38     "--output=" + BASEDIR + "blender_icons16 "
39     "--output_prefix=icon16_ "
40     "--name_style=UI_ICONS "
41     "--parts_x 26 --parts_y 30 "
42     "--minx 3 --maxx 53 --miny 3 --maxy 8 "
43     "--minx_icon 2 --maxx_icon 2 --miny_icon 2 --maxy_icon 2 "
44     "--spacex_icon 1 --spacey_icon 1"
45     )
46 run(cmd)
47
48 cmd = (
49     "blender "
50     "--background -noaudio "
51     "--python " + datatoc_icon_split_py + " -- "
52     "--image=" + BASEDIR + "blender_icons32.png "
53     "--output=" + BASEDIR + "blender_icons32 "
54     "--output_prefix=icon32_ "
55     "--name_style=UI_ICONS "
56     "--parts_x 26 --parts_y 30 "
57     "--minx 6 --maxx 106 --miny 6 --maxy 16 "
58     "--minx_icon 4 --maxx_icon 4 --miny_icon 4 --maxy_icon 4 "
59     "--spacex_icon 2 --spacey_icon 2"
60
61     )
62 run(cmd)
63
64 os.remove(BASEDIR + "blender_icons16.png")
65 os.remove(BASEDIR + "blender_icons32.png")
66
67 # For testing, if we want the PNG of each image
68 # ./datatoc_icon_split_to_png.py ./blender_icons16/*.dat
69 # ./datatoc_icon_split_to_png.py ./blender_icons32/*.dat
70