icon update: replace os.system w/ subprocess.check_call

This commit is contained in:
Campbell Barton
2018-01-26 12:46:10 +11:00
parent 0f14c72c29
commit 9b96dd0f61
2 changed files with 54 additions and 36 deletions

View File

@@ -2,13 +2,14 @@
# This script updates icons from the SVG file # This script updates icons from the SVG file
import os import os
import subprocess
import sys import sys
def run(cmd): def run(cmd):
print(" ", cmd) print(" ", " ".join(cmd))
os.system(cmd) subprocess.check_call(cmd)
BASEDIR = os.path.abspath(os.path.dirname(__file__)) + os.sep BASEDIR = os.path.abspath(os.path.dirname(__file__))
inkscape_bin = "inkscape" inkscape_bin = "inkscape"
blender_bin = "blender" blender_bin = "blender"
@@ -18,9 +19,24 @@ if sys.platform == 'darwin':
if os.path.exists(inkscape_app_path): if os.path.exists(inkscape_app_path):
inkscape_bin = inkscape_app_path inkscape_bin = inkscape_app_path
cmd = inkscape_bin + ' "%sblender_icons.svg" --export-width=602 --export-height=640 --without-gui --export-png="%sblender_icons16.png"' % (BASEDIR, BASEDIR) cmd = (
inkscape_bin,
os.path.join(BASEDIR, "blender_icons.svg"),
"--export-width=602",
"--export-height=640",
"--without-gui",
"--export-png=" + os.path.join(BASEDIR, "blender_icons16.png"),
)
run(cmd) run(cmd)
cmd = inkscape_bin + ' "%sblender_icons.svg" --export-width=1204 --export-height=1280 --without-gui --export-png="%sblender_icons32.png"' % (BASEDIR, BASEDIR)
cmd = (
inkscape_bin,
os.path.join(BASEDIR, "blender_icons.svg"),
"--export-width=1204",
"--export-height=1280",
"--without-gui",
"--export-png=" + os.path.join(BASEDIR, "blender_icons32.png"),
)
run(cmd) run(cmd)
@@ -32,40 +48,36 @@ datatoc_icon_split_py = os.path.join(BASEDIR, "..", "..", "source", "blender", "
# create .dat pixmaps (which are stored in git) # create .dat pixmaps (which are stored in git)
cmd = ( cmd = (
blender_bin + " " blender_bin, "--background", "-noaudio",
"--background -noaudio " "--python", datatoc_icon_split_py, "--",
"--python " + datatoc_icon_split_py + " -- " "--image=" + os.path.join(BASEDIR, "blender_icons16.png"),
"--image=" + BASEDIR + "blender_icons16.png " "--output=" + os.path.join(BASEDIR, "blender_icons16"),
"--output=" + BASEDIR + "blender_icons16 " "--output_prefix=icon16_",
"--output_prefix=icon16_ " "--name_style=UI_ICONS",
"--name_style=UI_ICONS " "--parts_x", "26", "--parts_y", "30",
"--parts_x 26 --parts_y 30 " "--minx", "3", "--maxx", "53", "--miny", "3", "--maxy", "8",
"--minx 3 --maxx 53 --miny 3 --maxy 8 " "--minx_icon", "2", "--maxx_icon", "2", "--miny_icon", "2", "--maxy_icon", "2",
"--minx_icon 2 --maxx_icon 2 --miny_icon 2 --maxy_icon 2 " "--spacex_icon", "1", "--spacey_icon", "1",
"--spacex_icon 1 --spacey_icon 1"
) )
run(cmd) run(cmd)
cmd = ( cmd = (
blender_bin + " " blender_bin, "--background", "-noaudio",
"--background -noaudio " "--python", datatoc_icon_split_py, "--",
"--python " + datatoc_icon_split_py + " -- " "--image=" + os.path.join(BASEDIR, "blender_icons32.png"),
"--image=" + BASEDIR + "blender_icons32.png " "--output=" + os.path.join(BASEDIR, "blender_icons32"),
"--output=" + BASEDIR + "blender_icons32 " "--output_prefix=icon32_",
"--output_prefix=icon32_ " "--name_style=UI_ICONS",
"--name_style=UI_ICONS " "--parts_x", "26", "--parts_y", "30",
"--parts_x 26 --parts_y 30 " "--minx", "6", "--maxx", "106", "--miny", "6", "--maxy", "16",
"--minx 6 --maxx 106 --miny 6 --maxy 16 " "--minx_icon", "4", "--maxx_icon", "4", "--miny_icon", "4", "--maxy_icon", "4",
"--minx_icon 4 --maxx_icon 4 --miny_icon 4 --maxy_icon 4 " "--spacex_icon", "2", "--spacey_icon", "2",
"--spacex_icon 2 --spacey_icon 2"
) )
run(cmd) run(cmd)
os.remove(BASEDIR + "blender_icons16.png") os.remove(os.path.join(BASEDIR, "blender_icons16.png"))
os.remove(BASEDIR + "blender_icons32.png") os.remove(os.path.join(BASEDIR, "blender_icons32.png"))
# For testing, if we want the PNG of each image # For testing, if we want the PNG of each image
# ./datatoc_icon_split_to_png.py ./blender_icons16/*.dat # ./datatoc_icon_split_to_png.py ./blender_icons16/*.dat
# ./datatoc_icon_split_to_png.py ./blender_icons32/*.dat # ./datatoc_icon_split_to_png.py ./blender_icons32/*.dat

View File

@@ -2,9 +2,10 @@
# This script updates icons from the SVG file # This script updates icons from the SVG file
import os import os
import subprocess
import sys import sys
BASEDIR = os.path.abspath(os.path.dirname(__file__)) + os.sep BASEDIR = os.path.abspath(os.path.dirname(__file__))
inkscape_path = 'inkscape' inkscape_path = 'inkscape'
@@ -13,5 +14,10 @@ if sys.platform == 'darwin':
if os.path.exists(inkscape_app_path): if os.path.exists(inkscape_app_path):
inkscape_path = inkscape_app_path inkscape_path = inkscape_app_path
cmd = inkscape_path + ' "%sprvicons.svg" --without-gui --export-png="%sprvicons.png"' % (BASEDIR, BASEDIR) cmd = (
os.system(cmd) inkscape_path,
os.path.join(BASEDIR, "prvicons.svg"),
"--without-gui",
"--export-png=" + os.path.join(BASEDIR, "prvicons.png"),
)
subprocess.check_call(cmd)