fix: the Flex panel DAX button now toggles the TRANSMIT-bar DAX (transmit set dax=), not the slice RX DAX channel — this is the button that routes TX audio through DAX (WSJT-X); state follows changes made in SmartSDR too
This commit is contained in:
@@ -10,7 +10,7 @@ import {
|
||||
FlexSetRIT, FlexSetRITFreq, FlexSetXIT, FlexSetXITFreq,
|
||||
FlexSetNB, FlexSetNBLevel, FlexSetNR, FlexSetNRLevel, FlexSetANF, FlexSetANFLevel,
|
||||
FlexSetLMSNR, FlexSetLMSNRLevel, FlexSetLMSANF, FlexSetLMSANFLevel,
|
||||
FlexSetSpeexNR, FlexSetSpeexNRLevel, FlexSetRNN, FlexSetANFT, FlexSetNRF, FlexSetNRFLevel, FlexSetDAX,
|
||||
FlexSetSpeexNR, FlexSetSpeexNRLevel, FlexSetRNN, FlexSetANFT, FlexSetNRF, FlexSetNRFLevel, FlexSetTXDAX,
|
||||
FlexSetWNB, FlexSetWNBLevel, FlexSetTXFilter, FlexSetMicProfile,
|
||||
FlexSetAPF, FlexSetAPFLevel, FlexSetCWSpeed, FlexSetCWPitch, FlexSetCWBreakInDelay,
|
||||
FlexSetCWSidetone, FlexSetSidetoneLevel, FlexSetCWFilter, FlexSetFilter,
|
||||
@@ -37,7 +37,7 @@ type FlexState = {
|
||||
lms_nr?: boolean; lms_nr_level?: number; lms_anf?: boolean; lms_anf_level?: number;
|
||||
speex_nr?: boolean; speex_nr_level?: number; rnn?: boolean; anft?: boolean;
|
||||
nrf?: boolean; nrf_level?: number; dsp_v4?: boolean;
|
||||
dax_ch?: number;
|
||||
dax_ch?: number; tx_dax?: boolean;
|
||||
tx_filter_low: number; tx_filter_high: number; mic_profile?: string; mic_profiles?: string[];
|
||||
mode?: string;
|
||||
cw_speed: number; cw_pitch: number; cw_break_in_delay: number; cw_sidetone: boolean; cw_mon_level: number;
|
||||
@@ -733,16 +733,14 @@ export function FlexPanel({ onCWSpeed, onReportRST }: { onCWSpeed?: (wpm: number
|
||||
className="h-7 flex-1 min-w-0 rounded-md border border-input bg-background px-1.5 text-xs font-mono disabled:opacity-40">
|
||||
{((st.tx_ant_list?.length ? st.tx_ant_list : st.ant_list) ?? []).map((a) => <option key={a} value={a}>{a}</option>)}
|
||||
</select>
|
||||
{/* DAX audio channel of the active slice (0 = off) — the SmartSDR
|
||||
slice DAX selector, e.g. to feed WSJT-X over DAX audio. */}
|
||||
<span className="text-[10px] text-muted-foreground" title={t('flxp.daxHint')}>DAX</span>
|
||||
<select disabled={rxOff} value={String(st.dax_ch ?? 0)}
|
||||
onChange={(e) => { const ch = parseInt(e.target.value, 10) || 0; change('dax_ch', ch, () => FlexSetDAX(ch)); }}
|
||||
className={cn('h-7 w-14 shrink-0 rounded-md border px-1.5 text-xs font-mono disabled:opacity-40',
|
||||
(st.dax_ch ?? 0) > 0 ? 'border-info bg-info-muted text-info-muted-foreground font-bold' : 'border-input bg-background')}>
|
||||
<option value="0">Off</option>
|
||||
{[1, 2, 3, 4, 5, 6, 7, 8].map((c) => <option key={c} value={String(c)}>{c}</option>)}
|
||||
</select>
|
||||
{/* DAX on/off — SmartSDR's transmit-bar DAX button (TX audio from
|
||||
DAX, e.g. WSJT-X). "transmit set dax=", not the slice channel. */}
|
||||
<button type="button" disabled={off} title={t('flxp.daxHint')}
|
||||
onClick={() => change('tx_dax', !st.tx_dax, () => FlexSetTXDAX(!st.tx_dax))}
|
||||
className={cn('h-7 px-2.5 shrink-0 rounded-md border text-[11px] font-bold transition-colors disabled:opacity-40',
|
||||
st.tx_dax ? 'bg-info text-info-foreground border-info' : 'bg-card text-muted-foreground border-border hover:bg-muted')}>
|
||||
DAX
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
)}
|
||||
|
||||
Reference in New Issue
Block a user