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

175 lines
5.8 KiB
XML

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
width="64"
height="64"
id="svg3085"
sodipodi:docname="TechDraw_ShowAll.svg"
inkscape:version="0.92.4 (unknown)">
<sodipodi:namedview
pagecolor="#cdd6f4"
bordercolor="#38394b"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1358"
inkscape:window-height="703"
id="namedview983"
showgrid="true"
inkscape:zoom="5.6789513"
inkscape:cx="-6.1779901"
inkscape:cy="37.821765"
inkscape:window-x="0"
inkscape:window-y="26"
inkscape:window-maximized="1"
inkscape:current-layer="svg3085"
inkscape:snap-global="false">
<inkscape:grid
type="xygrid"
id="grid985" />
</sodipodi:namedview>
<defs
id="defs3087">
<linearGradient
id="linearGradient3836-0-3">
<stop
id="stop1733"
offset="0"
style="stop-color:#bc8009;stop-opacity:1;" />
<stop
id="stop1735"
offset="1"
style="stop-color:#f9e2af;stop-opacity:1;" />
</linearGradient>
<linearGradient
id="linearGradient3836-0">
<stop
id="stop5008"
offset="0"
style="stop-color:#bc8009;stop-opacity:1;" />
<stop
id="stop5010"
offset="1"
style="stop-color:#f9e2af;stop-opacity:1;" />
</linearGradient>
<inkscape:path-effect
effect="skeletal"
id="path-effect3066"
is_visible="true"
pattern="M 0,0 H 1"
copytype="single_stretched"
prop_scale="1"
scale_y_rel="false"
spacing="0"
normal_offset="0"
tang_offset="0"
prop_units="false"
vertical_pattern="false"
fuse_tolerance="0" />
<linearGradient
id="linearGradient7597">
<stop
id="stop7599"
style="stop-color:#000003;stop-opacity:1"
offset="0" />
<stop
id="stop7601"
style="stop-color:#000003;stop-opacity:0"
offset="1" />
</linearGradient>
<linearGradient
id="linearGradient3893">
<stop
id="stop3895"
style="stop-color:#cdd6f4;stop-opacity:1"
offset="0" />
<stop
id="stop3897"
style="stop-color:#cdd6f4;stop-opacity:0"
offset="1" />
</linearGradient>
<linearGradient
x1="15.71482"
y1="22.299377"
x2="34.136208"
y2="22.299377"
id="linearGradient7603"
xlink:href="#linearGradient7597"
gradientUnits="userSpaceOnUse" />
<linearGradient
id="linearGradient3836-0-3-3">
<stop
style="stop-color:#307bf7;stop-opacity:1"
offset="0"
id="stop3838-2" />
<stop
style="stop-color:#cdd6f4;stop-opacity:1"
offset="1"
id="stop3840-5" />
</linearGradient>
<linearGradient
inkscape:collect="always"
xlink:href="#linearGradient3836-0-3-3"
id="linearGradient1731"
x1="56.876698"
y1="50.441162"
x2="17.784973"
y2="23.323475"
gradientUnits="userSpaceOnUse" />
</defs>
<metadata
id="metadata3090">
<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></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<text
x="13.788582"
y="46.145554"
id="text3130"
xml:space="preserve"
style="color:#11111b;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10px;line-height:125%;font-family:Sans;-inkscape-font-specification:Sans;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;letter-spacing:0px;word-spacing:0px;text-transform:none;writing-mode:lr-tb;direction:ltr;baseline-shift:baseline;text-anchor:start;display:inline;overflow:visible;visibility:visible;fill:#11111b;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.28200001;marker:none;enable-background:accumulate"><tspan
x="13.788582"
y="46.145554"
id="tspan3132" /></text>
<g
id="g1745">
<path
inkscape:connector-curvature="0"
id="path141"
d="m 32.000002,13.794027 c -11.725754,0 -21.831802,7.245326 -26.4741964,17.700833 -0.14258,0.316832 -0.14258,0.687468 0,1.010281 4.6423944,10.455507 14.7484424,17.700832 26.4741964,17.700832 11.725753,0 21.831801,-7.245325 26.474197,-17.700832 0.14257,-0.316833 0.14257,-0.687469 0,-1.010281 C 53.831803,21.039353 43.725755,13.794027 32.000002,13.794027"
style="fill:url(#linearGradient1731);stroke:#11111b;stroke-width:2;stroke-miterlimit:4;stroke-dasharray:none;fill-opacity:1" />
<circle
r="12"
cy="32"
cx="32"
id="path1738"
style="opacity:1;vector-effect:none;fill:#0846b3;fill-opacity:1;stroke:none;stroke-width:2.46872067;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<circle
r="4"
cy="32"
cx="32"
id="path1740"
style="opacity:1;vector-effect:none;fill:#11111b;fill-opacity:1;stroke:none;stroke-width:2.75343108;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
</g>
</svg>