feat: view tab widget toggle commands and unified SVG icon color scheme
Integrate NAVVCUBE, NAVBAR, PROPERTIES, FILETAB, LAYOUTTAB, TOOLPALETTES and SHEETSET commands to toggle UI widgets at runtime. Add 15 new SVG icons for view module tools previously using glyph fallbacks. Restyle all SVG icons to use the established two-color scheme: #e0e0e0 for passive geometry, #4cc9f0 for active/accent elements. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
|
@ -1,8 +1,5 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Circle -->
|
<circle cx="12" cy="12" r="9" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<circle cx="12" cy="12" r="9"/>
|
<circle cx="12" cy="8" r="0.8" fill="#4cc9f0"/>
|
||||||
<!-- i dot -->
|
<line x1="12" y1="11" x2="12" y2="17" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<circle cx="12" cy="8" r="0.8" fill="currentColor" stroke="none"/>
|
|
||||||
<!-- i stem -->
|
|
||||||
<line x1="12" y1="11" x2="12" y2="16"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 366 B After Width: | Height: | Size: 348 B |
|
|
@ -1,10 +1,5 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Tag shape -->
|
<path d="M3 3 h8 l10 9 -10 9 H3 Z" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<path d="M3 3 h8 l10 9 -10 9 H3 Z"/>
|
<circle cx="9" cy="12" r="1.5" fill="#4cc9f0"/>
|
||||||
<circle cx="8" cy="12" r="1.5" fill="currentColor" stroke="none"/>
|
<text x="13" y="9" font-size="4" fill="#4cc9f0" stroke="none">@</text>
|
||||||
<!-- "A" attribute letter -->
|
|
||||||
<text x="5" y="14" font-size="6" fill="currentColor" stroke="none" font-weight="bold">A</text>
|
|
||||||
<!-- Plus (define/create) -->
|
|
||||||
<line x1="19" y1="3" x2="19" y2="9"/>
|
|
||||||
<line x1="16" y1="6" x2="22" y2="6"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 538 B After Width: | Height: | Size: 348 B |
|
|
@ -1,10 +1,7 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Tag shape -->
|
<path d="M3 5 h7 l9 7 -9 7 H3 Z" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<path d="M3 5 h7 l9 7 -9 7 H3 Z"/>
|
<circle cx="8" cy="12" r="1.5" fill="#e0e0e0"/>
|
||||||
<circle cx="7" cy="12" r="1.5" fill="currentColor" stroke="none"/>
|
<line x1="17" y1="4" x2="21" y2="8" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<!-- Pencil edit -->
|
<line x1="15" y1="6" x2="19" y2="10" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<line x1="17" y1="3" x2="22" y2="8"/>
|
<line x1="14" y1="10" x2="18" y2="6" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<polygon points="15,5 20,10 18,12 13,7"/>
|
|
||||||
<line x1="13" y1="7" x2="12" y2="12"/>
|
|
||||||
<line x1="12" y1="12" x2="17" y2="11"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 485 B After Width: | Height: | Size: 503 B |
|
|
@ -1,15 +1,7 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- List of attributes -->
|
<rect x="3" y="3" width="18" height="18" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="2" y="3" width="20" height="18" rx="1"/>
|
<line x1="3" y1="7" x2="21" y2="7" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<line x1="2" y1="7" x2="22" y2="7"/>
|
<line x1="7" y1="11" x2="17" y2="11" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<!-- Tag rows -->
|
<line x1="7" y1="14" x2="17" y2="14" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="5" y1="11" x2="10" y2="11"/>
|
<line x1="7" y1="17" x2="13" y2="17" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="12" y1="11" x2="19" y2="11"/>
|
|
||||||
<line x1="5" y1="15" x2="10" y2="15"/>
|
|
||||||
<line x1="12" y1="15" x2="19" y2="15"/>
|
|
||||||
<line x1="5" y1="19" x2="10" y2="19"/>
|
|
||||||
<line x1="12" y1="19" x2="19" y2="19"/>
|
|
||||||
<!-- Header labels -->
|
|
||||||
<line x1="5" y1="5" x2="9" y2="5" stroke-width="1"/>
|
|
||||||
<line x1="12" y1="5" x2="16" y2="5" stroke-width="1"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 695 B After Width: | Height: | Size: 544 B |
|
|
@ -1,9 +1,6 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Sync arrows -->
|
<path d="M4 12 A8 8 0 0 1 18 7" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<path d="M4 12 A8 8 0 0 1 18 7"/>
|
<polyline points="16,4 18,7 15,8" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<polyline points="16,4 18,7 15,8"/>
|
<path d="M20 12 A8 8 0 0 1 6 17" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<path d="M20 12 A8 8 0 0 1 6 17"/>
|
<polyline points="8,20 6,17 9,16" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<polyline points="8,20 6,17 9,16"/>
|
|
||||||
<!-- Tag dot in center -->
|
|
||||||
<circle cx="12" cy="12" r="2" fill="currentColor" stroke="none"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 437 B After Width: | Height: | Size: 443 B |
|
|
@ -1,10 +1,5 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Clipboard with checkmarks -->
|
<path d="M9 3 H5 a1 1 0 0 0 -1 1 v16 a1 1 0 0 0 1 1 h14 a1 1 0 0 0 1 -1 V4 a1 1 0 0 0 -1 -1 h-4" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<path d="M9 3 H5 a1 1 0 0 0 -1 1 v16 a1 1 0 0 0 1 1 h14 a1 1 0 0 0 1 -1 V4 a1 1 0 0 0 -1 -1 h-4"/>
|
<rect x="9" y="1" width="6" height="4" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="9" y="1" width="6" height="4" rx="1"/>
|
<polyline points="7,12 10,15 17,9" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<!-- Check items -->
|
|
||||||
<polyline points="7,10 9,12 13,8"/>
|
|
||||||
<line x1="15" y1="10" x2="17" y2="10"/>
|
|
||||||
<polyline points="7,15 9,17 13,13"/>
|
|
||||||
<line x1="15" y1="15" x2="17" y2="15"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 540 B After Width: | Height: | Size: 448 B |
|
|
@ -1,7 +1,5 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Crosshair at base point -->
|
<line x1="12" y1="2" x2="12" y2="22" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="12" y1="2" x2="12" y2="22"/>
|
<line x1="2" y1="12" x2="22" y2="12" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="2" y1="12" x2="22" y2="12"/>
|
<circle cx="12" cy="12" r="2.5" fill="#4cc9f0" fill-opacity="0.4" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<circle cx="12" cy="12" r="4"/>
|
|
||||||
<circle cx="12" cy="12" r="1.5" fill="currentColor" stroke="none"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 389 B After Width: | Height: | Size: 410 B |
|
|
@ -1,6 +1,5 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Three cascaded windows -->
|
<rect x="8" y="10" width="13" height="11" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="8" y="10" width="13" height="11" rx="1"/>
|
<rect x="5" y="7" width="13" height="11" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="5" y="7" width="13" height="11" rx="1"/>
|
<rect x="2" y="4" width="13" height="11" rx="1" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<rect x="2" y="4" width="13" height="11" rx="1"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 359 B After Width: | Height: | Size: 415 B |
|
|
@ -1,9 +1,5 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Clock circle -->
|
<circle cx="12" cy="12" r="9" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<circle cx="12" cy="12" r="9"/>
|
<polyline points="12,7 12,12 15.5,15.5" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<!-- Clock hands -->
|
<path d="M5 4 A9 9 0 0 0 3 12" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<polyline points="12,7 12,12 15.5,15.5"/>
|
|
||||||
<!-- Counter-clockwise arrow suggesting history -->
|
|
||||||
<path d="M5.6 5.6 A8.5 8.5 0 0 0 3 12" stroke-width="1.5"/>
|
|
||||||
<polyline points="2,9.5 3,12 5.5,10.8"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 452 B After Width: | Height: | Size: 371 B |
|
|
@ -1,13 +1,7 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Browser window -->
|
<rect x="2" y="4" width="20" height="16" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="2" y="3" width="20" height="18" rx="1"/>
|
<line x1="2" y1="8" x2="22" y2="8" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<line x1="2" y1="7" x2="22" y2="7"/>
|
<circle cx="7" cy="13" r="1" fill="#4cc9f0"/>
|
||||||
<!-- Nav buttons -->
|
<circle cx="12" cy="13" r="1" fill="#4cc9f0"/>
|
||||||
<circle cx="5" cy="5" r="1" fill="currentColor" stroke="none"/>
|
<circle cx="17" cy="13" r="1" fill="#4cc9f0"/>
|
||||||
<circle cx="9" cy="5" r="1" fill="currentColor" stroke="none"/>
|
|
||||||
<!-- Content grid -->
|
|
||||||
<rect x="4" y="10" width="6" height="5" rx="0.5"/>
|
|
||||||
<rect x="13" y="10" width="6" height="5" rx="0.5"/>
|
|
||||||
<rect x="4" y="17" width="6" height="3" rx="0.5"/>
|
|
||||||
<rect x="13" y="17" width="6" height="3" rx="0.5"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 678 B After Width: | Height: | Size: 459 B |
|
|
@ -1,9 +1,7 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- File -->
|
<rect x="4" y="4" width="10" height="13" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<path d="M4 4 h10 l4 4 v13 H4 Z"/>
|
<line x1="7" y1="8" x2="11" y2="8" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<polyline points="14,4 14,8 18,8"/>
|
<line x1="7" y1="11" x2="11" y2="11" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<!-- Arrow pointing out (export) -->
|
<line x1="17" y1="10" x2="17" y2="19" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<line x1="10" y1="14" x2="20" y2="14"/>
|
<polyline points="14,16 17,19 20,16" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<polyline points="17,11 20,14 17,17"/>
|
|
||||||
<line x1="10" y1="11" x2="10" y2="17"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 423 B After Width: | Height: | Size: 545 B |
|
|
@ -1,8 +1,7 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- File -->
|
<rect x="4" y="4" width="10" height="13" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<path d="M4 4 h10 l4 4 v13 H4 Z"/>
|
<line x1="7" y1="8" x2="11" y2="8" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<polyline points="14,4 14,8 18,8"/>
|
<line x1="7" y1="11" x2="11" y2="11" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<!-- Arrow pointing in (import) -->
|
<line x1="17" y1="10" x2="17" y2="19" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<line x1="12" y1="14" x2="20" y2="14"/>
|
<polyline points="14,13 17,10 20,13" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<polyline points="17,11 20,14 17,17"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 380 B After Width: | Height: | Size: 545 B |
|
|
@ -1,10 +1,9 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Table grid -->
|
<rect x="3" y="5" width="13" height="14" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="2" y="4" width="14" height="12" rx="1"/>
|
<line x1="6" y1="9" x2="13" y2="9" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="2" y1="8" x2="16" y2="8"/>
|
<line x1="6" y1="12" x2="13" y2="12" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="2" y1="12" x2="16" y2="12"/>
|
<line x1="6" y1="15" x2="10" y2="15" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="7" y1="4" x2="7" y2="16"/>
|
<line x1="17" y1="8" x2="21" y2="12" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<!-- Arrow pointing right/out -->
|
<line x1="21" y1="12" x2="17" y2="16" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<line x1="18" y1="10" x2="23" y2="10"/>
|
<line x1="15" y1="12" x2="21" y2="12" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<polyline points="20,7 23,10 20,13"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 479 B After Width: | Height: | Size: 700 B |
|
|
@ -1,11 +1,7 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Table grid -->
|
<rect x="3" y="5" width="8" height="6" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="2" y="4" width="12" height="12" rx="1"/>
|
<rect x="13" y="13" width="8" height="6" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="2" y1="8" x2="14" y2="8"/>
|
<line x1="11" y1="8" x2="14" y2="8" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<line x1="2" y1="12" x2="14" y2="12"/>
|
<line x1="10" y1="16" x2="13" y2="16" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<line x1="6" y1="4" x2="6" y2="16"/>
|
<line x1="14" y1="8" x2="14" y2="16" stroke="#4cc9f0" stroke-width="1.5" stroke-dasharray="2 2"/>
|
||||||
<!-- Link chain -->
|
|
||||||
<path d="M17 10 h2 a3 3 0 0 1 0 6 h-2"/>
|
|
||||||
<path d="M19 13 h-4"/>
|
|
||||||
<path d="M17 13 h-2 a3 3 0 0 1 0-6 h2"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 494 B After Width: | Height: | Size: 578 B |
|
|
@ -1,16 +1,10 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Panel with tree on left, content on right -->
|
<rect x="3" y="4" width="7" height="16" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="2" y="3" width="20" height="18" rx="1"/>
|
<line x1="5" y1="7" x2="8" y2="7" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="9" y1="3" x2="9" y2="21"/>
|
<line x1="5" y1="10" x2="8" y2="10" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<!-- Tree structure on left -->
|
<line x1="5" y1="13" x2="8" y2="13" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="4" y1="7" x2="7" y2="7"/>
|
<rect x="12" y="4" width="9" height="9" rx="1" stroke="#4cc9f0" stroke-width="1.5" fill="#4cc9f0" fill-opacity="0.15"/>
|
||||||
<line x1="5" y1="7" x2="5" y2="11"/>
|
<line x1="14" y1="7" x2="19" y2="7" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<line x1="5" y1="11" x2="7" y2="11"/>
|
<line x1="14" y1="10" x2="19" y2="10" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<line x1="5" y1="11" x2="5" y2="15"/>
|
<line x1="12" y1="16" x2="21" y2="16" stroke="#e0e0e0" stroke-width="1.5" stroke-dasharray="2 2"/>
|
||||||
<line x1="5" y1="15" x2="7" y2="15"/>
|
|
||||||
<!-- Content thumbnails on right -->
|
|
||||||
<rect x="11" y="6" width="4" height="4" rx="0.5"/>
|
|
||||||
<rect x="17" y="6" width="4" height="4" rx="0.5"/>
|
|
||||||
<rect x="11" y="12" width="4" height="4" rx="0.5"/>
|
|
||||||
<rect x="17" y="12" width="4" height="4" rx="0.5"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 796 B After Width: | Height: | Size: 840 B |
|
|
@ -1,16 +1,8 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- List of alias pairs -->
|
<rect x="3" y="5" width="18" height="14" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="2" y="3" width="20" height="18" rx="1"/>
|
<line x1="3" y1="9" x2="21" y2="9" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="2" y1="7" x2="22" y2="7"/>
|
<text x="5.5" y="8" font-size="3.5" fill="#4cc9f0" stroke="none">A→a</text>
|
||||||
<line x1="12" y1="7" x2="12" y2="21"/>
|
<line x1="6" y1="13" x2="10" y2="13" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<!-- Header -->
|
<line x1="12" y1="13" x2="18" y2="13" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="4" y1="5" x2="8" y2="5" stroke-width="1"/>
|
<line x1="6" y1="16" x2="14" y2="16" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="14" y1="5" x2="18" y2="5" stroke-width="1"/>
|
|
||||||
<!-- Rows -->
|
|
||||||
<line x1="4" y1="11" x2="10" y2="11"/>
|
|
||||||
<line x1="14" y1="11" x2="20" y2="11"/>
|
|
||||||
<line x1="4" y1="15" x2="10" y2="15"/>
|
|
||||||
<line x1="14" y1="15" x2="20" y2="15"/>
|
|
||||||
<line x1="4" y1="19" x2="10" y2="19"/>
|
|
||||||
<line x1="14" y1="19" x2="20" y2="19"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 726 B After Width: | Height: | Size: 625 B |
|
|
@ -1,9 +1,9 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Block outline -->
|
<rect x="4" y="6" width="12" height="12" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="3" y="5" width="14" height="14" rx="1" stroke-dasharray="4 2"/>
|
<line x1="7" y1="9" x2="13" y2="9" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<!-- Pencil edit icon -->
|
<line x1="7" y1="12" x2="13" y2="12" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="14" y1="3" x2="21" y2="10"/>
|
<line x1="17" y1="4" x2="20" y2="7" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<polygon points="12,5 19,12 16,15 9,8"/>
|
<line x1="12" y1="12" x2="20" y2="4" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<line x1="9" y1="8" x2="7" y2="17"/>
|
<line x1="12" y1="12" x2="11" y2="15" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<line x1="7" y1="17" x2="16" y2="15"/>
|
<line x1="11" y1="15" x2="14" y2="14" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 460 B After Width: | Height: | Size: 699 B |
|
|
@ -1,45 +1,5 @@
|
||||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<svg
|
<polygon points="14,4 20,10 12,18 6,12" stroke="#e0e0e0" stroke-width="1.5" fill="#e0e0e0" fill-opacity="0.12"/>
|
||||||
viewBox="0 0 24 24"
|
<line x1="4" y1="20" x2="14" y2="20" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
width="64"
|
<line x1="6" y1="12" x2="14" y2="20" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
height="64"
|
|
||||||
version="1.1"
|
|
||||||
id="svg3"
|
|
||||||
sodipodi:docname="erase.svg"
|
|
||||||
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
|
|
||||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
|
||||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
|
||||||
xmlns:svg="http://www.w3.org/2000/svg">
|
|
||||||
<defs
|
|
||||||
id="defs3" />
|
|
||||||
<sodipodi:namedview
|
|
||||||
id="namedview3"
|
|
||||||
pagecolor="#505050"
|
|
||||||
bordercolor="#eeeeee"
|
|
||||||
borderopacity="1"
|
|
||||||
inkscape:showpageshadow="0"
|
|
||||||
inkscape:pageopacity="0"
|
|
||||||
inkscape:pagecheckerboard="0"
|
|
||||||
inkscape:deskcolor="#505050"
|
|
||||||
inkscape:zoom="11.265625"
|
|
||||||
inkscape:cx="31.955617"
|
|
||||||
inkscape:cy="32"
|
|
||||||
inkscape:window-width="1920"
|
|
||||||
inkscape:window-height="939"
|
|
||||||
inkscape:window-x="0"
|
|
||||||
inkscape:window-y="0"
|
|
||||||
inkscape:window-maximized="1"
|
|
||||||
inkscape:current-layer="svg3" />
|
|
||||||
<!-- Object being erased (dashed rect) -->
|
|
||||||
<!-- Eraser shape (filled block moving across) -->
|
|
||||||
<!-- Eraser direction arrow (leftward) -->
|
|
||||||
<path
|
|
||||||
style="fill:#ff0000;stroke:#ff0000;stroke-width:1.96068;stroke-linecap:round;stroke-dasharray:none;stroke-opacity:1"
|
|
||||||
d="M 3.0549235,3.0549235 20.945076,20.945077"
|
|
||||||
id="path3" />
|
|
||||||
<path
|
|
||||||
style="fill:#ff0000;stroke:#ff0000;stroke-width:1.96068;stroke-linecap:round;stroke-dasharray:none;stroke-opacity:1"
|
|
||||||
d="M 3.0549235,20.945077 20.945076,3.0549235"
|
|
||||||
id="path4" />
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 419 B |
|
|
@ -1,11 +1,8 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Tab bar at top -->
|
<rect x="2" y="5" width="6" height="4" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="2" y="5" width="6" height="4" rx="1"/>
|
<rect x="9" y="5" width="6" height="4" rx="1" fill="#4cc9f0" fill-opacity="0.3" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<rect x="9" y="5" width="6" height="4" rx="1"/>
|
<rect x="16" y="5" width="6" height="4" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="16" y="5" width="6" height="4" rx="1"/>
|
<rect x="2" y="9" width="20" height="12" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<!-- Document area below -->
|
<polyline points="7,12 7,18 17,18 17,12" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<rect x="2" y="9" width="20" height="12" rx="0 0 1 1"/>
|
<polyline points="7,12 11,12 12,11 17,12" stroke="#e0e0e0" stroke-width="1"/>
|
||||||
<!-- File icon inside -->
|
|
||||||
<polyline points="7,12 7,18 17,18 17,12"/>
|
|
||||||
<polyline points="7,12 11,12 12,11 17,12" stroke-width="1"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 570 B After Width: | Height: | Size: 692 B |
|
|
@ -1,8 +1,7 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Magnifier -->
|
<circle cx="10" cy="10" r="6" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<circle cx="10" cy="10" r="7"/>
|
<line x1="14.5" y1="14.5" x2="20" y2="20" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="15" y1="15" x2="21" y2="21"/>
|
<line x1="8" y1="10" x2="12" y2="10" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<!-- Lock inside (non-purgeable / protected) -->
|
<line x1="10" y1="8" x2="10" y2="12" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<rect x="7" y="10" width="6" height="5" rx="0.5"/>
|
<line x1="17" y1="18" x2="20" y2="21" stroke="#4cc9f0" stroke-width="2"/>
|
||||||
<path d="M8 10 V8 a2 2 0 0 1 4 0 V10"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 411 B After Width: | Height: | Size: 532 B |
8
assets/icons/hidden.svg
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
|
<rect x="5" y="9" width="10" height="10" rx="0.5" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
|
<polygon points="5,9 9,5 19,5 15,9" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
|
<polygon points="15,9 19,5 19,15 15,19" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
|
<line x1="5" y1="9" x2="9" y2="5" stroke="#4cc9f0" stroke-width="1.5" stroke-dasharray="2 2"/>
|
||||||
|
<line x1="9" y1="5" x2="9" y2="15" stroke="#4cc9f0" stroke-width="1.5" stroke-dasharray="2 2"/>
|
||||||
|
<line x1="9" y1="15" x2="19" y2="15" stroke="#4cc9f0" stroke-width="1.5" stroke-dasharray="2 2"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 691 B |
|
|
@ -1,6 +1,7 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Terrain/land profile -->
|
<polyline points="3,17 7,10 11,14 15,7 21,7" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<polyline points="2,18 6,10 10,14 14,7 18,12 22,6"/>
|
<line x1="3" y1="20" x2="21" y2="20" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<!-- XML brackets -->
|
<circle cx="7" cy="10" r="1.2" fill="#4cc9f0"/>
|
||||||
<text x="3" y="23" font-size="5" fill="currentColor" stroke="none"><XML></text>
|
<circle cx="11" cy="14" r="1.2" fill="#4cc9f0"/>
|
||||||
|
<circle cx="15" cy="7" r="1.2" fill="#4cc9f0"/>
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 367 B After Width: | Height: | Size: 463 B |
|
|
@ -1,9 +1,6 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Document area -->
|
<rect x="2" y="3" width="20" height="15" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="2" y="3" width="20" height="15" rx="1"/>
|
<rect x="2" y="18" width="6" height="3" rx="1" fill="#4cc9f0" fill-opacity="0.3" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<!-- Layout tabs at bottom -->
|
<rect x="9" y="18" width="6" height="3" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="2" y="18" width="6" height="3" rx="1 1 0 0"/>
|
<rect x="5" y="6" width="14" height="9" rx="0.5" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="9" y="18" width="6" height="3" rx="1 1 0 0"/>
|
|
||||||
<!-- Page border inside -->
|
|
||||||
<rect x="5" y="6" width="14" height="9" rx="0.5"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 475 B After Width: | Height: | Size: 535 B |
|
|
@ -1,14 +1,7 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Multi-view: 3 perspective projections of a block -->
|
<rect x="3" y="4" width="18" height="14" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<!-- Top view -->
|
<rect x="5" y="6" width="8" height="6" rx="0.5" stroke="#4cc9f0" stroke-width="1.5" fill="#4cc9f0" fill-opacity="0.15"/>
|
||||||
<rect x="2" y="2" width="8" height="8" rx="0.5"/>
|
<rect x="14" y="6" width="5" height="3" rx="0.5" stroke="#e0e0e0" stroke-width="1"/>
|
||||||
<!-- Front view -->
|
<rect x="14" y="10" width="5" height="3" rx="0.5" stroke="#e0e0e0" stroke-width="1"/>
|
||||||
<rect x="2" y="14" width="8" height="8" rx="0.5"/>
|
<line x1="5" y1="14" x2="19" y2="14" stroke="#e0e0e0" stroke-width="1" stroke-dasharray="2 2"/>
|
||||||
<!-- Isometric block -->
|
|
||||||
<polygon points="14,8 20,5 20,15 14,18"/>
|
|
||||||
<polygon points="14,8 20,5 22,7 16,10"/>
|
|
||||||
<polygon points="16,10 22,7 22,17 16,20"/>
|
|
||||||
<line x1="14" y1="8" x2="16" y2="10"/>
|
|
||||||
<line x1="14" y1="18" x2="16" y2="20"/>
|
|
||||||
<line x1="20" y1="15" x2="22" y2="17"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 659 B After Width: | Height: | Size: 634 B |
|
|
@ -1,10 +1,8 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Compass rose -->
|
<circle cx="12" cy="12" r="9" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<circle cx="12" cy="12" r="9"/>
|
<line x1="12" y1="3" x2="12" y2="8" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="12" y1="3" x2="12" y2="8"/>
|
<line x1="12" y1="16" x2="12" y2="21" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="12" y1="16" x2="12" y2="21"/>
|
<line x1="3" y1="12" x2="8" y2="12" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="3" y1="12" x2="8" y2="12"/>
|
<line x1="16" y1="12" x2="21" y2="12" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="16" y1="12" x2="21" y2="12"/>
|
<text x="9.5" y="7" font-size="4.5" fill="#4cc9f0" stroke="none">N</text>
|
||||||
<!-- N marker -->
|
|
||||||
<text x="9.5" y="7" font-size="4.5" fill="currentColor" stroke="none">N</text>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 491 B After Width: | Height: | Size: 604 B |
6
assets/icons/orbit.svg
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
|
<circle cx="12" cy="12" r="8" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
|
<ellipse cx="12" cy="12" rx="8" ry="3" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
|
<path d="M 5,7 A 9 9 0 0 1 19,7" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
<polyline points="17,4.5 19,7 16.5,8.5" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 452 B |
7
assets/icons/ortho.svg
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
|
<rect x="4" y="8" width="10" height="10" rx="0.5" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
|
<rect x="10" y="3" width="10" height="10" rx="0.5" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
<line x1="4" y1="8" x2="10" y2="3" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
|
<line x1="14" y1="8" x2="20" y2="3" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
<line x1="14" y1="18" x2="20" y2="13" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 560 B |
|
|
@ -1,8 +1,11 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Two overlapping lines (duplicates) -->
|
<line x1="4" y1="8" x2="20" y2="8" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="3" y1="10" x2="21" y2="10"/>
|
<line x1="4" y1="12" x2="20" y2="12" stroke="#e0e0e0" stroke-width="1.5" stroke-dasharray="3 2"/>
|
||||||
<line x1="3" y1="12" x2="21" y2="12" stroke-dasharray="3 2"/>
|
<line x1="4" y1="16" x2="20" y2="16" stroke="#e0e0e0" stroke-width="1.5" stroke-dasharray="3 2"/>
|
||||||
<!-- X to remove duplicate -->
|
<line x1="15" y1="5" x2="18" y2="8" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<line x1="16" y1="15" x2="21" y2="20"/>
|
<line x1="18" y1="5" x2="15" y2="8" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<line x1="21" y1="15" x2="16" y2="20"/>
|
<line x1="15" y1="9" x2="18" y2="12" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
<line x1="18" y1="9" x2="15" y2="12" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
<line x1="15" y1="13" x2="18" y2="16" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
<line x1="18" y1="13" x2="15" y2="16" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 436 B After Width: | Height: | Size: 887 B |
8
assets/icons/pan.svg
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
|
<line x1="12" y1="4" x2="12" y2="20" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
|
<line x1="4" y1="12" x2="20" y2="12" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
|
<polyline points="9,7 12,4 15,7" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
<polyline points="9,17 12,20 15,17" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
<polyline points="7,9 4,12 7,15" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
<polyline points="17,9 20,12 17,15" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 602 B |
|
|
@ -1,14 +1,8 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Point cloud -->
|
<rect x="3" y="5" width="14" height="14" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<circle cx="6" cy="14" r="1" fill="currentColor" stroke="none"/>
|
<circle cx="8" cy="10" r="1.5" fill="#e0e0e0"/>
|
||||||
<circle cx="9" cy="11" r="1" fill="currentColor" stroke="none"/>
|
<circle cx="12" cy="14" r="1.5" fill="#e0e0e0"/>
|
||||||
<circle cx="12" cy="9" r="1" fill="currentColor" stroke="none"/>
|
<line x1="8" y1="10" x2="12" y2="14" stroke="#e0e0e0" stroke-width="1" stroke-dasharray="2 2"/>
|
||||||
<circle cx="5" cy="17" r="1" fill="currentColor" stroke="none"/>
|
<line x1="18" y1="9" x2="21" y2="9" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<circle cx="8" cy="16" r="1" fill="currentColor" stroke="none"/>
|
<line x1="19.5" y1="7.5" x2="19.5" y2="10.5" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<circle cx="11" cy="13" r="1" fill="currentColor" stroke="none"/>
|
|
||||||
<circle cx="14" cy="11" r="1" fill="currentColor" stroke="none"/>
|
|
||||||
<circle cx="13" cy="16" r="1" fill="currentColor" stroke="none"/>
|
|
||||||
<!-- Plus/attach symbol -->
|
|
||||||
<line x1="18" y1="5" x2="18" y2="13"/>
|
|
||||||
<line x1="14" y1="9" x2="22" y2="9"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 841 B After Width: | Height: | Size: 598 B |
8
assets/icons/persp.svg
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
|
<rect x="2" y="8" width="9" height="9" rx="0.5" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
|
<rect x="10" y="10" width="5" height="5" rx="0.5" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
<line x1="2" y1="8" x2="10" y2="10" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
<line x1="11" y1="8" x2="15" y2="10" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
<line x1="11" y1="17" x2="15" y2="15" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
<line x1="2" y1="17" x2="10" y2="15" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 636 B |
|
|
@ -1,15 +1,11 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Properties panel -->
|
<rect x="4" y="2" width="16" height="20" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="4" y="2" width="16" height="20" rx="1"/>
|
<rect x="4" y="2" width="16" height="4" rx="1" fill="#4cc9f0" fill-opacity="0.3" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<!-- Header -->
|
<line x1="12" y1="3" x2="12" y2="20" stroke="#e0e0e0" stroke-width="1.5" stroke-dasharray="2 2"/>
|
||||||
<line x1="4" y1="6" x2="20" y2="6"/>
|
<line x1="6" y1="10" x2="11" y2="10" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<!-- Property rows: label + value -->
|
<line x1="13" y1="10" x2="18" y2="10" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<line x1="6" y1="10" x2="11" y2="10"/>
|
<line x1="6" y1="14" x2="11" y2="14" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="13" y1="10" x2="18" y2="10"/>
|
<line x1="13" y1="14" x2="18" y2="14" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<line x1="6" y1="14" x2="11" y2="14"/>
|
<line x1="6" y1="18" x2="11" y2="18" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="13" y1="14" x2="18" y2="14"/>
|
<line x1="13" y1="18" x2="18" y2="18" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<line x1="6" y1="18" x2="11" y2="18"/>
|
|
||||||
<line x1="13" y1="18" x2="18" y2="18"/>
|
|
||||||
<!-- Divider between label and value -->
|
|
||||||
<line x1="12" y1="7" x2="12" y2="20" stroke-dasharray="2 2"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 701 B After Width: | Height: | Size: 924 B |
|
|
@ -1,10 +1,7 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Trash can -->
|
<polyline points="5,7 7,20 17,20 19,7" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<polyline points="3,6 5,6 19,6"/>
|
<line x1="3" y1="7" x2="21" y2="7" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<path d="M8 6 V4 h8 v2"/>
|
<rect x="9" y="4" width="6" height="3" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="5" y="6" width="14" height="15" rx="1"/>
|
<line x1="10" y1="10" x2="10" y2="17" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<!-- Vertical lines inside -->
|
<line x1="14" y1="10" x2="14" y2="17" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<line x1="9" y1="10" x2="9" y2="17"/>
|
|
||||||
<line x1="12" y1="10" x2="12" y2="17"/>
|
|
||||||
<line x1="15" y1="10" x2="15" y2="17"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 462 B After Width: | Height: | Size: 546 B |
|
|
@ -1,18 +1,8 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Point cloud dots -->
|
<polygon points="12,3 20,8 20,16 12,21 4,16 4,8" stroke="#e0e0e0" stroke-width="1.5" fill="none"/>
|
||||||
<circle cx="7" cy="15" r="1" fill="currentColor" stroke="none"/>
|
<circle cx="12" cy="12" r="3" stroke="#4cc9f0" stroke-width="1.5" fill="#4cc9f0" fill-opacity="0.2"/>
|
||||||
<circle cx="10" cy="11" r="1" fill="currentColor" stroke="none"/>
|
<line x1="12" y1="3" x2="12" y2="9" stroke="#e0e0e0" stroke-width="1"/>
|
||||||
<circle cx="13" cy="9" r="1" fill="currentColor" stroke="none"/>
|
<line x1="12" y1="15" x2="12" y2="21" stroke="#e0e0e0" stroke-width="1"/>
|
||||||
<circle cx="5" cy="12" r="1" fill="currentColor" stroke="none"/>
|
<line x1="4" y1="8" x2="9.5" y2="10.5" stroke="#e0e0e0" stroke-width="1"/>
|
||||||
<circle cx="9" cy="16" r="1" fill="currentColor" stroke="none"/>
|
<line x1="14.5" y1="13.5" x2="20" y2="16" stroke="#e0e0e0" stroke-width="1"/>
|
||||||
<circle cx="12" cy="13" r="1" fill="currentColor" stroke="none"/>
|
|
||||||
<circle cx="15" cy="11" r="1" fill="currentColor" stroke="none"/>
|
|
||||||
<circle cx="17" cy="8" r="1" fill="currentColor" stroke="none"/>
|
|
||||||
<circle cx="14" cy="16" r="1" fill="currentColor" stroke="none"/>
|
|
||||||
<circle cx="17" cy="14" r="1" fill="currentColor" stroke="none"/>
|
|
||||||
<circle cx="6" cy="18" r="1" fill="currentColor" stroke="none"/>
|
|
||||||
<circle cx="11" cy="18" r="1" fill="currentColor" stroke="none"/>
|
|
||||||
<!-- ReCap logo hint: circular arrow -->
|
|
||||||
<path d="M19 5 A7 7 0 0 1 21 12" stroke-width="2"/>
|
|
||||||
<polyline points="17,3 19,5 21,3"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 662 B |
|
|
@ -1,17 +1,7 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Bug body (oval) -->
|
<rect x="4" y="3" width="16" height="18" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<ellipse cx="12" cy="13" rx="5" ry="6"/>
|
<line x1="7" y1="8" x2="17" y2="8" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<!-- Head -->
|
<line x1="7" y1="11" x2="17" y2="11" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<circle cx="12" cy="6" r="2.2"/>
|
<line x1="7" y1="14" x2="13" y2="14" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<!-- Antennae -->
|
<line x1="7" y1="17" x2="11" y2="17" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<line x1="10.5" y1="4.2" x2="8" y2="2"/>
|
|
||||||
<line x1="13.5" y1="4.2" x2="16" y2="2"/>
|
|
||||||
<!-- Left legs -->
|
|
||||||
<line x1="7" y1="10" x2="4" y2="9"/>
|
|
||||||
<line x1="7" y1="13" x2="4" y2="13"/>
|
|
||||||
<line x1="7" y1="16" x2="4" y2="17"/>
|
|
||||||
<!-- Right legs -->
|
|
||||||
<line x1="17" y1="10" x2="20" y2="9"/>
|
|
||||||
<line x1="17" y1="13" x2="20" y2="13"/>
|
|
||||||
<line x1="17" y1="16" x2="20" y2="17"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 683 B After Width: | Height: | Size: 544 B |
|
|
@ -1,9 +1,7 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Stack of sheets -->
|
<rect x="5" y="6" width="14" height="16" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="5" y="6" width="14" height="16" rx="1"/>
|
<rect x="3" y="4" width="14" height="16" rx="1" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<rect x="3" y="4" width="14" height="16" rx="1"/>
|
<line x1="5" y1="8" x2="15" y2="8" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<!-- Lines on top sheet -->
|
<line x1="5" y1="11" x2="15" y2="11" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="5" y1="8" x2="15" y2="8"/>
|
<line x1="5" y1="14" x2="11" y2="14" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="5" y1="11" x2="15" y2="11"/>
|
|
||||||
<line x1="5" y1="14" x2="11" y2="14"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 450 B After Width: | Height: | Size: 555 B |
|
|
@ -1,10 +1,10 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Underlay image -->
|
<rect x="3" y="5" width="14" height="14" rx="1" stroke="#e0e0e0" stroke-width="1.5" stroke-dasharray="3 2"/>
|
||||||
<rect x="2" y="5" width="14" height="12" rx="1" stroke-dasharray="3 2"/>
|
<line x1="10" y1="5" x2="10" y2="19" stroke="#e0e0e0" stroke-width="1" stroke-dasharray="2 2"/>
|
||||||
<!-- Snap crosshair -->
|
<line x1="3" y1="12" x2="17" y2="12" stroke="#e0e0e0" stroke-width="1" stroke-dasharray="2 2"/>
|
||||||
<line x1="17" y1="11" x2="22" y2="11"/>
|
<circle cx="10" cy="12" r="2" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<line x1="19" y1="9" x2="19" y2="13"/>
|
<line x1="10" y1="9" x2="10" y2="8" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<circle cx="19" cy="11" r="3"/>
|
<line x1="10" y1="15" x2="10" y2="16" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<!-- Snap indicator dot -->
|
<line x1="7" y1="12" x2="6" y2="12" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<circle cx="19" cy="11" r="1" fill="currentColor" stroke="none"/>
|
<line x1="13" y1="12" x2="14" y2="12" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 510 B After Width: | Height: | Size: 835 B |
5
assets/icons/solid.svg
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
|
<polygon points="5,9 15,9 15,19 5,19" fill="#4cc9f0" fill-opacity="0.25" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
|
<polygon points="5,9 9,5 19,5 15,9" fill="#4cc9f0" fill-opacity="0.55" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
<polygon points="15,9 19,5 19,15 15,19" fill="#4cc9f0" fill-opacity="0.12" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 489 B |
|
|
@ -1,5 +1,4 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Two windows stacked horizontally -->
|
<rect x="2" y="3" width="20" height="8" rx="1" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<rect x="2" y="3" width="20" height="8" rx="1"/>
|
<rect x="2" y="13" width="20" height="8" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="2" y="13" width="20" height="8" rx="1"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 315 B After Width: | Height: | Size: 325 B |
|
|
@ -1,5 +1,4 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Two windows side by side vertically -->
|
<rect x="2" y="3" width="9" height="18" rx="1" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<rect x="2" y="3" width="9" height="18" rx="1"/>
|
<rect x="13" y="3" width="9" height="18" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="13" y="3" width="9" height="18" rx="1"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 318 B After Width: | Height: | Size: 325 B |
|
|
@ -1,15 +1,11 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Palette panel (vertical strip) -->
|
<rect x="11" y="4" width="9" height="16" rx="1" stroke="#e0e0e0" stroke-width="1.5" stroke-dasharray="3 2"/>
|
||||||
<rect x="3" y="2" width="7" height="20" rx="1"/>
|
<rect x="3" y="2" width="7" height="20" rx="1" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<!-- Tab on top -->
|
<rect x="3" y="2" width="7" height="4" rx="1" fill="#4cc9f0" fill-opacity="0.3" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<rect x="3" y="2" width="7" height="4" rx="1"/>
|
<line x1="5" y1="9" x2="8" y2="9" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<!-- Stacked items inside -->
|
<rect x="4" y="7" width="2" height="2" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="5" y1="9" x2="8" y2="9"/>
|
<line x1="5" y1="14" x2="8" y2="14" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="4" y="7" width="2" height="2"/>
|
<rect x="4" y="12" width="2" height="2" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="5" y1="14" x2="8" y2="14"/>
|
<line x1="5" y1="19" x2="8" y2="19" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="4" y="12" width="2" height="2"/>
|
<rect x="4" y="17" width="2" height="2" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="5" y1="19" x2="8" y2="19"/>
|
|
||||||
<rect x="4" y="17" width="2" height="2"/>
|
|
||||||
<!-- Shadow panel behind -->
|
|
||||||
<rect x="11" y="4" width="7" height="16" rx="1" stroke-dasharray="3 2"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 720 B After Width: | Height: | Size: 933 B |
|
|
@ -1,10 +1,8 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- X axis (red-ish) -->
|
<line x1="4" y1="18" x2="14" y2="18" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<line x1="4" y1="18" x2="14" y2="18"/>
|
<polyline points="11,15 14,18 11,21" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<polyline points="11,15 14,18 11,21"/>
|
<text x="15" y="21" font-size="5" fill="#4cc9f0" stroke="none">X</text>
|
||||||
<text x="15" y="21" font-size="5" fill="currentColor" stroke="none">X</text>
|
<line x1="4" y1="18" x2="4" y2="6" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<!-- Y axis -->
|
<polyline points="1,9 4,6 7,9" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="4" y1="18" x2="4" y2="6"/>
|
<text x="1" y="5" font-size="5" fill="#e0e0e0" stroke="none">Y</text>
|
||||||
<polyline points="1,9 4,6 7,9"/>
|
|
||||||
<text x="1" y="5" font-size="5" fill="currentColor" stroke="none">Y</text>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 526 B After Width: | Height: | Size: 596 B |
|
|
@ -1,13 +1,4 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Frame border (dashed) -->
|
<rect x="5" y="7" width="14" height="10" rx="1" stroke="#e0e0e0" stroke-width="1.5" stroke-dasharray="3 2"/>
|
||||||
<rect x="3" y="3" width="18" height="18" rx="1" stroke-dasharray="4 2"/>
|
<rect x="3" y="5" width="14" height="10" rx="1" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<!-- Corner markers -->
|
|
||||||
<line x1="3" y1="3" x2="7" y2="3"/>
|
|
||||||
<line x1="3" y1="3" x2="3" y2="7"/>
|
|
||||||
<line x1="21" y1="3" x2="17" y2="3"/>
|
|
||||||
<line x1="21" y1="3" x2="21" y2="7"/>
|
|
||||||
<line x1="3" y1="21" x2="7" y2="21"/>
|
|
||||||
<line x1="3" y1="21" x2="3" y2="17"/>
|
|
||||||
<line x1="21" y1="21" x2="17" y2="21"/>
|
|
||||||
<line x1="21" y1="21" x2="21" y2="17"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 622 B After Width: | Height: | Size: 349 B |
|
|
@ -1,6 +1,5 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Stacked layers -->
|
<rect x="5" y="13" width="14" height="6" rx="1" stroke="#e0e0e0" stroke-width="1.5" stroke-dasharray="3 2"/>
|
||||||
<polygon points="12,3 22,8 12,13 2,8"/>
|
<rect x="5" y="8" width="14" height="6" rx="1" stroke="#e0e0e0" stroke-width="1.5" stroke-dasharray="3 2"/>
|
||||||
<polyline points="2,12 12,17 22,12"/>
|
<rect x="5" y="5" width="14" height="6" rx="1" stroke="#4cc9f0" stroke-width="1.5" fill="#4cc9f0" fill-opacity="0.12"/>
|
||||||
<polyline points="2,16 12,21 22,16"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 316 B After Width: | Height: | Size: 493 B |
|
|
@ -1,12 +1,8 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Monitor -->
|
<rect x="3" y="4" width="18" height="16" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="2" y="3" width="20" height="14" rx="1"/>
|
<line x1="3" y1="8" x2="21" y2="8" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<!-- Screen content: ribbon bar -->
|
<line x1="3" y1="17" x2="21" y2="17" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="2" y1="7" x2="22" y2="7"/>
|
<rect x="6" y="11" width="5" height="4" rx="0.5" stroke="#4cc9f0" stroke-width="1" fill="#4cc9f0" fill-opacity="0.2"/>
|
||||||
<rect x="4" y="4" width="3" height="2.5" rx="0.3"/>
|
<line x1="13" y1="12" x2="18" y2="12" stroke="#e0e0e0" stroke-width="1"/>
|
||||||
<rect x="8" y="4" width="3" height="2.5" rx="0.3"/>
|
<line x1="13" y1="14" x2="16" y2="14" stroke="#e0e0e0" stroke-width="1"/>
|
||||||
<rect x="12" y="4" width="3" height="2.5" rx="0.3"/>
|
|
||||||
<!-- Stand -->
|
|
||||||
<line x1="12" y1="17" x2="12" y2="21"/>
|
|
||||||
<line x1="8" y1="21" x2="16" y2="21"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 579 B After Width: | Height: | Size: 663 B |
6
assets/icons/view_front.svg
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
|
<rect x="4" y="4" width="16" height="16" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
|
<line x1="12" y1="4" x2="12" y2="20" stroke="#e0e0e0" stroke-width="1.5" stroke-dasharray="2 2"/>
|
||||||
|
<line x1="4" y1="12" x2="20" y2="12" stroke="#e0e0e0" stroke-width="1.5" stroke-dasharray="2 2"/>
|
||||||
|
<circle cx="12" cy="12" r="2.5" fill="#4cc9f0" fill-opacity="0.4" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 544 B |
5
assets/icons/view_iso.svg
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
|
<polygon points="12,3 20,8 12,13 4,8" fill="#4cc9f0" fill-opacity="0.45" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
<polygon points="4,8 12,13 12,21 4,16" fill="#4cc9f0" fill-opacity="0.12" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
|
<polygon points="20,8 12,13 12,21 20,16" fill="#4cc9f0" fill-opacity="0.25" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 493 B |
7
assets/icons/view_right.svg
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
|
<rect x="4" y="4" width="16" height="16" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
|
<line x1="12" y1="4" x2="12" y2="20" stroke="#e0e0e0" stroke-width="1.5" stroke-dasharray="2 2"/>
|
||||||
|
<line x1="4" y1="12" x2="20" y2="12" stroke="#e0e0e0" stroke-width="1.5" stroke-dasharray="2 2"/>
|
||||||
|
<polyline points="22,9 19,12 22,15" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
<line x1="13" y1="12" x2="22" y2="12" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 592 B |
7
assets/icons/view_top.svg
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
|
<rect x="4" y="6" width="16" height="16" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
|
<line x1="12" y1="6" x2="12" y2="22" stroke="#e0e0e0" stroke-width="1.5" stroke-dasharray="2 2"/>
|
||||||
|
<line x1="4" y1="14" x2="20" y2="14" stroke="#e0e0e0" stroke-width="1.5" stroke-dasharray="2 2"/>
|
||||||
|
<polyline points="9,3 12,6 15,3" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
<line x1="12" y1="2" x2="12" y2="6" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 587 B |
|
|
@ -1,8 +1,5 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Front face -->
|
<rect x="6" y="10" width="10" height="10" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="6" y="10" width="10" height="10" rx="1"/>
|
<polygon points="6,10 10,6 20,6 16,10" fill="#4cc9f0" fill-opacity="0.45" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<!-- Top face -->
|
<polygon points="16,10 20,6 20,16 16,20" fill="#4cc9f0" fill-opacity="0.18" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<polygon points="6,10 10,6 20,6 16,10"/>
|
|
||||||
<!-- Right face -->
|
|
||||||
<polygon points="16,10 20,6 20,16 16,20"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 373 B After Width: | Height: | Size: 469 B |
|
|
@ -1,7 +1,6 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- 4 viewport grid -->
|
<rect x="2" y="2" width="9" height="9" rx="1" fill="#4cc9f0" fill-opacity="0.25" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<rect x="2" y="2" width="9" height="9" rx="1"/>
|
<rect x="13" y="2" width="9" height="9" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="13" y="2" width="9" height="9" rx="1"/>
|
<rect x="2" y="13" width="9" height="9" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="2" y="13" width="9" height="9" rx="1"/>
|
<rect x="13" y="13" width="9" height="9" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="13" y="13" width="9" height="9" rx="1"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 399 B After Width: | Height: | Size: 533 B |
|
|
@ -1,10 +1,7 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Two small viewports -->
|
<rect x="2" y="4" width="8" height="7" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="2" y="4" width="9" height="7" rx="1"/>
|
<rect x="2" y="13" width="8" height="7" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="2" y="13" width="9" height="7" rx="1"/>
|
<line x1="12" y1="12" x2="17" y2="12" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<!-- Arrow merging into one -->
|
<polyline points="15,9 17,12 15,15" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<line x1="13" y1="12" x2="18" y2="12"/>
|
<rect x="18" y="4" width="4" height="16" rx="0.5" fill="#4cc9f0" fill-opacity="0.25" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<polyline points="16,9 18,12 16,15"/>
|
|
||||||
<!-- Result: one big viewport -->
|
|
||||||
<rect x="19" y="4" width="3" height="16" rx="0.5"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 506 B After Width: | Height: | Size: 602 B |
|
|
@ -1,8 +1,6 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Two viewports side by side -->
|
<rect x="2" y="4" width="9" height="16" rx="1" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<rect x="2" y="4" width="9" height="16" rx="1"/>
|
<rect x="13" y="4" width="9" height="16" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="13" y="4" width="9" height="16" rx="1"/>
|
<line x1="4" y1="7" x2="9" y2="7" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<!-- Label line on each -->
|
<line x1="15" y1="7" x2="20" y2="7" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<line x1="4" y1="7" x2="9" y2="7"/>
|
|
||||||
<line x1="15" y1="7" x2="20" y2="7"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 417 B After Width: | Height: | Size: 475 B |
|
|
@ -1,7 +1,5 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Single viewport with restore arrow -->
|
<rect x="3" y="4" width="18" height="16" rx="1" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
<rect x="3" y="4" width="18" height="16" rx="1"/>
|
<path d="M9 14 A4 4 0 1 1 15 14" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<!-- Restore/refresh arrow inside -->
|
<polyline points="15,11 15,14 18,14" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<path d="M9 14 A4 4 0 1 1 15 14"/>
|
|
||||||
<polyline points="15,11 15,14 18,14"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 384 B After Width: | Height: | Size: 388 B |
8
assets/icons/wireframe.svg
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke="#e0e0e0" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
||||||
|
<rect x="5" y="9" width="10" height="10" rx="0.5"/>
|
||||||
|
<polygon points="5,9 9,5 19,5 15,9"/>
|
||||||
|
<polygon points="15,9 19,5 19,15 15,19"/>
|
||||||
|
<line x1="5" y1="9" x2="9" y2="5" stroke-dasharray="2 2"/>
|
||||||
|
<line x1="9" y1="5" x2="9" y2="15" stroke-dasharray="2 2"/>
|
||||||
|
<line x1="9" y1="15" x2="19" y2="15" stroke-dasharray="2 2"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 511 B |
|
|
@ -1,8 +1,8 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Image/underlay rectangle -->
|
<rect x="4" y="4" width="16" height="16" rx="1" stroke="#e0e0e0" stroke-width="1.5" stroke-dasharray="3 2"/>
|
||||||
<rect x="3" y="4" width="14" height="14" rx="1"/>
|
<rect x="7" y="7" width="10" height="10" rx="1" stroke="#4cc9f0" stroke-width="1.5" fill="#4cc9f0" fill-opacity="0.12"/>
|
||||||
<!-- Brightness/contrast sliders -->
|
<line x1="4" y1="4" x2="7" y2="7" stroke="#4cc9f0" stroke-width="1" stroke-dasharray="2 1"/>
|
||||||
<line x1="19" y1="6" x2="19" y2="18"/>
|
<line x1="20" y1="4" x2="17" y2="7" stroke="#4cc9f0" stroke-width="1" stroke-dasharray="2 1"/>
|
||||||
<circle cx="19" cy="10" r="2" fill="currentColor" stroke="none"/>
|
<line x1="4" y1="20" x2="7" y2="17" stroke="#4cc9f0" stroke-width="1" stroke-dasharray="2 1"/>
|
||||||
<line x1="17" y1="10" x2="21" y2="10"/>
|
<line x1="20" y1="20" x2="17" y2="17" stroke="#4cc9f0" stroke-width="1" stroke-dasharray="2 1"/>
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 446 B After Width: | Height: | Size: 772 B |
|
|
@ -1,10 +1,6 @@
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
<!-- Document with clip boundary -->
|
<rect x="4" y="4" width="16" height="16" rx="1" stroke="#e0e0e0" stroke-width="1.5" stroke-dasharray="3 2"/>
|
||||||
<rect x="4" y="3" width="12" height="16" rx="1"/>
|
<polygon points="4,4 14,4 14,14 4,14" fill="#4cc9f0" fill-opacity="0.15" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
<!-- Clip boundary (dashed polygon) -->
|
<line x1="14" y1="4" x2="14" y2="20" stroke="#4cc9f0" stroke-width="1.5" stroke-dasharray="3 2"/>
|
||||||
<polygon points="6,6 14,6 14,15 6,15" stroke-dasharray="3 2"/>
|
<line x1="4" y1="14" x2="20" y2="14" stroke="#4cc9f0" stroke-width="1.5" stroke-dasharray="3 2"/>
|
||||||
<!-- Scissors symbol -->
|
|
||||||
<line x1="16" y1="16" x2="21" y2="21"/>
|
|
||||||
<circle cx="18" cy="14" r="2"/>
|
|
||||||
<circle cx="20" cy="19" r="2"/>
|
|
||||||
</svg>
|
</svg>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 503 B After Width: | Height: | Size: 574 B |
8
assets/icons/xray.svg
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
|
<rect x="5" y="9" width="10" height="10" rx="0.5" stroke="#e0e0e0" stroke-width="1.5" stroke-dasharray="3 1.5"/>
|
||||||
|
<polygon points="5,9 9,5 19,5 15,9" stroke="#e0e0e0" stroke-width="1.5" stroke-dasharray="3 1.5"/>
|
||||||
|
<polygon points="15,9 19,5 19,15 15,19" stroke="#e0e0e0" stroke-width="1.5" stroke-dasharray="3 1.5"/>
|
||||||
|
<line x1="5" y1="9" x2="9" y2="5" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
<line x1="9" y1="5" x2="9" y2="15" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
<line x1="9" y1="15" x2="19" y2="15" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 697 B |
8
assets/icons/zoom_ext.svg
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
|
<circle cx="11" cy="11" r="7" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
|
<line x1="16.5" y1="16.5" x2="21" y2="21" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
|
<polyline points="8,11 5,11 5,8" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
<polyline points="14,11 17,11 17,8" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
<polyline points="11,8 11,5 8,5" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
<polyline points="11,14 11,17 8,17" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 600 B |
6
assets/icons/zoom_in.svg
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
|
<circle cx="11" cy="11" r="7" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
|
<line x1="16.5" y1="16.5" x2="21" y2="21" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
|
<line x1="8" y1="11" x2="14" y2="11" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
<line x1="11" y1="8" x2="11" y2="14" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 456 B |
5
assets/icons/zoom_out.svg
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="64" height="64" fill="none" stroke-linecap="round" stroke-linejoin="round">
|
||||||
|
<circle cx="11" cy="11" r="7" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
|
<line x1="16.5" y1="16.5" x2="21" y2="21" stroke="#e0e0e0" stroke-width="1.5"/>
|
||||||
|
<line x1="8" y1="11" x2="14" y2="11" stroke="#4cc9f0" stroke-width="1.5"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 379 B |
|
|
@ -3706,6 +3706,41 @@ impl H7CAD {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ── NAVVCUBE — toggle ViewCube visibility ────────────────────────────
|
||||||
|
"NAVVCUBE" => {
|
||||||
|
return Task::done(Message::ToggleViewCube);
|
||||||
|
}
|
||||||
|
|
||||||
|
// ── NAVBAR — toggle navigation toolbar visibility ────────────────────
|
||||||
|
"NAVBAR" => {
|
||||||
|
return Task::done(Message::ToggleNavbar);
|
||||||
|
}
|
||||||
|
|
||||||
|
// ── PROPERTIES — toggle Properties panel visibility ──────────────────
|
||||||
|
"PROPERTIES" | "PR" | "PROPS" => {
|
||||||
|
return Task::done(Message::ToggleProperties);
|
||||||
|
}
|
||||||
|
|
||||||
|
// ── FILETAB — toggle file/document tabs ──────────────────────────────
|
||||||
|
"FILETAB" => {
|
||||||
|
return Task::done(Message::ToggleFileTabs);
|
||||||
|
}
|
||||||
|
|
||||||
|
// ── LAYOUTTAB — toggle layout/paper-space tabs ───────────────────────
|
||||||
|
"LAYOUTTAB" => {
|
||||||
|
return Task::done(Message::ToggleLayoutTabs);
|
||||||
|
}
|
||||||
|
|
||||||
|
// ── TOOLPALETTES — not yet implemented ───────────────────────────────
|
||||||
|
"TOOLPALETTES" | "TP" => {
|
||||||
|
self.command_line.push_info("TOOLPALETTES: Tool Palettes not yet implemented.");
|
||||||
|
}
|
||||||
|
|
||||||
|
// ── SHEETSET — not yet implemented ───────────────────────────────────
|
||||||
|
"SHEETSET" | "SSM" => {
|
||||||
|
self.command_line.push_info("SHEETSET: Sheet Set Manager not yet implemented.");
|
||||||
|
}
|
||||||
|
|
||||||
// ── XDATA — read/write extended entity data ──────────────────────────
|
// ── XDATA — read/write extended entity data ──────────────────────────
|
||||||
// XDATA LIST — show all xdata records on selected entities
|
// XDATA LIST — show all xdata records on selected entities
|
||||||
// XDATA SET <app> <str> — append a string xdata value for <app>
|
// XDATA SET <app> <str> — append a string xdata value for <app>
|
||||||
|
|
|
||||||
|
|
@ -53,6 +53,16 @@ pub(super) struct H7CAD {
|
||||||
dyn_input: bool,
|
dyn_input: bool,
|
||||||
/// Show the UCS icon in the bottom-left corner of model space (UCSICON).
|
/// Show the UCS icon in the bottom-left corner of model space (UCSICON).
|
||||||
show_ucs_icon: bool,
|
show_ucs_icon: bool,
|
||||||
|
/// Whether the ViewCube 3D gizmo is visible in model space (NAVVCUBE).
|
||||||
|
show_viewcube: bool,
|
||||||
|
/// Whether the navigation toolbar is shown in the viewport (NAVBAR).
|
||||||
|
show_navbar: bool,
|
||||||
|
/// Whether the Properties panel is shown on the left (PROPERTIES).
|
||||||
|
show_properties: bool,
|
||||||
|
/// Whether the document file tabs are shown at the top (FILETAB).
|
||||||
|
show_file_tabs: bool,
|
||||||
|
/// Whether the layout/paper-space tabs are shown at the bottom (LAYOUTTAB).
|
||||||
|
show_layout_tabs: bool,
|
||||||
/// Last point committed by a drawing command — used as ortho/polar base.
|
/// Last point committed by a drawing command — used as ortho/polar base.
|
||||||
last_point: Option<glam::Vec3>,
|
last_point: Option<glam::Vec3>,
|
||||||
/// OS window Id for the floating Layer Properties Manager (None when closed).
|
/// OS window Id for the floating Layer Properties Manager (None when closed).
|
||||||
|
|
@ -248,6 +258,16 @@ pub enum Message {
|
||||||
ToggleSnapEnabled,
|
ToggleSnapEnabled,
|
||||||
/// Toggle grid-snap on/off — F9 / SNAP status-bar button.
|
/// Toggle grid-snap on/off — F9 / SNAP status-bar button.
|
||||||
ToggleGridSnap,
|
ToggleGridSnap,
|
||||||
|
/// Toggle the ViewCube 3D gizmo visibility (NAVVCUBE).
|
||||||
|
ToggleViewCube,
|
||||||
|
/// Toggle the navigation toolbar visibility (NAVBAR).
|
||||||
|
ToggleNavbar,
|
||||||
|
/// Toggle the Properties panel visibility (PROPERTIES).
|
||||||
|
ToggleProperties,
|
||||||
|
/// Toggle the document file tabs at the top (FILETAB).
|
||||||
|
ToggleFileTabs,
|
||||||
|
/// Toggle the layout tabs at the bottom (LAYOUTTAB).
|
||||||
|
ToggleLayoutTabs,
|
||||||
/// Toggle grid display in the viewport — F7 / GRID status-bar button.
|
/// Toggle grid display in the viewport — F7 / GRID status-bar button.
|
||||||
ToggleGrid,
|
ToggleGrid,
|
||||||
/// Toggle orthogonal drawing constraint — F8 / ORTHO status-bar button.
|
/// Toggle orthogonal drawing constraint — F8 / ORTHO status-bar button.
|
||||||
|
|
@ -545,6 +565,11 @@ impl H7CAD {
|
||||||
show_grid: false,
|
show_grid: false,
|
||||||
dyn_input: true,
|
dyn_input: true,
|
||||||
show_ucs_icon: true,
|
show_ucs_icon: true,
|
||||||
|
show_viewcube: true,
|
||||||
|
show_navbar: true,
|
||||||
|
show_properties: true,
|
||||||
|
show_file_tabs: true,
|
||||||
|
show_layout_tabs: true,
|
||||||
last_point: None,
|
last_point: None,
|
||||||
layer_window: None,
|
layer_window: None,
|
||||||
main_window: None,
|
main_window: None,
|
||||||
|
|
|
||||||
|
|
@ -1878,6 +1878,11 @@ impl H7CAD {
|
||||||
Task::none()
|
Task::none()
|
||||||
}
|
}
|
||||||
Message::ToggleDynInput => { self.dyn_input ^= true; Task::none() }
|
Message::ToggleDynInput => { self.dyn_input ^= true; Task::none() }
|
||||||
|
Message::ToggleViewCube => { self.show_viewcube ^= true; Task::none() }
|
||||||
|
Message::ToggleNavbar => { self.show_navbar ^= true; Task::none() }
|
||||||
|
Message::ToggleProperties => { self.show_properties ^= true; Task::none() }
|
||||||
|
Message::ToggleFileTabs => { self.show_file_tabs ^= true; Task::none() }
|
||||||
|
Message::ToggleLayoutTabs => { self.show_layout_tabs ^= true; Task::none() }
|
||||||
Message::ToggleOTrack => {
|
Message::ToggleOTrack => {
|
||||||
self.snapper.otrack_enabled ^= true;
|
self.snapper.otrack_enabled ^= true;
|
||||||
if !self.snapper.otrack_enabled {
|
if !self.snapper.otrack_enabled {
|
||||||
|
|
|
||||||
|
|
@ -189,14 +189,9 @@ impl H7CAD {
|
||||||
vec![]
|
vec![]
|
||||||
};
|
};
|
||||||
|
|
||||||
overlay::selection_overlay(sel, snap_info, grips, grid, ucs_icon, ost_points, tab.last_cursor_screen, !is_paper)
|
overlay::selection_overlay(sel, snap_info, grips, grid, ucs_icon, ost_points, tab.last_cursor_screen, !is_paper && self.show_viewcube)
|
||||||
};
|
};
|
||||||
|
|
||||||
let nav = container(overlay::nav_toolbar())
|
|
||||||
.align_right(Fill)
|
|
||||||
.align_top(Fill)
|
|
||||||
.padding(iced::Padding { top: 148.0, right: 8.0, bottom: 0.0, left: 0.0 });
|
|
||||||
|
|
||||||
let info = container(overlay::info_bar(
|
let info = container(overlay::info_bar(
|
||||||
if is_paper { &tab.scene.current_layout } else { "Custom View" },
|
if is_paper { &tab.scene.current_layout } else { "Custom View" },
|
||||||
&tab.visual_style,
|
&tab.visual_style,
|
||||||
|
|
@ -216,21 +211,6 @@ impl H7CAD {
|
||||||
.on_scroll(Message::ViewportScroll)
|
.on_scroll(Message::ViewportScroll)
|
||||||
.on_exit(Message::ViewportExit);
|
.on_exit(Message::ViewportExit);
|
||||||
|
|
||||||
let cube_click = mouse_area(container(
|
|
||||||
iced::widget::Space::new()
|
|
||||||
.width(iced::Length::Fixed(VIEWCUBE_HIT_SIZE))
|
|
||||||
.height(iced::Length::Fixed(VIEWCUBE_HIT_SIZE)),
|
|
||||||
))
|
|
||||||
.on_move(Message::CursorMoved)
|
|
||||||
.on_press(Message::ViewportClick);
|
|
||||||
|
|
||||||
let cube_click = container(cube_click)
|
|
||||||
.align_right(Fill)
|
|
||||||
.align_top(Fill)
|
|
||||||
.padding(iced::Padding { top: VIEWCUBE_PAD, right: VIEWCUBE_PAD, bottom: 0.0, left: 0.0 })
|
|
||||||
.width(Fill)
|
|
||||||
.height(Fill);
|
|
||||||
|
|
||||||
let bg_color = if is_paper {
|
let bg_color = if is_paper {
|
||||||
// Desk color — matches the DESK constant in paper_canvas.rs.
|
// Desk color — matches the DESK constant in paper_canvas.rs.
|
||||||
Color { r: 0.22, g: 0.24, b: 0.28, a: 1.0 }
|
Color { r: 0.22, g: 0.24, b: 0.28, a: 1.0 }
|
||||||
|
|
@ -270,36 +250,67 @@ impl H7CAD {
|
||||||
container(info).width(Fill).height(Fill),
|
container(info).width(Fill).height(Fill),
|
||||||
selection_overlay,
|
selection_overlay,
|
||||||
viewport_mouse,
|
viewport_mouse,
|
||||||
nav,
|
|
||||||
cube_click,
|
|
||||||
]
|
]
|
||||||
.width(Fill)
|
.width(Fill)
|
||||||
.height(Fill);
|
.height(Fill);
|
||||||
|
|
||||||
|
if self.show_navbar {
|
||||||
|
let nav = container(overlay::nav_toolbar())
|
||||||
|
.align_right(Fill)
|
||||||
|
.align_top(Fill)
|
||||||
|
.padding(iced::Padding { top: 148.0, right: 8.0, bottom: 0.0, left: 0.0 });
|
||||||
|
viewport_stack = viewport_stack.push(nav);
|
||||||
|
}
|
||||||
|
|
||||||
|
if self.show_viewcube && !is_paper {
|
||||||
|
let cube_click: Element<'_, Message> = container(
|
||||||
|
mouse_area(container(
|
||||||
|
iced::widget::Space::new()
|
||||||
|
.width(iced::Length::Fixed(VIEWCUBE_HIT_SIZE))
|
||||||
|
.height(iced::Length::Fixed(VIEWCUBE_HIT_SIZE)),
|
||||||
|
))
|
||||||
|
.on_move(Message::CursorMoved)
|
||||||
|
.on_press(Message::ViewportClick),
|
||||||
|
)
|
||||||
|
.align_right(Fill)
|
||||||
|
.align_top(Fill)
|
||||||
|
.padding(iced::Padding { top: VIEWCUBE_PAD, right: VIEWCUBE_PAD, bottom: 0.0, left: 0.0 })
|
||||||
|
.width(Fill)
|
||||||
|
.height(Fill)
|
||||||
|
.into();
|
||||||
|
viewport_stack = viewport_stack.push(cube_click);
|
||||||
|
}
|
||||||
|
|
||||||
if let Some(dyn_ol) = dyn_input_overlay {
|
if let Some(dyn_ol) = dyn_input_overlay {
|
||||||
viewport_stack = viewport_stack.push(dyn_ol);
|
viewport_stack = viewport_stack.push(dyn_ol);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
let properties_el: Element<'_, Message> = if self.show_properties {
|
||||||
|
tab.properties.view()
|
||||||
|
} else {
|
||||||
|
Space::new().into()
|
||||||
|
};
|
||||||
|
|
||||||
let center_stack = iced::widget::stack![
|
let center_stack = iced::widget::stack![
|
||||||
row![tab.properties.view(), viewport_stack]
|
row![properties_el, viewport_stack]
|
||||||
.width(Fill)
|
.width(Fill)
|
||||||
.height(Fill),
|
.height(Fill),
|
||||||
]
|
]
|
||||||
.width(Fill)
|
.width(Fill)
|
||||||
.height(Fill);
|
.height(Fill);
|
||||||
|
|
||||||
let tab_bar = doc_tab_bar(&self.tabs, self.active_tab);
|
let main_ui = container({
|
||||||
|
let mut col = column![self.ribbon.view(
|
||||||
let main_ui = container(
|
is_paper,
|
||||||
column![
|
self.tabs[self.active_tab].history.undo_stack.len(),
|
||||||
self.ribbon.view(
|
self.tabs[self.active_tab].history.redo_stack.len(),
|
||||||
is_paper,
|
)];
|
||||||
self.tabs[self.active_tab].history.undo_stack.len(),
|
if self.show_file_tabs {
|
||||||
self.tabs[self.active_tab].history.redo_stack.len(),
|
col = col.push(doc_tab_bar(&self.tabs, self.active_tab));
|
||||||
),
|
}
|
||||||
tab_bar,
|
col.push(center_stack)
|
||||||
center_stack,
|
.push(self.command_line.view())
|
||||||
self.command_line.view(),
|
.push(self.status_bar.view(
|
||||||
self.status_bar.view(
|
|
||||||
&self.snapper,
|
&self.snapper,
|
||||||
self.snap_popup_open,
|
self.snap_popup_open,
|
||||||
self.ortho_mode,
|
self.ortho_mode,
|
||||||
|
|
@ -314,11 +325,11 @@ impl H7CAD {
|
||||||
tab.scene.first_viewport_scale(),
|
tab.scene.first_viewport_scale(),
|
||||||
tab.scene.viewport_count(),
|
tab.scene.viewport_count(),
|
||||||
tab.scene.active_viewport.is_some(),
|
tab.scene.active_viewport.is_some(),
|
||||||
)
|
self.show_layout_tabs,
|
||||||
]
|
))
|
||||||
.width(Fill)
|
.width(Fill)
|
||||||
.height(Fill),
|
.height(Fill)
|
||||||
)
|
})
|
||||||
.style(|_: &Theme| container::Style {
|
.style(|_: &Theme| container::Style {
|
||||||
background: Some(Background::Color(Color { r: 0.11, g: 0.11, b: 0.11, a: 1.0 })),
|
background: Some(Background::Color(Color { r: 0.11, g: 0.11, b: 0.11, a: 1.0 })),
|
||||||
..Default::default()
|
..Default::default()
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,5 @@
|
||||||
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
||||||
|
pub const ICON: IconKind = IconKind::Svg(include_bytes!("../../../assets/icons/hidden.svg"));
|
||||||
pub fn tool() -> ToolDef {
|
pub fn tool() -> ToolDef {
|
||||||
ToolDef {
|
ToolDef { id: "HIDDENLINE", label: "Hidden", icon: ICON, event: ModuleEvent::Command("HIDDENLINE".to_string()) }
|
||||||
id: "HIDDENLINE",
|
|
||||||
label: "Hidden",
|
|
||||||
icon: IconKind::Glyph("◫"),
|
|
||||||
event: ModuleEvent::Command("HIDDENLINE".to_string()),
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,5 @@
|
||||||
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
||||||
|
pub const ICON: IconKind = IconKind::Svg(include_bytes!("../../../assets/icons/orbit.svg"));
|
||||||
pub fn tool() -> ToolDef {
|
pub fn tool() -> ToolDef {
|
||||||
ToolDef {
|
ToolDef { id: "3DORBIT", label: "3D Orbit", icon: ICON, event: ModuleEvent::Command("3DORBIT".to_string()) }
|
||||||
id: "3DORBIT",
|
|
||||||
label: "3D Orbit",
|
|
||||||
icon: IconKind::Glyph("⟳"),
|
|
||||||
event: ModuleEvent::Command("3DORBIT".to_string()),
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,5 @@
|
||||||
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
||||||
|
pub const ICON: IconKind = IconKind::Svg(include_bytes!("../../../assets/icons/ortho.svg"));
|
||||||
pub fn tool() -> ToolDef {
|
pub fn tool() -> ToolDef {
|
||||||
ToolDef {
|
ToolDef { id: "ORTHO", label: "Ortho", icon: ICON, event: ModuleEvent::Command("ORTHO".into()) }
|
||||||
id: "ORTHO",
|
|
||||||
label: "Ortho",
|
|
||||||
icon: IconKind::Glyph("⊡"),
|
|
||||||
event: ModuleEvent::Command("ORTHO".into()),
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,5 @@
|
||||||
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
||||||
|
pub const ICON: IconKind = IconKind::Svg(include_bytes!("../../../assets/icons/pan.svg"));
|
||||||
pub fn tool() -> ToolDef {
|
pub fn tool() -> ToolDef {
|
||||||
ToolDef {
|
ToolDef { id: "PAN", label: "Pan", icon: ICON, event: ModuleEvent::Command("PAN".to_string()) }
|
||||||
id: "PAN",
|
|
||||||
label: "Pan",
|
|
||||||
icon: IconKind::Glyph("✥"),
|
|
||||||
event: ModuleEvent::Command("PAN".to_string()),
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,5 @@
|
||||||
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
||||||
|
pub const ICON: IconKind = IconKind::Svg(include_bytes!("../../../assets/icons/persp.svg"));
|
||||||
pub fn tool() -> ToolDef {
|
pub fn tool() -> ToolDef {
|
||||||
ToolDef {
|
ToolDef { id: "PERSP", label: "Persp", icon: ICON, event: ModuleEvent::Command("PERSP".into()) }
|
||||||
id: "PERSP",
|
|
||||||
label: "Persp",
|
|
||||||
icon: IconKind::Glyph("⟁"),
|
|
||||||
event: ModuleEvent::Command("PERSP".into()),
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,11 +2,7 @@
|
||||||
// id "SOLID" is special-cased in ribbon.rs for active-state highlighting.
|
// id "SOLID" is special-cased in ribbon.rs for active-state highlighting.
|
||||||
|
|
||||||
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
||||||
|
pub const ICON: IconKind = IconKind::Svg(include_bytes!("../../../assets/icons/solid.svg"));
|
||||||
pub fn tool() -> ToolDef {
|
pub fn tool() -> ToolDef {
|
||||||
ToolDef {
|
ToolDef { id: "SOLID", label: "Solid", icon: ICON, event: ModuleEvent::SetWireframe(false) }
|
||||||
id: "SOLID",
|
|
||||||
label: "Solid",
|
|
||||||
icon: IconKind::Glyph("■"),
|
|
||||||
event: ModuleEvent::SetWireframe(false),
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,5 @@
|
||||||
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
||||||
|
pub const ICON: IconKind = IconKind::Svg(include_bytes!("../../../assets/icons/view_front.svg"));
|
||||||
pub fn tool() -> ToolDef {
|
pub fn tool() -> ToolDef {
|
||||||
ToolDef {
|
ToolDef { id: "VIEW_FRONT", label: "Front", icon: ICON, event: ModuleEvent::Command("VIEW FRONT".to_string()) }
|
||||||
id: "VIEW_FRONT",
|
|
||||||
label: "Front",
|
|
||||||
icon: IconKind::Glyph("⊥"),
|
|
||||||
event: ModuleEvent::Command("VIEW FRONT".to_string()),
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,5 @@
|
||||||
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
||||||
|
pub const ICON: IconKind = IconKind::Svg(include_bytes!("../../../assets/icons/view_iso.svg"));
|
||||||
pub fn tool() -> ToolDef {
|
pub fn tool() -> ToolDef {
|
||||||
ToolDef {
|
ToolDef { id: "VIEW_ISO", label: "Iso", icon: ICON, event: ModuleEvent::Command("VIEW ISO".to_string()) }
|
||||||
id: "VIEW_ISO",
|
|
||||||
label: "Iso",
|
|
||||||
icon: IconKind::Glyph("◈"),
|
|
||||||
event: ModuleEvent::Command("VIEW ISO".to_string()),
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,5 @@
|
||||||
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
||||||
|
pub const ICON: IconKind = IconKind::Svg(include_bytes!("../../../assets/icons/view_right.svg"));
|
||||||
pub fn tool() -> ToolDef {
|
pub fn tool() -> ToolDef {
|
||||||
ToolDef {
|
ToolDef { id: "VIEW_RIGHT", label: "Right", icon: ICON, event: ModuleEvent::Command("VIEW RIGHT".to_string()) }
|
||||||
id: "VIEW_RIGHT",
|
|
||||||
label: "Right",
|
|
||||||
icon: IconKind::Glyph("⊣"),
|
|
||||||
event: ModuleEvent::Command("VIEW RIGHT".to_string()),
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,5 @@
|
||||||
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
||||||
|
pub const ICON: IconKind = IconKind::Svg(include_bytes!("../../../assets/icons/view_top.svg"));
|
||||||
pub fn tool() -> ToolDef {
|
pub fn tool() -> ToolDef {
|
||||||
ToolDef {
|
ToolDef { id: "VIEW_TOP", label: "Top", icon: ICON, event: ModuleEvent::Command("VIEW TOP".to_string()) }
|
||||||
id: "VIEW_TOP",
|
|
||||||
label: "Top",
|
|
||||||
icon: IconKind::Glyph("⊤"),
|
|
||||||
event: ModuleEvent::Command("VIEW TOP".to_string()),
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -2,11 +2,7 @@
|
||||||
// id "WIREFRAME" is special-cased in ribbon.rs for active-state highlighting.
|
// id "WIREFRAME" is special-cased in ribbon.rs for active-state highlighting.
|
||||||
|
|
||||||
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
||||||
|
pub const ICON: IconKind = IconKind::Svg(include_bytes!("../../../assets/icons/wireframe.svg"));
|
||||||
pub fn tool() -> ToolDef {
|
pub fn tool() -> ToolDef {
|
||||||
ToolDef {
|
ToolDef { id: "WIREFRAME", label: "Wireframe", icon: ICON, event: ModuleEvent::SetWireframe(true) }
|
||||||
id: "WIREFRAME",
|
|
||||||
label: "Wireframe",
|
|
||||||
icon: IconKind::Glyph("□"),
|
|
||||||
event: ModuleEvent::SetWireframe(true),
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,5 @@
|
||||||
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
||||||
|
pub const ICON: IconKind = IconKind::Svg(include_bytes!("../../../assets/icons/xray.svg"));
|
||||||
pub fn tool() -> ToolDef {
|
pub fn tool() -> ToolDef {
|
||||||
ToolDef {
|
ToolDef { id: "XRAY", label: "X-Ray", icon: ICON, event: ModuleEvent::Command("XRAY".to_string()) }
|
||||||
id: "XRAY",
|
|
||||||
label: "X-Ray",
|
|
||||||
icon: IconKind::Glyph("◈"),
|
|
||||||
event: ModuleEvent::Command("XRAY".to_string()),
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,5 @@
|
||||||
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
||||||
|
pub const ICON: IconKind = IconKind::Svg(include_bytes!("../../../assets/icons/zoom_ext.svg"));
|
||||||
pub fn tool() -> ToolDef {
|
pub fn tool() -> ToolDef {
|
||||||
ToolDef {
|
ToolDef { id: "ZOOM_EXT", label: "Zoom\nExtents", icon: ICON, event: ModuleEvent::Command("ZOOM EXTENTS".to_string()) }
|
||||||
id: "ZOOM_EXT",
|
|
||||||
label: "Zoom Ext",
|
|
||||||
icon: IconKind::Glyph("⊡"),
|
|
||||||
event: ModuleEvent::Command("ZOOM EXTENTS".to_string()),
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,5 @@
|
||||||
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
||||||
|
pub const ICON: IconKind = IconKind::Svg(include_bytes!("../../../assets/icons/zoom_in.svg"));
|
||||||
pub fn tool() -> ToolDef {
|
pub fn tool() -> ToolDef {
|
||||||
ToolDef {
|
ToolDef { id: "ZOOM_IN", label: "Zoom In", icon: ICON, event: ModuleEvent::Command("ZOOM IN".to_string()) }
|
||||||
id: "ZOOM_IN",
|
|
||||||
label: "Zoom In",
|
|
||||||
icon: IconKind::Glyph("🔍"),
|
|
||||||
event: ModuleEvent::Command("ZOOM IN".to_string()),
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,5 @@
|
||||||
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
||||||
|
pub const ICON: IconKind = IconKind::Svg(include_bytes!("../../../assets/icons/zoom_out.svg"));
|
||||||
pub fn tool() -> ToolDef {
|
pub fn tool() -> ToolDef {
|
||||||
ToolDef {
|
ToolDef { id: "ZOOM_OUT", label: "Zoom Out", icon: ICON, event: ModuleEvent::Command("ZOOM OUT".to_string()) }
|
||||||
id: "ZOOM_OUT",
|
|
||||||
label: "Zoom Out",
|
|
||||||
icon: IconKind::Glyph("🔎"),
|
|
||||||
event: ModuleEvent::Command("ZOOM OUT".to_string()),
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -40,6 +40,8 @@ impl StatusBar {
|
||||||
viewport_count: usize,
|
viewport_count: usize,
|
||||||
// True when the user is editing inside a paper-space viewport (MSPACE).
|
// True when the user is editing inside a paper-space viewport (MSPACE).
|
||||||
in_mspace: bool,
|
in_mspace: bool,
|
||||||
|
// Whether the layout tabs (Model/Paper) are visible (LAYOUTTAB).
|
||||||
|
show_layout_tabs: bool,
|
||||||
) -> Element<'a, Message> {
|
) -> Element<'a, Message> {
|
||||||
let menu_btn = button(text("≡").size(14).color(ICON_COLOR))
|
let menu_btn = button(text("≡").size(14).color(ICON_COLOR))
|
||||||
.on_press(Message::Command("MENU".into()))
|
.on_press(Message::Command("MENU".into()))
|
||||||
|
|
@ -107,14 +109,16 @@ impl StatusBar {
|
||||||
|
|
||||||
let mut bar = Row::new().align_y(iced::Center).spacing(0);
|
let mut bar = Row::new().align_y(iced::Center).spacing(0);
|
||||||
bar = bar.push(menu_btn);
|
bar = bar.push(menu_btn);
|
||||||
for name in layouts {
|
if show_layout_tabs {
|
||||||
let is_active = name == current_layout;
|
for name in layouts {
|
||||||
let renaming = rename_state
|
let is_active = name == current_layout;
|
||||||
.filter(|(orig, _)| *orig == name)
|
let renaming = rename_state
|
||||||
.map(|(_, edit)| edit.as_str());
|
.filter(|(orig, _)| *orig == name)
|
||||||
bar = bar.push(space_tab(name, is_active, renaming));
|
.map(|(_, edit)| edit.as_str());
|
||||||
|
bar = bar.push(space_tab(name, is_active, renaming));
|
||||||
|
}
|
||||||
|
bar = bar.push(add_btn);
|
||||||
}
|
}
|
||||||
bar = bar.push(add_btn);
|
|
||||||
bar = bar.push(iced::widget::Space::new().width(Length::Fill));
|
bar = bar.push(iced::widget::Space::new().width(Length::Fill));
|
||||||
bar = bar.push(right_status);
|
bar = bar.push(right_status);
|
||||||
|
|
||||||
|
|
|
||||||