diff options
| author | Craig Jennings <c@cjennings.net> | 2026-06-10 01:33:16 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-06-10 01:33:16 -0500 |
| commit | 9daeff15182d98ab28e201a17fe8c1cfa7c4e6f8 (patch) | |
| tree | be41c5ccee03b3d9b360692ff64ae5a5d12582ed /scripts/theme-studio/generate.py | |
| parent | f6ab000116b1a498df34b84c013fc0d077475c28 (diff) | |
| download | dotemacs-9daeff15182d98ab28e201a17fe8c1cfa7c4e6f8.tar.gz dotemacs-9daeff15182d98ab28e201a17fe8c1cfa7c4e6f8.zip | |
feat(theme-studio): base-edit recolors a family; retire the ramp panel
Editing a family's base now recolors the whole family: update-selected on a base with a ramp regenerates the family from the new base at the same count, so references follow the new hexes (shared regenFamilyInPlace with the count control). Editing a ground swatch already writes the bg/fg assignment through the existing repoint, and the gate confirms it.
The standalone ramp panel is gone — its button, panel, JS, CSS, and the #ramptest gate are removed. Fanning a color into a ramp now happens from its strip: add a color, then raise its column's count. The ramp() math stays in app-core; only the duplicate UI is retired.
Phase 5 of the color-families spec. A #baseedittest gate covers the base-edit recolor (family follows, references repoint, count preserved) and the bg-swatch edit writing the assignment.
Diffstat (limited to 'scripts/theme-studio/generate.py')
| -rw-r--r-- | scripts/theme-studio/generate.py | 14 |
1 files changed, 0 insertions, 14 deletions
diff --git a/scripts/theme-studio/generate.py b/scripts/theme-studio/generate.py index a8cda815..b6e2fc73 100644 --- a/scripts/theme-studio/generate.py +++ b/scripts/theme-studio/generate.py @@ -448,21 +448,7 @@ STYLES_CSS</style> <input type="text" id="newname" placeholder="name" onkeydown="if(event.key==='Enter')applyEdit()"> <button onclick="addColor()">+ add color</button> <button onclick="updateColor()">↻ update selected</button> - <button onclick="openRamp()" title="generate a tonal ramp (lighter/darker steps) from the current color">⛰ ramp</button> <span id="palmsg"></span> - <div id="ramp" class="ramp" style="display:none"> - <div class="ramprow"> - <label>ramp from <b id="rampname">—</b></label> - <label title="steps each direction (1-4)">steps <input type="number" id="rampn" min="1" max="4" step="1" value="2" style="width:48px"></label> - <label title="OKLCH lightness delta per step (0.04-0.12)">stepL <input type="number" id="rampstepl" min="0.04" max="0.12" step="0.01" value="0.08" style="width:62px"></label> - <label title="how much chroma eases out toward the extremes (0-1)">chroma ease <input type="number" id="rampce" min="0" max="1" step="0.1" value="0.5" style="width:58px"></label> - <button onclick="renderRamp()">preview</button> - <button onclick="addAllRampSteps()">+ add all</button> - <button onclick="closeRamp()">close</button> - </div> - <div id="rampprev" class="rampprev"></div> - <div id="rampmsg"></div> - </div> <div id="picker" class="picker"> <div class="prow"> <div id="sv" class="sv"><canvas id="svmask" class="svmask"></canvas><div id="svsafe" class="svsafe" style="display:none"></div><div id="svcur" class="svcur"></div></div> |
