Files
create/icons/themed/preferences-python.svg
forbes d7b532255b
Some checks failed
Build and Test / build (pull_request) Has been cancelled
feat(icons): add icon theming infrastructure with Catppuccin color remapping
- Remove hand-crafted kindred-icons/ in favor of auto-generated themed icons
- Add icons/mappings/ with FCAD.csv (Tango palette) and kindred.csv (Catppuccin Mocha)
- Add icons/retheme.py script to remap upstream FreeCAD SVG colors
- Generate icons/themed/ with 1,595 themed SVGs (45,300 color replacements)
- BitmapFactory loads icons/themed/ as highest priority before default icons
- 157-color mapping covers the full Tango palette, interpolating between
  4 luminance anchors per color family

Regenerate: python3 icons/retheme.py
2026-02-15 20:34:22 -06:00

30 lines
3.3 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 27.3.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1"
id="svg2" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:svg="http://www.w3.org/2000/svg" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" inkscape:export-filename="python-logo-only.png" inkscape:export-xdpi="232.44" inkscape:export-ydpi="232.44" inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)" sodipodi:docname="python-logo-only.svg" sodipodi:version="0.32"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 113 113"
style="enable-background:new 0 0 113 113;" xml:space="preserve">
<style type="text/css">
.st0{fill:url(#path1948_00000132803430210310521710000012444837127080692650_);}
.st1{fill:url(#path1950_00000011711259317892988660000004581336155540837819_);}
</style>
<sodipodi:namedview bordercolor="#38394b" borderopacity="1.0" gridtolerance="10.0" guidetolerance="10.0" height="40mm" id="base" inkscape:current-layer="svg2" inkscape:cx="91.558698" inkscape:cy="47.9926" inkscape:deskcolor="#6a6e84" inkscape:document-units="pt" inkscape:pagecheckerboard="0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" inkscape:showpageshadow="2" inkscape:window-height="2080" inkscape:window-maximized="0" inkscape:window-width="1976" inkscape:window-x="1092" inkscape:window-y="72" inkscape:zoom="2.1461642" objecttolerance="10.0" pagecolor="#cdd6f4" showgrid="false" units="mm" width="210mm">
</sodipodi:namedview>
<linearGradient id="path1948_00000170251524934803191530000002315116568552905148_" gradientUnits="userSpaceOnUse" x1="280.9483" y1="-334.1358" x2="389.9646" y2="-427.9297" gradientTransform="matrix(0.5625 0 0 -0.568 -160.4375 -186.5795)">
<stop offset="0" style="stop-color:#5A9FD4"/>
<stop offset="1" style="stop-color:#306998"/>
</linearGradient>
<path id="path1948" style="fill:url(#path1948_00000170251524934803191530000002315116568552905148_);" d="M55.3,0
c-4.6,0-9,0.4-12.8,1.1C31.1,3.1,29,7.3,29,15v10.2h26.8v3.4H29H19c-7.8,0-14.6,4.7-16.8,13.6c-2.5,10.2-2.6,16.6,0,27.2
c1.9,7.9,6.5,13.6,14.2,13.6h9.2V70.8c0-8.8,7.7-16.7,16.8-16.7h26.8c7.5,0,13.4-6.1,13.4-13.6V15c0-7.3-6.1-12.7-13.4-13.9
C64.6,0.3,59.8,0,55.3,0z M40.8,8.2c2.8,0,5,2.3,5,5.1c0,2.8-2.3,5.1-5,5.1c-2.8,0-5-2.3-5-5.1C35.7,10.5,38,8.2,40.8,8.2z"/>
<linearGradient id="path1950_00000173141890808856555460000015931308003617822606_" gradientUnits="userSpaceOnUse" x1="432.111" y1="-484.6977" x2="393.1813" y2="-429.6189" gradientTransform="matrix(0.5625 0 0 -0.568 -160.4375 -186.5795)">
<stop offset="0" style="stop-color:#FFD43B"/>
<stop offset="1" style="stop-color:#FFE873"/>
</linearGradient>
<path id="path1950" style="fill:url(#path1950_00000173141890808856555460000015931308003617822606_);" d="M86,28.7v11.9
c0,9.2-7.8,17-16.8,17H42.4c-7.3,0-13.4,6.3-13.4,13.6v25.5c0,7.3,6.3,11.5,13.4,13.6c8.5,2.5,16.6,2.9,26.8,0
c6.8-2,13.4-5.9,13.4-13.6V86.5H55.8v-3.4h26.8H96c7.8,0,10.7-5.4,13.4-13.6c2.8-8.4,2.7-16.5,0-27.2c-1.9-7.8-5.6-13.6-13.4-13.6
L86,28.7z M70.9,93.3c2.8,0,5,2.3,5,5.1c0,2.8-2.3,5.1-5,5.1c-2.8,0-5-2.3-5-5.1C65.9,95.6,68.1,93.3,70.9,93.3z"/>
</svg>