// Toggle dual watch when radio 1 is focused in SO2V. Typically mapped to a key in upper left corner of keyboard. public void Main(FrmMain main, ContestData cdata, COMMain comMain) { int focusedRadio = cdata.FocusedRadio; CATCommon radio1 = comMain.RadioObject(focusedRadio); bool radio1Present = radio1 != null; if ((focusedRadio == 1) && cdata.OPTechnique == ContestData.Technique.SO2V) { // If VFO A focused, SO2V and radio present tempStereoAudio = !tempStereoAudio; main.SetMainStatusText(tempStereoAudio ? "Both receivers." : "Main receiver only."); if (radio1Present) { radio1.SendCustomCommand(tempStereoAudio ? IcomDualWatchOn : IcomDualWatchOff); } } }
public void Main(FrmMain main, ContestData cdata, COMMain comMain) { var radioObject = comMain.RadioObject(cdata.FocusedRadio); if (radioObject == null) { main.SetMainStatusText(string.Format("CAT object for radio {0} isn't available!", cdata.FocusedRadio)); return; } if (radioObject.TXStatus) { radioObject.SendCustomCommand("RX;"); } else { radioObject.SendCustomCommand("TX;"); } }
// Toggle permanent dual watch, execution of Main is mapped to same key as built-in toggle Ctrl-Alt-S = AltGr-S. public void Main(FrmMain main, ContestData cdata, COMMain comMain) { CATCommon radio1 = comMain.RadioObject(1); int focusedRadio = cdata.FocusedRadio; bool stereoAudio = main.ListenStatusMode == COMMain.ListenMode.R1R2; bool modeIsSo2V = cdata.OPTechnique == ContestData.Technique.SO2V; bool radio1Present = radio1 != null; main.SetMainStatusText("Sub receiver " + (stereoAudio ? "not " : "") + "permanently on."); if (focusedRadio == 1 && radio1Present && modeIsSo2V) { if (radio1.IsICOM()) { radio1.SendCustomCommand(stereoAudio ? IcomDualWatchOff : IcomDualWatchOn); } } // Also execute the normal operation of the key main.ScriptContinue = true; }