Files
create/icons/themed/Navigation_Gesture_ZoomTouch.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

59 lines
3.8 KiB
XML

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg id="svg4199" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" height="64" width="64" version="1.1" xmlns:cc="http://creativecommons.org/ns#" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 64.000001 64.000001" xmlns:dc="http://purl.org/dc/elements/1.1/">
<defs id="defs4201">
<linearGradient id="linearGradient5152">
<stop id="stop5154" stop-color="#a6e3a1" offset="0"/>
<stop id="stop5156" stop-color="#a6e3a1" stop-opacity="0" offset="1"/>
</linearGradient>
<radialGradient id="radialGradient5160" xlink:href="#linearGradient5152" gradientUnits="userSpaceOnUse" cy="1030.8" cx="25.241" gradientTransform="matrix(.78044 .78045 -.66064 .66063 684.06 328.91)" r="11.036"/>
<radialGradient id="radialGradient5164" xlink:href="#linearGradient5152" gradientUnits="userSpaceOnUse" cy="1030.8" cx="25.241" gradientTransform="matrix(-.78044 -.78045 .68896 -.68895 -647.9 1739.7)" r="11.036"/>
</defs>
<metadata id="metadata4204">
<rdf:RDF>
<cc:Work rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:title/>
</cc:Work>
</rdf:RDF>
</metadata>
<g id="layer1" transform="translate(0 -988.36)">
<rect id="rect4140" style="color:#11111b" fill-rule="evenodd" ry="10" height="56" width="56" y="991.69" x="3.9727" fill="#7f849c"/>
<path id="path5162" d="m47.5 1004.9-15 15" fill-rule="evenodd" stroke="url(#radialGradient5164)" stroke-width="10" fill="#a6e3a1"/>
<g id="g4340" fill="#89b4fa" transform="translate(58.993 -16.851)">
<g id="layer1-7" transform="translate(-43.493 1.3512)">
<g id="g4281" fill="#89b4fa" transform="matrix(0.5 0 0 0.5 20.237 506.39)">
<ellipse id="path3059" rx="5.7143" transform="matrix(2.625 0 0 2.6667 -17.723 791.04)" ry="5.625" cy="88.839" cx="15.714" fill="#89b4fa"/>
</g>
</g>
<g id="g4138" transform="matrix(.56104 0 0 -.55886 -29.446 1592)" stroke="#7f849c" stroke-width="2.8574">
<g id="g4140" transform="matrix(0.5 0 0 0.5 20.237 506.39)" stroke="#7f849c" stroke-width="5.7148" fill="#89b4fa">
<ellipse id="ellipse4142" rx="5.7143" ry="5.625" stroke="#7f849c" transform="matrix(2.625 0 0 2.6667 -17.723 791.04)" cy="88.839" cx="15.714" stroke-width="2.16" fill="#89b4fa"/>
</g>
</g>
</g>
<path id="path5130" d="m17.854 1034.5 15-15" fill-rule="evenodd" stroke="url(#radialGradient5160)" stroke-width="10" fill="#a6e3a1"/>
<g id="g4348" fill="#89b4fa" transform="translate(29.318 12.824)">
<g id="g4350" transform="translate(-43.493 1.3512)">
<g id="g4352" fill="#89b4fa" transform="matrix(0.5 0 0 0.5 20.237 506.39)">
<ellipse id="ellipse4354" rx="5.7143" ry="5.625" transform="matrix(2.625 0 0 2.6667 -17.723 791.04)" cy="88.839" cx="15.714" fill="#89b4fa"/>
</g>
</g>
<g id="g4356" transform="matrix(.56104 0 0 -.55886 -29.446 1592)" stroke="#7f849c" stroke-width="2.8574">
<g id="g4358" transform="matrix(0.5 0 0 0.5 20.237 506.39)" stroke="#7f849c" stroke-width="5.7148" fill="#89b4fa">
<ellipse id="ellipse4360" rx="5.7143" transform="matrix(2.625 0 0 2.6667 -17.723 791.04)" stroke="#7f849c" ry="5.625" cy="88.839" cx="15.714" stroke-width="2.16" fill="#89b4fa"/>
</g>
</g>
</g>
<g id="g4368" transform="matrix(.70711 -.70711 .70711 .70711 -717.57 323.11)" stroke="#1e1e2e" fill="none">
<path id="path4364" d="m30 1042.4h20" stroke-width="2"/>
<path id="path4366" d="m44 1039.4 6 3-6 3" stroke-width="1.8"/>
</g>
<g id="g4378" transform="matrix(-.70711 .70711 .70711 .70711 -672.03 269.44)" stroke="#1e1e2e" fill="none">
<path id="path4380" d="m30 1042.4h20" stroke-width="2"/>
<path id="path4383" d="m44 1039.4 6 3-6 3" stroke-width="1.8"/>
</g>
</g>
</svg>