import React, { useState } from 'react'; // X1000 Audio Panel (Manual S.91). Selects which radios are heard, which COM is // used to transmit (MIC), marker/DME/ADF Morse audio, intercom, and the Display // Backup (reversionary) key. Selections are local state with authentic lit keys. // // COM MIC is single-select (one transmit radio); the receive/audio keys and the // Morse keys toggle independently — exactly like the real unit. export default function AudioPanel({ xp }) { const [mic, setMic] = useState('com1'); // transmit radio: com1 | com2 | tel const [recv, setRecv] = useState({ com1: true }); // receive/audio selections const [hiSens, setHiSens] = useState(false); const [crew, setCrew] = useState('pilot'); const [vol, setVol] = useState(60); const r = (k) => !!recv[k]; const toggle = (k) => setRecv((s) => ({ ...s, [k]: !s[k] })); // a single audio key: lit green for MIC (transmit), cyan for receive/Morse const Key = ({ k, label, sub, on, kind = 'recv', onClick }) => ( ); return (
AUDIO PANEL
COM
setMic('com1')} /> toggle('com1')} />
setMic('com2')} /> toggle('com2')} />
setMic((m) => (m === 'com1' ? 'com2' : 'com1'))} /> setMic('tel')} />
CABIN / SPEAKER
toggle('pa')} /> toggle('spkr')} />
toggle('mkr')} /> setHiSens((v) => !v)} />
NAV
toggle('dme')} /> toggle('nav1')} />
toggle('adf')} /> toggle('nav2')} />
toggle('aux')} /> toggle('msq')} />
CREW · ICS
setCrew('pilot')} /> setCrew('copilot')} />
PILOT INTERCOM VOL setVol(+e.target.value)} /> {vol}
); }