[feat](trx-frontend-http): vchan freq display sync, BW accent, scheduler multi-channel
Virtual channel display: - vchan.js: wrap refreshFreqDisplay() so the main freq field always shows the active virtual channel's frequency instead of channel 0's; expose vchanSyncAccentUI() to add vchan-ch-active CSS class (colored border) to #freq and #spectrum-bw-input when on a non-primary channel - style.css: --vchan-color (#38bdf8 sky-blue), .vchan-ch-active box-shadow, vchan-picker active button left-border accent Scheduler multi-channel slots: - scheduler.rs: add center_hz (Option<u64>) and bookmark_ids (Vec<String>) to ScheduleEntry; SchedulerStatus gains last_center_hz and last_bookmark_ids; background task sends SetCenterFreq before SetFreq when center_hz is set and records extra bookmark_ids in status - scheduler.js: center-freq input and extra-channel bookmark picker (tag list with + / × buttons) in the add-entry form; extra channels shown in the entries table - index.html: center freq field + extra bookmark picker widgets; table gains Center freq and Extra channels columns Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> Signed-off-by: Stan Grams <sjg@haxx.space>
This commit is contained in:
@@ -728,7 +728,7 @@
|
||||
</div>
|
||||
<table class="sch-ts-table">
|
||||
<thead>
|
||||
<tr><th>Start</th><th>End</th><th>Bookmark</th><th>Label</th><th>Interleave (min)</th><th></th></tr>
|
||||
<tr><th>Start</th><th>End</th><th>Center freq</th><th>Primary bookmark</th><th>Extra channels</th><th>Label</th><th>Interleave (min)</th><th></th></tr>
|
||||
</thead>
|
||||
<tbody id="scheduler-ts-tbody"></tbody>
|
||||
</table>
|
||||
@@ -739,9 +739,19 @@
|
||||
<label class="sch-label">End (UTC)
|
||||
<input type="time" id="scheduler-ts-end" class="status-input" title="Set both to 00:00 for all-day" />
|
||||
</label>
|
||||
<label class="sch-label">Bookmark
|
||||
<label class="sch-label" id="scheduler-ts-center-hz-wrap" title="SDR only — sets center frequency before tuning">Center freq (Hz, SDR)
|
||||
<input type="number" id="scheduler-ts-center-hz" class="status-input" min="0" placeholder="optional" style="width:9rem;" />
|
||||
</label>
|
||||
<label class="sch-label">Primary bookmark
|
||||
<select id="scheduler-ts-bookmark" class="status-input" aria-label="Entry bookmark"></select>
|
||||
</label>
|
||||
<label class="sch-label">Extra channels (virtual)
|
||||
<div id="scheduler-ts-extra-bm-list" class="sch-extra-bm-list"></div>
|
||||
<div style="display:flex;gap:0.4rem;margin-top:0.3rem;">
|
||||
<select id="scheduler-ts-extra-bm-pick" class="status-input" aria-label="Extra bookmark"></select>
|
||||
<button id="scheduler-ts-extra-bm-add" type="button" class="sch-write" style="padding:0 0.7rem;">+</button>
|
||||
</div>
|
||||
</label>
|
||||
<label class="sch-label">Label (optional)
|
||||
<input type="text" id="scheduler-ts-label" class="status-input" placeholder="e.g. 40m FT8" />
|
||||
</label>
|
||||
|
||||
Reference in New Issue
Block a user