From 8573548c78c59b1cb79d115ccedeb0dc29a55b75 Mon Sep 17 00:00:00 2001 From: Falco Date: Fri, 12 Jan 2024 06:55:17 +0100 Subject: [PATCH] - Adds Radio Tune to AH64 DTC - Changes stepSize name in RadioFrequency to Increment - Bumps version to 0.6.3 --- .../DCS/Aircraft/AH64/AH64DTCData.cs | 325 +++++++++- .../DCS/Aircraft/AH64/AH64RadioPresetData.cs | 68 +- .../DCS/Aircraft/RadioFrequency.cs | 16 +- .../DCS/Tools/FormAH64DTC.Designer.cs | 598 +++++++++++++++++- CoordinateConverter/DCS/Tools/FormAH64DTC.cs | 346 ++++++++++ .../DCS/Tools/FormAH64DTC.resx | 220 +++---- CoordinateConverter/MainForm.cs | 2 +- CoordinateConverter/todo.txt | 1 - Installer/Installer.wixproj | 2 +- 9 files changed, 1400 insertions(+), 178 deletions(-) diff --git a/CoordinateConverter/DCS/Aircraft/AH64/AH64DTCData.cs b/CoordinateConverter/DCS/Aircraft/AH64/AH64DTCData.cs index 39d3851..580cea0 100644 --- a/CoordinateConverter/DCS/Aircraft/AH64/AH64DTCData.cs +++ b/CoordinateConverter/DCS/Aircraft/AH64/AH64DTCData.cs @@ -1,5 +1,4 @@ -using CoordinateConverter.DCS.Communication; -using Newtonsoft.Json; +using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Linq; @@ -49,6 +48,13 @@ private void Init() AH64RadioPresetData presetData = new AH64RadioPresetData(); presetDataDictionary.Add(preset, presetData); } + + var ps1 = presetDataDictionary[EPreset.Preset1]; + vhfManualFrequency = new RadioFrequency(ps1.VHFFrequency, ps1.VHFFrequencyMinimum, ps1.VHFFrequencyMaximum, ps1.VHFFrequencyIncrement); + uhfManualFrequency = new RadioFrequency(ps1.UHFFrequency, ps1.UHFFrequencyMinimum, ps1.UHFFrequencyMaximum, ps1.UHFFrequencyIncrement); + fm1ManualFrequency = new RadioFrequency(ps1.FM1Frequency, ps1.FM1FrequencyMinimum, ps1.FM1FrequencyMaximum, ps1.FM1FrequencyIncrement); + fm2ManualFrequency = new RadioFrequency(ps1.FM2Frequency, ps1.FM2FrequencyMinimum, ps1.FM2FrequencyMaximum, ps1.FM2FrequencyIncrement); + hfrxManualFrequency = new RadioFrequency(ps1.HFRXFrequency, ps1.HFRXFrequencyMinimum, ps1.HFRXFrequencyMaximum, ps1.HFRXFrequencyIncrement); } /// @@ -139,6 +145,241 @@ public void SetAH64RadioPresetData(EPreset preset, AH64RadioPresetData presetDat #endregion + #region Tune + /// + /// A Radio Tune Setting + /// + public enum ETuneSetting + { + /// + /// Don't tune the radio + /// + No_Change, + /// + /// Tune a radio to a preset + /// + Preset, + /// + /// Tune a radio to a manual frequency + /// + Manual + } + + /// + /// Gets a value indicating whether any radio is to be tuned. + /// + /// + /// true if any radio is to be tuned; otherwise, false. + /// + [JsonIgnore] + public bool ContainsTuningData + { + get + { + return VHFTuneSetting != ETuneSetting.No_Change + || UHFTuneSetting != ETuneSetting.No_Change + || FM1TuneSetting != ETuneSetting.No_Change + || FM2TuneSetting != ETuneSetting.No_Change + || HFTuneSetting != ETuneSetting.No_Change; + } + } + + /// + /// Gets a value indicating whether any one radio will be tuned manually. + /// + /// + /// true if any one radio will be tuned manually; otherwise, false. + /// + [JsonIgnore] + public bool ContainsManualTune + { + get + { + return VHFTuneSetting == ETuneSetting.Manual + || UHFTuneSetting == ETuneSetting.Manual + || FM1TuneSetting == ETuneSetting.Manual + || FM2TuneSetting == ETuneSetting.Manual + || HFTuneSetting == ETuneSetting.Manual; + } + } + + // VHF + + /// + /// Gets or sets the VHF tune setting. + /// + /// + /// The VHF tune setting. + /// + public ETuneSetting VHFTuneSetting { get; set; } = ETuneSetting.No_Change; + /// + /// Gets or sets the VHF tune preset. + /// + /// + /// The VHF tune preset. + /// + public EPreset VHFTunePreset { get; set; } = EPreset.Preset1; + private RadioFrequency vhfManualFrequency = null; + /// + /// Gets or sets the VHF manual frequency. + /// + /// + /// The VHF manual frequency. + /// + public decimal VHFManualFrequency + { + get + { + return vhfManualFrequency.Frequency; + } + set + { + vhfManualFrequency.Frequency = value; + } + } + + // UHF + + /// + /// Gets or sets the uhf tune setting. + /// + /// + /// The uhf tune setting. + /// + public ETuneSetting UHFTuneSetting { get; set; } = ETuneSetting.No_Change; + /// + /// Gets or sets the uhf tune preset. + /// + /// + /// The uhf tune preset. + /// + public EPreset UHFTunePreset { get; set; } = EPreset.Preset2; + private RadioFrequency uhfManualFrequency = null; + /// + /// Gets or sets the uhf manual frequency. + /// + /// + /// The uhf manual frequency. + /// + public decimal UHFManualFrequency + { + get + { + return uhfManualFrequency.Frequency; + } + set + { + uhfManualFrequency.Frequency = value; + } + } + + // FM 1 + + /// + /// Gets or sets the f m1 tune setting. + /// + /// + /// The f m1 tune setting. + /// + public ETuneSetting FM1TuneSetting { get; set; } = ETuneSetting.No_Change; + /// + /// Gets or sets the fm 1 tune preset. + /// + /// + /// The fm 1 tune preset. + /// + public EPreset FM1TunePreset { get; set; } = EPreset.Preset3; + private RadioFrequency fm1ManualFrequency = null; + /// + /// Gets or sets the f m1 manual frequency. + /// + /// + /// The f m1 manual frequency. + /// + public decimal FM1ManualFrequency + { + get + { + return fm1ManualFrequency.Frequency; + } + set + { + fm1ManualFrequency.Frequency = value; + } + } + + // FM 2 + + /// + /// Gets or sets the fm 2 tune setting. + /// + /// + /// The fm 2 tune setting. + /// + public ETuneSetting FM2TuneSetting { get; set; } = ETuneSetting.No_Change; + /// + /// Gets or sets the fm 2 tune preset. + /// + /// + /// The fm 2 tune preset. + /// + public EPreset FM2TunePreset { get; set; } = EPreset.Preset4; + private RadioFrequency fm2ManualFrequency = null; + /// + /// Gets or sets the fm 2 manual frequency. + /// + /// + /// The fm 2 manual frequency. + /// + public decimal FM2ManualFrequency + { + get + { + return fm2ManualFrequency.Frequency; + } + set + { + fm2ManualFrequency.Frequency = value; + } + } + + // HF + + /// + /// Gets or sets the hf tune setting. + /// + /// + /// The hf tune setting. + /// + public ETuneSetting HFTuneSetting { get; set; } = ETuneSetting.No_Change; + /// + /// Gets or sets the hf tune preset. + /// + /// + /// The hf tune preset. + /// + public EPreset HFTunePreset { get; set; } = EPreset.Preset5; + private RadioFrequency hfrxManualFrequency = null; + /// + /// Gets or sets the HF RX manual frequency. + /// + /// + /// The HF RX manual frequency. + /// + public decimal HFRXManualFrequency + { + get + { + return hfrxManualFrequency.Frequency; + } + set + { + hfrxManualFrequency.Frequency = value; + } + } + + #endregion + #region XPNDR /// /// Gets a value indicating whether [this DTC contains transponder data]. @@ -511,7 +752,7 @@ protected override List GenerateCommands(object items) protected override List GetActions(object item) { var commands = new List(); - // var commands = new DebugCommandList(); + // var commands = new Communication.DebugCommandList(); if (ContainsTransponderData) { @@ -739,6 +980,84 @@ protected override List GetActions(object item) commands.AddRange(kvp.Value.GenerateCommands(kvp.Key, IsPilot)); } + // Tune + if (ContainsTuningData) + { + commands.Add(new DCSCommand(DeviceRMFD, (int)AH64.EKeyCode.MFD_COM)); + // Presets first + int presetKey = -1; + if (VHFTuneSetting == ETuneSetting.Preset) + { + presetKey = AH64RadioPresetData.GetKeyForPreset(VHFTunePreset); + commands.Add(new DCSCommand(DeviceRMFD, presetKey)); + commands.Add(new DCSCommand(DeviceRMFD, (int)AH64.EKeyCode.MFD_T1)); + commands.Add(new DCSCommand(DeviceRMFD, (int)AH64.EKeyCode.MFD_B6)); + commands.Add(new DCSCommand(DeviceRMFD, presetKey)); + } + if (UHFTuneSetting == ETuneSetting.Preset) + { + presetKey = AH64RadioPresetData.GetKeyForPreset(UHFTunePreset); + commands.Add(new DCSCommand(DeviceRMFD, presetKey)); + commands.Add(new DCSCommand(DeviceRMFD, (int)AH64.EKeyCode.MFD_T2)); + commands.Add(new DCSCommand(DeviceRMFD, (int)AH64.EKeyCode.MFD_B6)); + commands.Add(new DCSCommand(DeviceRMFD, presetKey)); + } + if (FM1TuneSetting == ETuneSetting.Preset) + { + presetKey = AH64RadioPresetData.GetKeyForPreset(FM1TunePreset); + commands.Add(new DCSCommand(DeviceRMFD, presetKey)); + commands.Add(new DCSCommand(DeviceRMFD, (int)AH64.EKeyCode.MFD_T3)); + commands.Add(new DCSCommand(DeviceRMFD, (int)AH64.EKeyCode.MFD_B6)); + commands.Add(new DCSCommand(DeviceRMFD, presetKey)); + } + if (FM2TuneSetting == ETuneSetting.Preset) + { + presetKey = AH64RadioPresetData.GetKeyForPreset(FM2TunePreset); + commands.Add(new DCSCommand(DeviceRMFD, presetKey)); + commands.Add(new DCSCommand(DeviceRMFD, (int)AH64.EKeyCode.MFD_T4)); + commands.Add(new DCSCommand(DeviceRMFD, (int)AH64.EKeyCode.MFD_B6)); + commands.Add(new DCSCommand(DeviceRMFD, presetKey)); + } + if (HFTuneSetting == ETuneSetting.Preset) + { + presetKey = AH64RadioPresetData.GetKeyForPreset(HFTunePreset); + commands.Add(new DCSCommand(DeviceRMFD, presetKey)); + commands.Add(new DCSCommand(DeviceRMFD, (int)AH64.EKeyCode.MFD_T5)); + commands.Add(new DCSCommand(DeviceRMFD, (int)AH64.EKeyCode.MFD_B6)); + commands.Add(new DCSCommand(DeviceRMFD, presetKey)); + } + + if (ContainsManualTune) + { + commands.Add(new DCSCommand(DeviceRMFD, (int)AH64.EKeyCode.MFD_B2)); + if (VHFTuneSetting == ETuneSetting.Manual) + { + commands.Add(new DCSCommand(DeviceRMFD, (int)AH64.EKeyCode.MFD_L1)); + commands.AddRange(AH64.GetCommandsForKUText(VHFManualFrequency.ToString() + '\n', true, IsPilot)); + } + if (UHFTuneSetting == ETuneSetting.Manual) + { + commands.Add(new DCSCommand(DeviceRMFD, (int)AH64.EKeyCode.MFD_L2)); + commands.AddRange(AH64.GetCommandsForKUText(UHFManualFrequency.ToString() + '\n', true, IsPilot)); + } + if (FM1TuneSetting == ETuneSetting.Manual) + { + commands.Add(new DCSCommand(DeviceRMFD, (int)AH64.EKeyCode.MFD_L3)); + commands.AddRange(AH64.GetCommandsForKUText(FM1ManualFrequency.ToString() + '\n', true, IsPilot)); + } + if (FM2TuneSetting == ETuneSetting.Manual) + { + commands.Add(new DCSCommand(DeviceRMFD, (int)AH64.EKeyCode.MFD_L4)); + commands.AddRange(AH64.GetCommandsForKUText(FM2ManualFrequency.ToString() + '\n', true, IsPilot)); + } + if (HFTuneSetting == ETuneSetting.Manual) + { + commands.Add(new DCSCommand(DeviceRMFD, (int)AH64.EKeyCode.MFD_R1)); + commands.AddRange(AH64.GetCommandsForKUText(HFRXManualFrequency.ToString() + '\n', true, IsPilot)); + } + } + } + // WPN if (ContainsWeaponData) { diff --git a/CoordinateConverter/DCS/Aircraft/AH64/AH64RadioPresetData.cs b/CoordinateConverter/DCS/Aircraft/AH64/AH64RadioPresetData.cs index 031ebe7..bd412a7 100644 --- a/CoordinateConverter/DCS/Aircraft/AH64/AH64RadioPresetData.cs +++ b/CoordinateConverter/DCS/Aircraft/AH64/AH64RadioPresetData.cs @@ -58,6 +58,40 @@ public bool ContainsData } } + /// + /// Gets the mfd key to press for the given preset. + /// + /// The preset. + /// the mfd key to press for the given preset + /// Logic Error + public static int GetKeyForPreset(AH64DTCData.EPreset preset) + { + switch (preset) + { + case AH64DTCData.EPreset.Preset1: + return (int)AH64.EKeyCode.MFD_L1; + case AH64DTCData.EPreset.Preset2: + return (int)AH64.EKeyCode.MFD_L2; + case AH64DTCData.EPreset.Preset3: + return (int)AH64.EKeyCode.MFD_L3; + case AH64DTCData.EPreset.Preset4: + return (int)AH64.EKeyCode.MFD_L4; + case AH64DTCData.EPreset.Preset5: + return (int)AH64.EKeyCode.MFD_L5; + case AH64DTCData.EPreset.Preset6: + return (int)AH64.EKeyCode.MFD_R1; + case AH64DTCData.EPreset.Preset7: + return (int)AH64.EKeyCode.MFD_R2; + case AH64DTCData.EPreset.Preset8: + return (int)AH64.EKeyCode.MFD_R3; + case AH64DTCData.EPreset.Preset9: + return (int)AH64.EKeyCode.MFD_R4; + case AH64DTCData.EPreset.Preset10: + return (int)AH64.EKeyCode.MFD_R5; + } + throw new Exception("Logic Error"); + } + /// /// Generates the commands to be sent to DCS for this preset to be set correctly. /// @@ -78,39 +112,7 @@ public List GenerateCommands(AH64DTCData.EPreset preset, bool IsPilo commands.Add(new DCSCommand(mfd, (int)AH64.EKeyCode.MFD_COM)); // Select correct preset - switch (preset) - { - case AH64DTCData.EPreset.Preset1: - commands.Add(new DCSCommand(mfd, (int)AH64.EKeyCode.MFD_L1)); - break; - case AH64DTCData.EPreset.Preset2: - commands.Add(new DCSCommand(mfd, (int)AH64.EKeyCode.MFD_L2)); - break; - case AH64DTCData.EPreset.Preset3: - commands.Add(new DCSCommand(mfd, (int)AH64.EKeyCode.MFD_L3)); - break; - case AH64DTCData.EPreset.Preset4: - commands.Add(new DCSCommand(mfd, (int)AH64.EKeyCode.MFD_L4)); - break; - case AH64DTCData.EPreset.Preset5: - commands.Add(new DCSCommand(mfd, (int)AH64.EKeyCode.MFD_L5)); - break; - case AH64DTCData.EPreset.Preset6: - commands.Add(new DCSCommand(mfd, (int)AH64.EKeyCode.MFD_R1)); - break; - case AH64DTCData.EPreset.Preset7: - commands.Add(new DCSCommand(mfd, (int)AH64.EKeyCode.MFD_R2)); - break; - case AH64DTCData.EPreset.Preset8: - commands.Add(new DCSCommand(mfd, (int)AH64.EKeyCode.MFD_R3)); - break; - case AH64DTCData.EPreset.Preset9: - commands.Add(new DCSCommand(mfd, (int)AH64.EKeyCode.MFD_R4)); - break; - case AH64DTCData.EPreset.Preset10: - commands.Add(new DCSCommand(mfd, (int)AH64.EKeyCode.MFD_R5)); - break; - } + commands.Add(new DCSCommand(mfd, GetKeyForPreset(preset))); // Preset Edit commands.Add(new DCSCommand(mfd, (int)AH64.EKeyCode.MFD_B6)); diff --git a/CoordinateConverter/DCS/Aircraft/RadioFrequency.cs b/CoordinateConverter/DCS/Aircraft/RadioFrequency.cs index 804e07b..915b29c 100644 --- a/CoordinateConverter/DCS/Aircraft/RadioFrequency.cs +++ b/CoordinateConverter/DCS/Aircraft/RadioFrequency.cs @@ -17,13 +17,13 @@ public class RadioFrequency /// The frequency. /// The minimum. /// The maximum. - /// Size of the steps between valid frequencies. - public RadioFrequency(decimal frequency, decimal minimum, decimal maximum, decimal stepSize) + /// Size of the steps between valid frequencies. + public RadioFrequency(decimal frequency, decimal minimum, decimal maximum, decimal increment) { this.minimum = minimum; this.maximum = maximum; if (minimum > maximum) { throw new ArgumentException("Minimum (" + minimum.ToString() + ") > Maximum (" + maximum.ToString() + ")"); } - this.stepSize = stepSize; + this.increment = increment; // Set frequency through the accessor after the other values have been set Frequency = frequency; } @@ -49,14 +49,14 @@ public decimal Frequency { throw new ArgumentOutOfRangeException("value was too large " + value.ToString() + " > " + maximum.ToString() + "!"); } - decimal divisionResult = decimal.Divide(frequency, stepSize); + decimal divisionResult = decimal.Divide(frequency, increment); if (divisionResult != decimal.Truncate(divisionResult)) { throw new ArgumentException( "value must be divisible by " + - stepSize.ToString() + + increment.ToString() + " exactly, but was " + - value.ToString() + " / " + stepSize.ToString() + " = " + divisionResult.ToString() + value.ToString() + " / " + increment.ToString() + " = " + divisionResult.ToString() ); } frequency = value; @@ -78,13 +78,13 @@ public decimal Frequency /// The maximum. /// public decimal Maximum { get { return maximum; } } - private decimal stepSize; + private decimal increment; /// /// Gets the size of the steps between valid frequencies. /// /// /// The size of the step. /// - public decimal Increment { get { return stepSize; } } + public decimal Increment { get { return increment; } } } } diff --git a/CoordinateConverter/DCS/Tools/FormAH64DTC.Designer.cs b/CoordinateConverter/DCS/Tools/FormAH64DTC.Designer.cs index c21464c..c6eff40 100644 --- a/CoordinateConverter/DCS/Tools/FormAH64DTC.Designer.cs +++ b/CoordinateConverter/DCS/Tools/FormAH64DTC.Designer.cs @@ -110,6 +110,37 @@ private void InitializeComponent() this.label4 = new System.Windows.Forms.Label(); this.label1 = new System.Windows.Forms.Label(); this.ddlRadioPresetSelection = new System.Windows.Forms.ComboBox(); + this.tabTune = new System.Windows.Forms.TabPage(); + this.groupBox10 = new System.Windows.Forms.GroupBox(); + this.nudTuneHFRXManualFreq = new System.Windows.Forms.NumericUpDown(); + this.ddlTuneHFPreset = new System.Windows.Forms.ComboBox(); + this.rbTuneHFMan = new System.Windows.Forms.RadioButton(); + this.rbTuneHFPreset = new System.Windows.Forms.RadioButton(); + this.rbTuneHFNoChange = new System.Windows.Forms.RadioButton(); + this.groupBox9 = new System.Windows.Forms.GroupBox(); + this.nudTuneFM2ManualFreq = new System.Windows.Forms.NumericUpDown(); + this.ddlTuneFM2Preset = new System.Windows.Forms.ComboBox(); + this.rbTuneFM2Man = new System.Windows.Forms.RadioButton(); + this.rbTuneFM2Preset = new System.Windows.Forms.RadioButton(); + this.rbTuneFM2NoChange = new System.Windows.Forms.RadioButton(); + this.groupBox8 = new System.Windows.Forms.GroupBox(); + this.nudTuneFM1ManualFreq = new System.Windows.Forms.NumericUpDown(); + this.ddlTuneFM1Preset = new System.Windows.Forms.ComboBox(); + this.rbTuneFM1Man = new System.Windows.Forms.RadioButton(); + this.rbTuneFM1Preset = new System.Windows.Forms.RadioButton(); + this.rbTuneFM1NoChange = new System.Windows.Forms.RadioButton(); + this.groupBox7 = new System.Windows.Forms.GroupBox(); + this.nudTuneUHFManualFreq = new System.Windows.Forms.NumericUpDown(); + this.ddlTuneUHFPreset = new System.Windows.Forms.ComboBox(); + this.rbTuneUHFMan = new System.Windows.Forms.RadioButton(); + this.rbTuneUHFPreset = new System.Windows.Forms.RadioButton(); + this.rbTuneUHFNoChange = new System.Windows.Forms.RadioButton(); + this.groupBox6 = new System.Windows.Forms.GroupBox(); + this.ddlTuneVHFPreset = new System.Windows.Forms.ComboBox(); + this.nudTuneVHFManualFreq = new System.Windows.Forms.NumericUpDown(); + this.rbTuneVHFMan = new System.Windows.Forms.RadioButton(); + this.rbTuneVHFPreset = new System.Windows.Forms.RadioButton(); + this.rbTuneVHFNoChange = new System.Windows.Forms.RadioButton(); this.tabDL = new System.Windows.Forms.TabPage(); this.tbOwnshipSubscriberID = new System.Windows.Forms.TextBox(); this.label43 = new System.Windows.Forms.Label(); @@ -145,7 +176,7 @@ private void InitializeComponent() this.ddlASEAutopage = new System.Windows.Forms.ComboBox(); this.label8 = new System.Windows.Forms.Label(); this.tabADF = new System.Windows.Forms.TabPage(); - this.tabPage2 = new System.Windows.Forms.TabPage(); + this.tabWPN = new System.Windows.Forms.TabPage(); this.cbManRange = new System.Windows.Forms.CheckBox(); this.nudManRange = new System.Windows.Forms.NumericUpDown(); this.groupBox5 = new System.Windows.Forms.GroupBox(); @@ -240,11 +271,22 @@ private void InitializeComponent() this.splitContainer3.Panel1.SuspendLayout(); this.splitContainer3.Panel2.SuspendLayout(); this.splitContainer3.SuspendLayout(); + this.tabTune.SuspendLayout(); + this.groupBox10.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.nudTuneHFRXManualFreq)).BeginInit(); + this.groupBox9.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.nudTuneFM2ManualFreq)).BeginInit(); + this.groupBox8.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.nudTuneFM1ManualFreq)).BeginInit(); + this.groupBox7.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.nudTuneUHFManualFreq)).BeginInit(); + this.groupBox6.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.nudTuneVHFManualFreq)).BeginInit(); this.tabDL.SuspendLayout(); this.tabIFF.SuspendLayout(); this.tabASE.SuspendLayout(); this.groupBox1.SuspendLayout(); - this.tabPage2.SuspendLayout(); + this.tabWPN.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.nudManRange)).BeginInit(); this.groupBox5.SuspendLayout(); this.groupBox4.SuspendLayout(); @@ -259,11 +301,12 @@ private void InitializeComponent() | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); this.tabControl1.Controls.Add(this.tabRadio); + this.tabControl1.Controls.Add(this.tabTune); this.tabControl1.Controls.Add(this.tabDL); this.tabControl1.Controls.Add(this.tabIFF); this.tabControl1.Controls.Add(this.tabASE); this.tabControl1.Controls.Add(this.tabADF); - this.tabControl1.Controls.Add(this.tabPage2); + this.tabControl1.Controls.Add(this.tabWPN); this.tabControl1.Location = new System.Drawing.Point(12, 42); this.tabControl1.Name = "tabControl1"; this.tabControl1.SelectedIndex = 0; @@ -1312,6 +1355,472 @@ private void InitializeComponent() this.ddlRadioPresetSelection.TabIndex = 3; this.ddlRadioPresetSelection.SelectedIndexChanged += new System.EventHandler(this.ddlRadioPresetSelection_SelectedIndexChanged); // + // tabTune + // + this.tabTune.Controls.Add(this.groupBox10); + this.tabTune.Controls.Add(this.groupBox9); + this.tabTune.Controls.Add(this.groupBox8); + this.tabTune.Controls.Add(this.groupBox7); + this.tabTune.Controls.Add(this.groupBox6); + this.tabTune.Location = new System.Drawing.Point(4, 22); + this.tabTune.Name = "tabTune"; + this.tabTune.Padding = new System.Windows.Forms.Padding(3); + this.tabTune.Size = new System.Drawing.Size(681, 367); + this.tabTune.TabIndex = 6; + this.tabTune.Text = "Tune"; + this.tabTune.UseVisualStyleBackColor = true; + // + // groupBox10 + // + this.groupBox10.Controls.Add(this.nudTuneHFRXManualFreq); + this.groupBox10.Controls.Add(this.ddlTuneHFPreset); + this.groupBox10.Controls.Add(this.rbTuneHFMan); + this.groupBox10.Controls.Add(this.rbTuneHFPreset); + this.groupBox10.Controls.Add(this.rbTuneHFNoChange); + this.groupBox10.Location = new System.Drawing.Point(6, 230); + this.groupBox10.Name = "groupBox10"; + this.groupBox10.Size = new System.Drawing.Size(672, 50); + this.groupBox10.TabIndex = 15; + this.groupBox10.TabStop = false; + this.groupBox10.Text = "HF"; + // + // nudTuneHFRXManualFreq + // + this.nudTuneHFRXManualFreq.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.nudTuneHFRXManualFreq.DecimalPlaces = 4; + this.nudTuneHFRXManualFreq.Enabled = false; + this.nudTuneHFRXManualFreq.Location = new System.Drawing.Point(539, 18); + this.nudTuneHFRXManualFreq.Maximum = new decimal(new int[] { + 2, + 0, + 0, + 0}); + this.nudTuneHFRXManualFreq.Minimum = new decimal(new int[] { + 2, + 0, + 0, + 0}); + this.nudTuneHFRXManualFreq.Name = "nudTuneHFRXManualFreq"; + this.nudTuneHFRXManualFreq.Size = new System.Drawing.Size(121, 20); + this.nudTuneHFRXManualFreq.TabIndex = 4; + this.nudTuneHFRXManualFreq.Value = new decimal(new int[] { + 2, + 0, + 0, + 0}); + this.nudTuneHFRXManualFreq.ValueChanged += new System.EventHandler(this.nudTuneHFRXManualFreq_ValueChanged); + // + // ddlTuneHFPreset + // + this.ddlTuneHFPreset.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.ddlTuneHFPreset.Enabled = false; + this.ddlTuneHFPreset.FormattingEnabled = true; + this.ddlTuneHFPreset.Location = new System.Drawing.Point(151, 18); + this.ddlTuneHFPreset.Name = "ddlTuneHFPreset"; + this.ddlTuneHFPreset.Size = new System.Drawing.Size(330, 21); + this.ddlTuneHFPreset.TabIndex = 3; + this.ddlTuneHFPreset.SelectedIndexChanged += new System.EventHandler(this.ddlTuneHFPreset_SelectedIndexChanged); + // + // rbTuneHFMan + // + this.rbTuneHFMan.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.rbTuneHFMan.AutoSize = true; + this.rbTuneHFMan.Location = new System.Drawing.Point(487, 19); + this.rbTuneHFMan.Name = "rbTuneHFMan"; + this.rbTuneHFMan.Size = new System.Drawing.Size(46, 17); + this.rbTuneHFMan.TabIndex = 2; + this.rbTuneHFMan.TabStop = true; + this.rbTuneHFMan.Text = "Man"; + this.rbTuneHFMan.UseVisualStyleBackColor = true; + this.rbTuneHFMan.CheckedChanged += new System.EventHandler(this.rbTuneHFMan_CheckedChanged); + // + // rbTuneHFPreset + // + this.rbTuneHFPreset.AutoSize = true; + this.rbTuneHFPreset.Enabled = false; + this.rbTuneHFPreset.Location = new System.Drawing.Point(90, 19); + this.rbTuneHFPreset.Name = "rbTuneHFPreset"; + this.rbTuneHFPreset.Size = new System.Drawing.Size(55, 17); + this.rbTuneHFPreset.TabIndex = 1; + this.rbTuneHFPreset.TabStop = true; + this.rbTuneHFPreset.Text = "Preset"; + this.rbTuneHFPreset.UseVisualStyleBackColor = true; + this.rbTuneHFPreset.CheckedChanged += new System.EventHandler(this.rbTuneHFPreset_CheckedChanged); + // + // rbTuneHFNoChange + // + this.rbTuneHFNoChange.AutoSize = true; + this.rbTuneHFNoChange.Checked = true; + this.rbTuneHFNoChange.Location = new System.Drawing.Point(6, 19); + this.rbTuneHFNoChange.Name = "rbTuneHFNoChange"; + this.rbTuneHFNoChange.Size = new System.Drawing.Size(78, 17); + this.rbTuneHFNoChange.TabIndex = 0; + this.rbTuneHFNoChange.TabStop = true; + this.rbTuneHFNoChange.Text = "Don\'t Tune"; + this.rbTuneHFNoChange.UseVisualStyleBackColor = true; + this.rbTuneHFNoChange.CheckedChanged += new System.EventHandler(this.rbTuneHFNoChange_CheckedChanged); + // + // groupBox9 + // + this.groupBox9.Controls.Add(this.nudTuneFM2ManualFreq); + this.groupBox9.Controls.Add(this.ddlTuneFM2Preset); + this.groupBox9.Controls.Add(this.rbTuneFM2Man); + this.groupBox9.Controls.Add(this.rbTuneFM2Preset); + this.groupBox9.Controls.Add(this.rbTuneFM2NoChange); + this.groupBox9.Location = new System.Drawing.Point(6, 174); + this.groupBox9.Name = "groupBox9"; + this.groupBox9.Size = new System.Drawing.Size(672, 50); + this.groupBox9.TabIndex = 14; + this.groupBox9.TabStop = false; + this.groupBox9.Text = "FM 2"; + // + // nudTuneFM2ManualFreq + // + this.nudTuneFM2ManualFreq.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.nudTuneFM2ManualFreq.DecimalPlaces = 3; + this.nudTuneFM2ManualFreq.Enabled = false; + this.nudTuneFM2ManualFreq.Location = new System.Drawing.Point(539, 18); + this.nudTuneFM2ManualFreq.Maximum = new decimal(new int[] { + 30, + 0, + 0, + 0}); + this.nudTuneFM2ManualFreq.Minimum = new decimal(new int[] { + 30, + 0, + 0, + 0}); + this.nudTuneFM2ManualFreq.Name = "nudTuneFM2ManualFreq"; + this.nudTuneFM2ManualFreq.Size = new System.Drawing.Size(121, 20); + this.nudTuneFM2ManualFreq.TabIndex = 4; + this.nudTuneFM2ManualFreq.Value = new decimal(new int[] { + 30, + 0, + 0, + 0}); + this.nudTuneFM2ManualFreq.ValueChanged += new System.EventHandler(this.nudTuneFM2ManualFreq_ValueChanged); + // + // ddlTuneFM2Preset + // + this.ddlTuneFM2Preset.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.ddlTuneFM2Preset.Enabled = false; + this.ddlTuneFM2Preset.FormattingEnabled = true; + this.ddlTuneFM2Preset.Location = new System.Drawing.Point(151, 18); + this.ddlTuneFM2Preset.Name = "ddlTuneFM2Preset"; + this.ddlTuneFM2Preset.Size = new System.Drawing.Size(330, 21); + this.ddlTuneFM2Preset.TabIndex = 3; + this.ddlTuneFM2Preset.SelectedIndexChanged += new System.EventHandler(this.ddlTuneFM2Preset_SelectedIndexChanged); + // + // rbTuneFM2Man + // + this.rbTuneFM2Man.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.rbTuneFM2Man.AutoSize = true; + this.rbTuneFM2Man.Location = new System.Drawing.Point(487, 19); + this.rbTuneFM2Man.Name = "rbTuneFM2Man"; + this.rbTuneFM2Man.Size = new System.Drawing.Size(46, 17); + this.rbTuneFM2Man.TabIndex = 2; + this.rbTuneFM2Man.TabStop = true; + this.rbTuneFM2Man.Text = "Man"; + this.rbTuneFM2Man.UseVisualStyleBackColor = true; + this.rbTuneFM2Man.CheckedChanged += new System.EventHandler(this.rbTuneFM2Man_CheckedChanged); + // + // rbTuneFM2Preset + // + this.rbTuneFM2Preset.AutoSize = true; + this.rbTuneFM2Preset.Location = new System.Drawing.Point(90, 19); + this.rbTuneFM2Preset.Name = "rbTuneFM2Preset"; + this.rbTuneFM2Preset.Size = new System.Drawing.Size(55, 17); + this.rbTuneFM2Preset.TabIndex = 1; + this.rbTuneFM2Preset.TabStop = true; + this.rbTuneFM2Preset.Text = "Preset"; + this.rbTuneFM2Preset.UseVisualStyleBackColor = true; + this.rbTuneFM2Preset.CheckedChanged += new System.EventHandler(this.rbTuneFM2Preset_CheckedChanged); + // + // rbTuneFM2NoChange + // + this.rbTuneFM2NoChange.AutoSize = true; + this.rbTuneFM2NoChange.Checked = true; + this.rbTuneFM2NoChange.Location = new System.Drawing.Point(6, 19); + this.rbTuneFM2NoChange.Name = "rbTuneFM2NoChange"; + this.rbTuneFM2NoChange.Size = new System.Drawing.Size(78, 17); + this.rbTuneFM2NoChange.TabIndex = 0; + this.rbTuneFM2NoChange.TabStop = true; + this.rbTuneFM2NoChange.Text = "Don\'t Tune"; + this.rbTuneFM2NoChange.UseVisualStyleBackColor = true; + this.rbTuneFM2NoChange.CheckedChanged += new System.EventHandler(this.rbTuneFM2NoChange_CheckedChanged); + // + // groupBox8 + // + this.groupBox8.Controls.Add(this.nudTuneFM1ManualFreq); + this.groupBox8.Controls.Add(this.ddlTuneFM1Preset); + this.groupBox8.Controls.Add(this.rbTuneFM1Man); + this.groupBox8.Controls.Add(this.rbTuneFM1Preset); + this.groupBox8.Controls.Add(this.rbTuneFM1NoChange); + this.groupBox8.Location = new System.Drawing.Point(6, 118); + this.groupBox8.Name = "groupBox8"; + this.groupBox8.Size = new System.Drawing.Size(672, 50); + this.groupBox8.TabIndex = 13; + this.groupBox8.TabStop = false; + this.groupBox8.Text = "FM 1"; + // + // nudTuneFM1ManualFreq + // + this.nudTuneFM1ManualFreq.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.nudTuneFM1ManualFreq.DecimalPlaces = 3; + this.nudTuneFM1ManualFreq.Enabled = false; + this.nudTuneFM1ManualFreq.Location = new System.Drawing.Point(539, 18); + this.nudTuneFM1ManualFreq.Maximum = new decimal(new int[] { + 30, + 0, + 0, + 0}); + this.nudTuneFM1ManualFreq.Minimum = new decimal(new int[] { + 30, + 0, + 0, + 0}); + this.nudTuneFM1ManualFreq.Name = "nudTuneFM1ManualFreq"; + this.nudTuneFM1ManualFreq.Size = new System.Drawing.Size(121, 20); + this.nudTuneFM1ManualFreq.TabIndex = 4; + this.nudTuneFM1ManualFreq.Value = new decimal(new int[] { + 30, + 0, + 0, + 0}); + this.nudTuneFM1ManualFreq.ValueChanged += new System.EventHandler(this.nudTuneFM1ManualFreq_ValueChanged); + // + // ddlTuneFM1Preset + // + this.ddlTuneFM1Preset.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.ddlTuneFM1Preset.Enabled = false; + this.ddlTuneFM1Preset.FormattingEnabled = true; + this.ddlTuneFM1Preset.Location = new System.Drawing.Point(151, 18); + this.ddlTuneFM1Preset.Name = "ddlTuneFM1Preset"; + this.ddlTuneFM1Preset.Size = new System.Drawing.Size(330, 21); + this.ddlTuneFM1Preset.TabIndex = 3; + this.ddlTuneFM1Preset.SelectedIndexChanged += new System.EventHandler(this.ddlTuneFM1Preset_SelectedIndexChanged); + // + // rbTuneFM1Man + // + this.rbTuneFM1Man.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.rbTuneFM1Man.AutoSize = true; + this.rbTuneFM1Man.Location = new System.Drawing.Point(487, 19); + this.rbTuneFM1Man.Name = "rbTuneFM1Man"; + this.rbTuneFM1Man.Size = new System.Drawing.Size(46, 17); + this.rbTuneFM1Man.TabIndex = 2; + this.rbTuneFM1Man.TabStop = true; + this.rbTuneFM1Man.Text = "Man"; + this.rbTuneFM1Man.UseVisualStyleBackColor = true; + this.rbTuneFM1Man.CheckedChanged += new System.EventHandler(this.rbTuneFM1Man_CheckedChanged); + // + // rbTuneFM1Preset + // + this.rbTuneFM1Preset.AutoSize = true; + this.rbTuneFM1Preset.Location = new System.Drawing.Point(90, 19); + this.rbTuneFM1Preset.Name = "rbTuneFM1Preset"; + this.rbTuneFM1Preset.Size = new System.Drawing.Size(55, 17); + this.rbTuneFM1Preset.TabIndex = 1; + this.rbTuneFM1Preset.TabStop = true; + this.rbTuneFM1Preset.Text = "Preset"; + this.rbTuneFM1Preset.UseVisualStyleBackColor = true; + this.rbTuneFM1Preset.CheckedChanged += new System.EventHandler(this.rbTuneFM1Preset_CheckedChanged); + // + // rbTuneFM1NoChange + // + this.rbTuneFM1NoChange.AutoSize = true; + this.rbTuneFM1NoChange.Checked = true; + this.rbTuneFM1NoChange.Location = new System.Drawing.Point(6, 19); + this.rbTuneFM1NoChange.Name = "rbTuneFM1NoChange"; + this.rbTuneFM1NoChange.Size = new System.Drawing.Size(78, 17); + this.rbTuneFM1NoChange.TabIndex = 0; + this.rbTuneFM1NoChange.TabStop = true; + this.rbTuneFM1NoChange.Text = "Don\'t Tune"; + this.rbTuneFM1NoChange.UseVisualStyleBackColor = true; + this.rbTuneFM1NoChange.CheckedChanged += new System.EventHandler(this.rbTuneFM1NoChange_CheckedChanged); + // + // groupBox7 + // + this.groupBox7.Controls.Add(this.nudTuneUHFManualFreq); + this.groupBox7.Controls.Add(this.ddlTuneUHFPreset); + this.groupBox7.Controls.Add(this.rbTuneUHFMan); + this.groupBox7.Controls.Add(this.rbTuneUHFPreset); + this.groupBox7.Controls.Add(this.rbTuneUHFNoChange); + this.groupBox7.Location = new System.Drawing.Point(6, 62); + this.groupBox7.Name = "groupBox7"; + this.groupBox7.Size = new System.Drawing.Size(672, 50); + this.groupBox7.TabIndex = 12; + this.groupBox7.TabStop = false; + this.groupBox7.Text = "UHF"; + // + // nudTuneUHFManualFreq + // + this.nudTuneUHFManualFreq.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.nudTuneUHFManualFreq.DecimalPlaces = 3; + this.nudTuneUHFManualFreq.Enabled = false; + this.nudTuneUHFManualFreq.Location = new System.Drawing.Point(539, 18); + this.nudTuneUHFManualFreq.Maximum = new decimal(new int[] { + 225, + 0, + 0, + 0}); + this.nudTuneUHFManualFreq.Minimum = new decimal(new int[] { + 225, + 0, + 0, + 0}); + this.nudTuneUHFManualFreq.Name = "nudTuneUHFManualFreq"; + this.nudTuneUHFManualFreq.Size = new System.Drawing.Size(121, 20); + this.nudTuneUHFManualFreq.TabIndex = 4; + this.nudTuneUHFManualFreq.Value = new decimal(new int[] { + 225, + 0, + 0, + 0}); + this.nudTuneUHFManualFreq.ValueChanged += new System.EventHandler(this.nudTuneUHFManualFreq_ValueChanged); + // + // ddlTuneUHFPreset + // + this.ddlTuneUHFPreset.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.ddlTuneUHFPreset.Enabled = false; + this.ddlTuneUHFPreset.FormattingEnabled = true; + this.ddlTuneUHFPreset.Location = new System.Drawing.Point(151, 18); + this.ddlTuneUHFPreset.Name = "ddlTuneUHFPreset"; + this.ddlTuneUHFPreset.Size = new System.Drawing.Size(330, 21); + this.ddlTuneUHFPreset.TabIndex = 3; + this.ddlTuneUHFPreset.SelectedIndexChanged += new System.EventHandler(this.ddlTuneUHFPreset_SelectedIndexChanged); + // + // rbTuneUHFMan + // + this.rbTuneUHFMan.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.rbTuneUHFMan.AutoSize = true; + this.rbTuneUHFMan.Location = new System.Drawing.Point(487, 19); + this.rbTuneUHFMan.Name = "rbTuneUHFMan"; + this.rbTuneUHFMan.Size = new System.Drawing.Size(46, 17); + this.rbTuneUHFMan.TabIndex = 2; + this.rbTuneUHFMan.TabStop = true; + this.rbTuneUHFMan.Text = "Man"; + this.rbTuneUHFMan.UseVisualStyleBackColor = true; + this.rbTuneUHFMan.CheckedChanged += new System.EventHandler(this.rbTuneUHFMan_CheckedChanged); + // + // rbTuneUHFPreset + // + this.rbTuneUHFPreset.AutoSize = true; + this.rbTuneUHFPreset.Location = new System.Drawing.Point(90, 19); + this.rbTuneUHFPreset.Name = "rbTuneUHFPreset"; + this.rbTuneUHFPreset.Size = new System.Drawing.Size(55, 17); + this.rbTuneUHFPreset.TabIndex = 1; + this.rbTuneUHFPreset.TabStop = true; + this.rbTuneUHFPreset.Text = "Preset"; + this.rbTuneUHFPreset.UseVisualStyleBackColor = true; + this.rbTuneUHFPreset.CheckedChanged += new System.EventHandler(this.rbTuneUHFPreset_CheckedChanged); + // + // rbTuneUHFNoChange + // + this.rbTuneUHFNoChange.AutoSize = true; + this.rbTuneUHFNoChange.Checked = true; + this.rbTuneUHFNoChange.Location = new System.Drawing.Point(6, 19); + this.rbTuneUHFNoChange.Name = "rbTuneUHFNoChange"; + this.rbTuneUHFNoChange.Size = new System.Drawing.Size(78, 17); + this.rbTuneUHFNoChange.TabIndex = 0; + this.rbTuneUHFNoChange.TabStop = true; + this.rbTuneUHFNoChange.Text = "Don\'t Tune"; + this.rbTuneUHFNoChange.UseVisualStyleBackColor = true; + this.rbTuneUHFNoChange.CheckedChanged += new System.EventHandler(this.rbTuneUHFNoChange_CheckedChanged); + // + // groupBox6 + // + this.groupBox6.Controls.Add(this.ddlTuneVHFPreset); + this.groupBox6.Controls.Add(this.nudTuneVHFManualFreq); + this.groupBox6.Controls.Add(this.rbTuneVHFMan); + this.groupBox6.Controls.Add(this.rbTuneVHFPreset); + this.groupBox6.Controls.Add(this.rbTuneVHFNoChange); + this.groupBox6.Location = new System.Drawing.Point(6, 6); + this.groupBox6.Name = "groupBox6"; + this.groupBox6.Size = new System.Drawing.Size(672, 50); + this.groupBox6.TabIndex = 0; + this.groupBox6.TabStop = false; + this.groupBox6.Text = "VHF"; + // + // ddlTuneVHFPreset + // + this.ddlTuneVHFPreset.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.ddlTuneVHFPreset.Enabled = false; + this.ddlTuneVHFPreset.FormattingEnabled = true; + this.ddlTuneVHFPreset.Location = new System.Drawing.Point(151, 18); + this.ddlTuneVHFPreset.Name = "ddlTuneVHFPreset"; + this.ddlTuneVHFPreset.Size = new System.Drawing.Size(330, 21); + this.ddlTuneVHFPreset.TabIndex = 3; + this.ddlTuneVHFPreset.SelectedIndexChanged += new System.EventHandler(this.ddlTuneVHFPreset_SelectedIndexChanged); + // + // nudTuneVHFManualFreq + // + this.nudTuneVHFManualFreq.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.nudTuneVHFManualFreq.DecimalPlaces = 3; + this.nudTuneVHFManualFreq.Enabled = false; + this.nudTuneVHFManualFreq.Location = new System.Drawing.Point(539, 18); + this.nudTuneVHFManualFreq.Maximum = new decimal(new int[] { + 1275, + 0, + 0, + 65536}); + this.nudTuneVHFManualFreq.Minimum = new decimal(new int[] { + 1275, + 0, + 0, + 65536}); + this.nudTuneVHFManualFreq.Name = "nudTuneVHFManualFreq"; + this.nudTuneVHFManualFreq.Size = new System.Drawing.Size(121, 20); + this.nudTuneVHFManualFreq.TabIndex = 4; + this.nudTuneVHFManualFreq.Value = new decimal(new int[] { + 1275, + 0, + 0, + 65536}); + this.nudTuneVHFManualFreq.ValueChanged += new System.EventHandler(this.nudTuneVHFManualFreq_ValueChanged); + // + // rbTuneVHFMan + // + this.rbTuneVHFMan.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.rbTuneVHFMan.AutoSize = true; + this.rbTuneVHFMan.Location = new System.Drawing.Point(487, 19); + this.rbTuneVHFMan.Name = "rbTuneVHFMan"; + this.rbTuneVHFMan.Size = new System.Drawing.Size(46, 17); + this.rbTuneVHFMan.TabIndex = 2; + this.rbTuneVHFMan.TabStop = true; + this.rbTuneVHFMan.Text = "Man"; + this.rbTuneVHFMan.UseVisualStyleBackColor = true; + this.rbTuneVHFMan.CheckedChanged += new System.EventHandler(this.rbTuneVHFMan_CheckedChanged); + // + // rbTuneVHFPreset + // + this.rbTuneVHFPreset.AutoSize = true; + this.rbTuneVHFPreset.Location = new System.Drawing.Point(90, 19); + this.rbTuneVHFPreset.Name = "rbTuneVHFPreset"; + this.rbTuneVHFPreset.Size = new System.Drawing.Size(55, 17); + this.rbTuneVHFPreset.TabIndex = 1; + this.rbTuneVHFPreset.TabStop = true; + this.rbTuneVHFPreset.Text = "Preset"; + this.rbTuneVHFPreset.UseVisualStyleBackColor = true; + this.rbTuneVHFPreset.CheckedChanged += new System.EventHandler(this.rbTuneVHFPreset_CheckedChanged); + // + // rbTuneVHFNoChange + // + this.rbTuneVHFNoChange.AutoSize = true; + this.rbTuneVHFNoChange.Checked = true; + this.rbTuneVHFNoChange.Location = new System.Drawing.Point(6, 19); + this.rbTuneVHFNoChange.Name = "rbTuneVHFNoChange"; + this.rbTuneVHFNoChange.Size = new System.Drawing.Size(78, 17); + this.rbTuneVHFNoChange.TabIndex = 0; + this.rbTuneVHFNoChange.TabStop = true; + this.rbTuneVHFNoChange.Text = "Don\'t Tune"; + this.rbTuneVHFNoChange.UseVisualStyleBackColor = true; + this.rbTuneVHFNoChange.CheckedChanged += new System.EventHandler(this.rbTuneVHFNoChange_CheckedChanged); + // // tabDL // this.tabDL.Controls.Add(this.tbOwnshipSubscriberID); @@ -1669,21 +2178,21 @@ private void InitializeComponent() this.tabADF.Text = "ADF"; this.tabADF.UseVisualStyleBackColor = true; // - // tabPage2 - // - this.tabPage2.Controls.Add(this.cbManRange); - this.tabPage2.Controls.Add(this.nudManRange); - this.tabPage2.Controls.Add(this.groupBox5); - this.tabPage2.Controls.Add(this.groupBox4); - this.tabPage2.Controls.Add(this.groupBox3); - this.tabPage2.Controls.Add(this.groupBox2); - this.tabPage2.Location = new System.Drawing.Point(4, 22); - this.tabPage2.Name = "tabPage2"; - this.tabPage2.Padding = new System.Windows.Forms.Padding(3); - this.tabPage2.Size = new System.Drawing.Size(681, 367); - this.tabPage2.TabIndex = 5; - this.tabPage2.Text = "WPN"; - this.tabPage2.UseVisualStyleBackColor = true; + // tabWPN + // + this.tabWPN.Controls.Add(this.cbManRange); + this.tabWPN.Controls.Add(this.nudManRange); + this.tabWPN.Controls.Add(this.groupBox5); + this.tabWPN.Controls.Add(this.groupBox4); + this.tabWPN.Controls.Add(this.groupBox3); + this.tabWPN.Controls.Add(this.groupBox2); + this.tabWPN.Location = new System.Drawing.Point(4, 22); + this.tabWPN.Name = "tabWPN"; + this.tabWPN.Padding = new System.Windows.Forms.Padding(3); + this.tabWPN.Size = new System.Drawing.Size(681, 367); + this.tabWPN.TabIndex = 5; + this.tabWPN.Text = "WPN"; + this.tabWPN.UseVisualStyleBackColor = true; // // cbManRange // @@ -2444,6 +2953,22 @@ private void InitializeComponent() this.splitContainer3.Panel2.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.splitContainer3)).EndInit(); this.splitContainer3.ResumeLayout(false); + this.tabTune.ResumeLayout(false); + this.groupBox10.ResumeLayout(false); + this.groupBox10.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.nudTuneHFRXManualFreq)).EndInit(); + this.groupBox9.ResumeLayout(false); + this.groupBox9.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.nudTuneFM2ManualFreq)).EndInit(); + this.groupBox8.ResumeLayout(false); + this.groupBox8.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.nudTuneFM1ManualFreq)).EndInit(); + this.groupBox7.ResumeLayout(false); + this.groupBox7.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.nudTuneUHFManualFreq)).EndInit(); + this.groupBox6.ResumeLayout(false); + this.groupBox6.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.nudTuneVHFManualFreq)).EndInit(); this.tabDL.ResumeLayout(false); this.tabDL.PerformLayout(); this.tabIFF.ResumeLayout(false); @@ -2452,8 +2977,8 @@ private void InitializeComponent() this.tabASE.PerformLayout(); this.groupBox1.ResumeLayout(false); this.groupBox1.PerformLayout(); - this.tabPage2.ResumeLayout(false); - this.tabPage2.PerformLayout(); + this.tabWPN.ResumeLayout(false); + this.tabWPN.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.nudManRange)).EndInit(); this.groupBox5.ResumeLayout(false); this.groupBox5.PerformLayout(); @@ -2594,7 +3119,7 @@ private void InitializeComponent() private System.Windows.Forms.Label label45; private System.Windows.Forms.Label label46; private System.Windows.Forms.ComboBox ddlXPNDRAntenna; - private System.Windows.Forms.TabPage tabPage2; + private System.Windows.Forms.TabPage tabWPN; private System.Windows.Forms.GroupBox groupBox2; private System.Windows.Forms.Label label50; private System.Windows.Forms.Label label49; @@ -2651,5 +3176,36 @@ private void InitializeComponent() private System.Windows.Forms.TextBox tb_laserCodeB; private System.Windows.Forms.NumericUpDown nudManRange; private System.Windows.Forms.CheckBox cbManRange; + private System.Windows.Forms.TabPage tabTune; + private System.Windows.Forms.GroupBox groupBox6; + private System.Windows.Forms.ComboBox ddlTuneVHFPreset; + private System.Windows.Forms.NumericUpDown nudTuneVHFManualFreq; + private System.Windows.Forms.RadioButton rbTuneVHFMan; + private System.Windows.Forms.RadioButton rbTuneVHFPreset; + private System.Windows.Forms.RadioButton rbTuneVHFNoChange; + private System.Windows.Forms.GroupBox groupBox7; + private System.Windows.Forms.ComboBox ddlTuneUHFPreset; + private System.Windows.Forms.RadioButton rbTuneUHFMan; + private System.Windows.Forms.RadioButton rbTuneUHFPreset; + private System.Windows.Forms.RadioButton rbTuneUHFNoChange; + private System.Windows.Forms.GroupBox groupBox10; + private System.Windows.Forms.ComboBox ddlTuneHFPreset; + private System.Windows.Forms.RadioButton rbTuneHFMan; + private System.Windows.Forms.RadioButton rbTuneHFPreset; + private System.Windows.Forms.RadioButton rbTuneHFNoChange; + private System.Windows.Forms.GroupBox groupBox9; + private System.Windows.Forms.ComboBox ddlTuneFM2Preset; + private System.Windows.Forms.RadioButton rbTuneFM2Man; + private System.Windows.Forms.RadioButton rbTuneFM2Preset; + private System.Windows.Forms.RadioButton rbTuneFM2NoChange; + private System.Windows.Forms.GroupBox groupBox8; + private System.Windows.Forms.ComboBox ddlTuneFM1Preset; + private System.Windows.Forms.RadioButton rbTuneFM1Man; + private System.Windows.Forms.RadioButton rbTuneFM1Preset; + private System.Windows.Forms.RadioButton rbTuneFM1NoChange; + private System.Windows.Forms.NumericUpDown nudTuneUHFManualFreq; + private System.Windows.Forms.NumericUpDown nudTuneFM2ManualFreq; + private System.Windows.Forms.NumericUpDown nudTuneFM1ManualFreq; + private System.Windows.Forms.NumericUpDown nudTuneHFRXManualFreq; } } \ No newline at end of file diff --git a/CoordinateConverter/DCS/Tools/FormAH64DTC.cs b/CoordinateConverter/DCS/Tools/FormAH64DTC.cs index 98b2ed4..b218c6e 100644 --- a/CoordinateConverter/DCS/Tools/FormAH64DTC.cs +++ b/CoordinateConverter/DCS/Tools/FormAH64DTC.cs @@ -67,6 +67,22 @@ public FormAH64DTC(bool isPilot) nudVHFFreq.Minimum = preset.VHFFrequencyMinimum; nudVHFFreq.Maximum = preset.VHFFrequencyMaximum; nudVHFFreq.Increment = preset.VHFFrequencyIncrement; + + nudTuneFM1ManualFreq.Minimum = preset.FM1FrequencyMinimum; + nudTuneFM1ManualFreq.Maximum = preset.FM1FrequencyMaximum; + nudTuneFM1ManualFreq.Increment = preset.FM1FrequencyIncrement; + nudTuneFM2ManualFreq.Minimum = preset.FM2FrequencyMinimum; + nudTuneFM2ManualFreq.Maximum = preset.FM2FrequencyMaximum; + nudTuneFM2ManualFreq.Increment = preset.FM2FrequencyIncrement; + nudTuneHFRXManualFreq.Minimum = preset.HFRXFrequencyMinimum; + nudTuneHFRXManualFreq.Maximum = preset.HFRXFrequencyMaximum; + nudTuneHFRXManualFreq.Increment = preset.HFRXFrequencyIncrement; + nudTuneUHFManualFreq.Minimum = preset.UHFFrequencyMinimum; + nudTuneUHFManualFreq.Maximum = preset.UHFFrequencyMaximum; + nudTuneUHFManualFreq.Increment = preset.UHFFrequencyIncrement; + nudTuneVHFManualFreq.Minimum = preset.VHFFrequencyMinimum; + nudTuneVHFManualFreq.Maximum = preset.VHFFrequencyMaximum; + nudTuneVHFManualFreq.Increment = preset.VHFFrequencyIncrement; } // Set up ComboBoxes @@ -141,6 +157,8 @@ public FormAH64DTC(bool isPilot) ddlPresetModemBaudRate.Items.Add(item); } + // XPNDR + ddlXPNDRMode4Key.ValueMember = "Value"; ddlXPNDRMode4Key.DisplayMember = "Text"; foreach (AH64DTCData.EMode4Options mode4Options in Enum.GetValues(typeof(AH64DTCData.EMode4Options))) @@ -235,6 +253,21 @@ public FormAH64DTC(bool isPilot) ddlRktQty.Items.Add(new ComboItem(rocketQuantity.ToString().Replace('_', ' '), rocketQuantity)); } + // Tune + foreach (ComboBox ddl in new List() + { + ddlTuneFM1Preset, ddlTuneFM2Preset, ddlTuneHFPreset, ddlTuneUHFPreset, ddlTuneVHFPreset + }) + { + ddl.ValueMember = "Value"; + ddl.DisplayMember = "Text"; + + foreach (AH64DTCData.EPreset preset in Enum.GetValues(typeof(AH64DTCData.EPreset))) + { + ddl.Items.Add(new ComboItem(GetPresetName(preset), preset)); + } + } + // Call reset btnReset_Click(null, null); } @@ -372,6 +405,38 @@ private void RefreshControls() tb.Text = (laserCode != null) ? laserCode.LaserCode.ToString() : string.Empty; } // TODO: Reset ADF to values in data + + // Radio Tune + // VHF + nudTuneVHFManualFreq.Value = data.VHFManualFrequency; + ddlTuneVHFPreset.SelectedIndex = ComboItem.FindValue(ddlTuneVHFPreset, data.VHFTunePreset) ?? 0; + rbTuneVHFNoChange.Checked = data.VHFTuneSetting == AH64DTCData.ETuneSetting.No_Change; + rbTuneVHFPreset.Checked = data.VHFTuneSetting == AH64DTCData.ETuneSetting.Preset; + rbTuneVHFMan.Checked = data.VHFTuneSetting == AH64DTCData.ETuneSetting.Manual; + // UHF + nudTuneUHFManualFreq.Value = data.UHFManualFrequency; + ddlTuneUHFPreset.SelectedIndex = ComboItem.FindValue(ddlTuneUHFPreset, data.UHFTunePreset) ?? 0; + rbTuneUHFNoChange.Checked = data.UHFTuneSetting == AH64DTCData.ETuneSetting.No_Change; + rbTuneUHFPreset.Checked = data.UHFTuneSetting == AH64DTCData.ETuneSetting.Preset; + rbTuneUHFMan.Checked = data.UHFTuneSetting == AH64DTCData.ETuneSetting.Manual; + // FM1 + nudTuneFM1ManualFreq.Value = data.FM1ManualFrequency; + ddlTuneFM1Preset.SelectedIndex = ComboItem.FindValue(ddlTuneFM1Preset, data.FM1TunePreset) ?? 0; + rbTuneFM1NoChange.Checked = data.FM1TuneSetting == AH64DTCData.ETuneSetting.No_Change; + rbTuneFM1Preset.Checked = data.FM1TuneSetting == AH64DTCData.ETuneSetting.Preset; + rbTuneFM1Man.Checked = data.FM1TuneSetting == AH64DTCData.ETuneSetting.Manual; + // FM2 + nudTuneFM2ManualFreq.Value = data.FM2ManualFrequency; + ddlTuneFM2Preset.SelectedIndex = ComboItem.FindValue(ddlTuneFM2Preset, data.FM2TunePreset) ?? 0; + rbTuneFM2NoChange.Checked = data.FM2TuneSetting == AH64DTCData.ETuneSetting.No_Change; + rbTuneFM2Preset.Checked = data.FM2TuneSetting == AH64DTCData.ETuneSetting.Preset; + rbTuneFM2Man.Checked = data.FM2TuneSetting == AH64DTCData.ETuneSetting.Manual; + // HF + nudTuneHFRXManualFreq.Value = data.HFRXManualFrequency; + ddlTuneHFPreset.SelectedIndex = ComboItem.FindValue(ddlTuneHFPreset, data.HFTunePreset) ?? 0; + rbTuneHFNoChange.Checked = data.HFTuneSetting == AH64DTCData.ETuneSetting.No_Change; + rbTuneHFPreset.Checked = data.HFTuneSetting == AH64DTCData.ETuneSetting.Preset; + rbTuneHFMan.Checked = data.HFTuneSetting == AH64DTCData.ETuneSetting.Manual; } #region PresetGeneral @@ -448,6 +513,8 @@ private void UpdatePresetNameInDDL(AH64DTCData.EPreset preset) // Force refresh. ddlRadioPresetSelection.DisplayMember = "Value"; ddlRadioPresetSelection.DisplayMember = "Text"; + + UpdateTuneDDLText(preset); } private string GetPresetName(AH64DTCData.EPreset preset) @@ -514,6 +581,7 @@ private void ddlPresetPrimaryRadio_SelectedIndexChanged(object sender, EventArgs } #endregion + #region Preset #region PresetVHF private void cbPresetVHF_Enable_CheckedChanged(object sender, EventArgs e) { @@ -522,6 +590,8 @@ private void cbPresetVHF_Enable_CheckedChanged(object sender, EventArgs e) nudVHFFreq.Enabled = status; cbPresetVHFAllowRecvOnlyRange.Enabled = status; + + UpdateTuneDDLText(GetSelectedPresetIdent()); } private void cbPresetVHFAllowRecvOnlyRange_CheckedChanged(object sender, EventArgs e) @@ -559,6 +629,8 @@ private void cbPresetUHF_Enable_CheckedChanged(object sender, EventArgs e) // Disable N/I controls ddlUHFCNV.Enabled = false; nudUHFHQ.Enabled = false; + + UpdateTuneDDLText(GetSelectedPresetIdent()); } private void ddlUHFCNV_SelectedIndexChanged(object sender, EventArgs e) @@ -611,6 +683,8 @@ private void cbPresetFM1_Enable_CheckedChanged(object sender, EventArgs e) // Disable N/I fields ddlFM1CNV.Enabled = false; nudFM1Hopset.Enabled = false; + + UpdateTuneDDLText(GetSelectedPresetIdent()); } private void ddlFM1CNV_SelectedIndexChanged(object sender, EventArgs e) @@ -664,6 +738,8 @@ private void cbPresetFM2_Enable_CheckedChanged(object sender, EventArgs e) // Disable N/I fields ddlFM2CNV.Enabled = false; nudFM2Hopset.Enabled = false; + + UpdateTuneDDLText(GetSelectedPresetIdent()); } private void ddlFM2CNV_SelectedIndexChanged(object sender, EventArgs e) @@ -725,6 +801,8 @@ private void cbPresetHF_Enable_CheckedChanged(object sender, EventArgs e) nudHFPresetCH.Enabled = false; nudHFRXFreq.Enabled = false; nudHFTXFreq.Enabled = false; + + UpdateTuneDDLText(GetSelectedPresetIdent()); } private void cbHFSame_CheckedChanged(object sender, EventArgs e) @@ -1051,6 +1129,274 @@ private void ddlPresetModemBaudRate_SelectedIndexChanged(object sender, EventArg GetSelectedPreset().BaudRate = ComboItem.GetSelectedValue(sender as ComboBox); } + #endregion + #endregion + + #region Tune + + private void UpdateTuneDDLText(AH64DTCData.EPreset preset) + { + foreach (var ddl in new List() + { + ddlTuneVHFPreset, ddlTuneUHFPreset, ddlTuneFM1Preset, ddlTuneFM2Preset, ddlTuneHFPreset + }) + { + int? idx = ComboItem.FindValue(ddl, preset); + if (!idx.HasValue) + { + continue; + } + + string newText = GetPresetName(preset) + " - "; + AH64RadioPresetData presetData = data.GetAH64RadioPreset(preset); + + if (ddl.Name == ddlTuneVHFPreset.Name) + { + newText += presetData.ContainsVHFData ? presetData.VHFFrequency.ToString() : "Current Frequency"; + } + else if (ddl.Name == ddlTuneUHFPreset.Name) + { + newText += presetData.ContainsUHFData ? presetData.UHFFrequency.ToString() : "Current Frequency"; + } + else if (ddl.Name == ddlTuneFM1Preset.Name) + { + newText += presetData.ContainsFM1Data ? presetData.FM1Frequency.ToString() : "Current Frequency"; + } + else if (ddl.Name == ddlTuneFM2Preset.Name) + { + newText += presetData.ContainsFM2Data ? presetData.FM2Frequency.ToString() : "Current Frequency"; + } + else if (ddl.Name == ddlTuneHFPreset.Name) + { + newText += presetData.ContainsHFData ? presetData.HFRXFrequency.ToString() : "Current Frequency"; + } + + (ddl.Items[idx.Value] as ComboItem).Text = newText; + ddl.DisplayMember = "Value"; + ddl.DisplayMember = "Text"; + } + } + + #region TuneVHF + private void rbTuneVHFNoChange_CheckedChanged(object sender, EventArgs e) + { + if ((sender as RadioButton).Checked) + { + data.VHFTuneSetting = AH64DTCData.ETuneSetting.No_Change; + ddlTuneVHFPreset.Enabled = false; + nudTuneVHFManualFreq.Enabled = false; + } + } + + private void rbTuneVHFPreset_CheckedChanged(object sender, EventArgs e) + { + if ((sender as RadioButton).Checked) + { + data.VHFTuneSetting = AH64DTCData.ETuneSetting.Preset; + ddlTuneVHFPreset.Enabled = true; + data.VHFTunePreset = ComboItem.GetSelectedValue(ddlTuneVHFPreset); + nudTuneVHFManualFreq.Enabled = false; + } + } + + private void rbTuneVHFMan_CheckedChanged(object sender, EventArgs e) + { + if ((sender as RadioButton).Checked) + { + data.VHFTuneSetting = AH64DTCData.ETuneSetting.Manual; + ddlTuneVHFPreset.Enabled = false; + nudTuneVHFManualFreq.Enabled = true; + data.VHFManualFrequency = nudTuneVHFManualFreq.Value; + } + } + + private void ddlTuneVHFPreset_SelectedIndexChanged(object sender, EventArgs e) + { + data.VHFTunePreset = ComboItem.GetSelectedValue(ddlTuneVHFPreset); + } + + private void nudTuneVHFManualFreq_ValueChanged(object sender, EventArgs e) + { + data.VHFManualFrequency = nudTuneVHFManualFreq.Value; + } + #endregion + + #region TuneUHF + private void rbTuneUHFNoChange_CheckedChanged(object sender, EventArgs e) + { + if ((sender as RadioButton).Checked) + { + data.UHFTuneSetting = AH64DTCData.ETuneSetting.No_Change; + ddlTuneUHFPreset.Enabled = false; + nudTuneUHFManualFreq.Enabled = false; + } + } + + private void rbTuneUHFPreset_CheckedChanged(object sender, EventArgs e) + { + if ((sender as RadioButton).Checked) + { + data.UHFTuneSetting = AH64DTCData.ETuneSetting.Preset; + ddlTuneUHFPreset.Enabled = true; + data.UHFTunePreset = ComboItem.GetSelectedValue(ddlTuneUHFPreset); + nudTuneUHFManualFreq.Enabled = false; + } + } + + private void rbTuneUHFMan_CheckedChanged(object sender, EventArgs e) + { + if ((sender as RadioButton).Checked) + { + data.UHFTuneSetting = AH64DTCData.ETuneSetting.Manual; + ddlTuneUHFPreset.Enabled = false; + nudTuneUHFManualFreq.Enabled = true; + data.UHFManualFrequency = nudTuneUHFManualFreq.Value; + } + } + + private void ddlTuneUHFPreset_SelectedIndexChanged(object sender, EventArgs e) + { + data.UHFTunePreset = ComboItem.GetSelectedValue(ddlTuneUHFPreset); + } + + private void nudTuneUHFManualFreq_ValueChanged(object sender, EventArgs e) + { + data.UHFManualFrequency = nudTuneUHFManualFreq.Value; + } + #endregion + + #region TuneFM1 + private void rbTuneFM1NoChange_CheckedChanged(object sender, EventArgs e) + { + if ((sender as RadioButton).Checked) + { + data.FM1TuneSetting = AH64DTCData.ETuneSetting.No_Change; + ddlTuneFM1Preset.Enabled = false; + nudTuneFM1ManualFreq.Enabled = false; + } + } + + private void rbTuneFM1Preset_CheckedChanged(object sender, EventArgs e) + { + if ((sender as RadioButton).Checked) + { + data.FM1TuneSetting = AH64DTCData.ETuneSetting.Preset; + ddlTuneFM1Preset.Enabled = true; + data.FM1TunePreset = ComboItem.GetSelectedValue(ddlTuneFM1Preset); + nudTuneFM1ManualFreq.Enabled = false; + } + } + + private void rbTuneFM1Man_CheckedChanged(object sender, EventArgs e) + { + if ((sender as RadioButton).Checked) + { + data.FM1TuneSetting = AH64DTCData.ETuneSetting.Manual; + ddlTuneFM1Preset.Enabled = false; + nudTuneFM1ManualFreq.Enabled = true; + data.FM1ManualFrequency = nudTuneFM1ManualFreq.Value; + } + } + + private void ddlTuneFM1Preset_SelectedIndexChanged(object sender, EventArgs e) + { + data.FM1TunePreset = ComboItem.GetSelectedValue(ddlTuneFM1Preset); + } + + private void nudTuneFM1ManualFreq_ValueChanged(object sender, EventArgs e) + { + data.FM1ManualFrequency = nudTuneFM1ManualFreq.Value; + } + #endregion + + #region TuneFM2 + private void rbTuneFM2NoChange_CheckedChanged(object sender, EventArgs e) + { + if ((sender as RadioButton).Checked) + { + data.FM2TuneSetting = AH64DTCData.ETuneSetting.No_Change; + ddlTuneFM2Preset.Enabled = false; + nudTuneFM2ManualFreq.Enabled = false; + } + } + + private void rbTuneFM2Preset_CheckedChanged(object sender, EventArgs e) + { + if ((sender as RadioButton).Checked) + { + data.FM2TuneSetting = AH64DTCData.ETuneSetting.Preset; + ddlTuneFM2Preset.Enabled = true; + data.FM2TunePreset = ComboItem.GetSelectedValue(ddlTuneFM2Preset); + nudTuneFM2ManualFreq.Enabled = false; + } + } + + private void rbTuneFM2Man_CheckedChanged(object sender, EventArgs e) + { + if ((sender as RadioButton).Checked) + { + data.FM2TuneSetting = AH64DTCData.ETuneSetting.Manual; + ddlTuneFM2Preset.Enabled = false; + nudTuneFM2ManualFreq.Enabled = true; + data.FM2ManualFrequency = nudTuneFM2ManualFreq.Value; + } + } + + private void ddlTuneFM2Preset_SelectedIndexChanged(object sender, EventArgs e) + { + data.FM2TunePreset = ComboItem.GetSelectedValue(ddlTuneFM2Preset); + } + + private void nudTuneFM2ManualFreq_ValueChanged(object sender, EventArgs e) + { + data.FM2ManualFrequency = nudTuneFM2ManualFreq.Value; + } + #endregion + + #region TuneHF + private void rbTuneHFNoChange_CheckedChanged(object sender, EventArgs e) + { + if ((sender as RadioButton).Checked) + { + data.HFTuneSetting = AH64DTCData.ETuneSetting.No_Change; + ddlTuneHFPreset.Enabled = false; + nudTuneHFRXManualFreq.Enabled = false; + } + } + + private void rbTuneHFPreset_CheckedChanged(object sender, EventArgs e) + { + if ((sender as RadioButton).Checked) + { + data.HFTuneSetting = AH64DTCData.ETuneSetting.Preset; + ddlTuneHFPreset.Enabled = true; + data.HFTunePreset = ComboItem.GetSelectedValue(ddlTuneHFPreset); + nudTuneHFRXManualFreq.Enabled = false; + } + } + + private void rbTuneHFMan_CheckedChanged(object sender, EventArgs e) + { + if ((sender as RadioButton).Checked) + { + data.HFTuneSetting = AH64DTCData.ETuneSetting.Manual; + ddlTuneHFPreset.Enabled = false; + nudTuneHFRXManualFreq.Enabled = true; + data.HFRXManualFrequency = nudTuneHFRXManualFreq.Value; + } + } + + private void ddlTuneHFPreset_SelectedIndexChanged(object sender, EventArgs e) + { + data.HFTunePreset = ComboItem.GetSelectedValue(ddlTuneHFPreset); + } + + private void nudTuneHFRXManualFreq_ValueChanged(object sender, EventArgs e) + { + data.HFRXManualFrequency = nudTuneHFRXManualFreq.Value; + } + #endregion + #endregion #region OwnshipDL diff --git a/CoordinateConverter/DCS/Tools/FormAH64DTC.resx b/CoordinateConverter/DCS/Tools/FormAH64DTC.resx index b98450e..a39bb0a 100644 --- a/CoordinateConverter/DCS/Tools/FormAH64DTC.resx +++ b/CoordinateConverter/DCS/Tools/FormAH64DTC.resx @@ -146,49 +146,49 @@ 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 - RK5CYII= + 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 + QmCC @@ -214,73 +214,73 @@ iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAA9cSURBVHhe1ZsHWFVHFsdB15i4azbGWCO2gF2xd40aSywx - amwRFY0FVGIHRSWIBVBQkCrSQRCQYhc1ltjQJLq2mBgbdk3U2DBmU86e/zzmeu/jAg9Flsz3/b733szc - KefNnXLmHLMiCpbMUGYe488kMNuZ3cwOZj0TxHzB2DDWTCnmbxtKZn+aWXbs1oA//mSogGQxXzHzmSZM - sQ//ZhyYY8xj928uLQ25/sdXgZn3no3xiyK78GRy3HiAFu4/Q57Hr5DXyRvkfea2+Fx2/Cq5HThLTpsO - kn1kKvV3Xkq123Y2FshZxpF5hylWoRKzgnnEiMZ2nTid/C88opCbf7wwq2/8LgQzLXEHdbOboRbEUyaY - qc68svBPphHTOJvKjHFAHjfmCUNVGljT2IAY0Wi9Dr0sGCkTQhLIolkbKYhnjDeDkVeooRdzn1FLHe+w - JyNDT+YSQ5XrNyH7iBTyu/BQt+FqfM/dJ89jmeSy+wTNS/+a5mw9LD5ddv+HPL69TD4/3NN9To3/pcc0 - JXYzWTRtLdt2gxnAFEowZ66XKFWaPpqzmAbM9xTU7dJLVtaR8WP+wu/h7v55Nnr5ies0PWknDVzgSXU6 - d5dl5Ml77bvQx/PcaWpCep6jadWPv9DIFaHqZyMYjMqXCm8y1HnMZE1lDmu3ykrEe16/W29y3XtKk0eC - kYD3tt2IcerGUTXLSjRien9y8rMjj3gn8tvsSv5b3cSnxzonmuNvTyNnDqCa9d/VPNdq8Cj6PH6b6LBe - fYsOfk/WfQbJ/KeY2swLB7xP9P5nDppKpq7brjSo7yxX3cZgeI8LiqNKdRspeUfOGiA6ufl8GB1+lEJH - n27Il4zHqbTlYgQFbl9EY+cOphIlS4iyyteuQ2P8o8nn+7s56obQB8z3kPX+xLRhXijoCmB22j5RuC0v - Z8HXftOkBV97JgRUtVEzkadRWyvyXDeHdlyN0e1gQdl5PZaWJzlTs84NRPkQMOaAoKu/atqx+vp/acKa - RCmEx0wXpsBBVwDBXDjeZ3UcQBzy4plaDd4lr/XOtP9ekm5HXpYD95PIJ82FrJrWEPV1GDmRJ9QrOdo0 - PXGnFAJWp/ZMgYKuAPSYu+0IVazbUFQ2efFI2nVjrW7DC5vdt+JoqucYUe/btax4c7U/R9umJ+2SQsBq - Vo8xOZgkAPWcUKVWBVq9aykdydJv8KsidI8HVa9bRbRhPO8PVt/4r6aNkyLTZBvPM+UYk4JJAhiy2FcR - gAQN0mvoq2TjuVBq3sta1D/KJ1zMA7KN2EkOW+ov27eBwRKfbzBJAMHXfyNfXv+B24HvRCV2rp/qNvJV - k3o5gloNaiXaMDYgVtPOwMwsaj9ivBSCHZNvMHkOkGBZwjPj5g3RbWBREHl+NTXtZ1iFsPFSt8/z20wq - W8UCaQ+ZakyeoTTzZ9N+g8UQUheUG8VBAAeepNCKEyupmrUFvVG+Ii0+fE7TRpww0UYmkck37GVojF80 - 8ZFWLDV5MWfLIVH4lKWjdBtXVGy8F08uu1xFW/AH4swgBRCY+ZSs+36CNGzh2zJ5hoYMdlNSaiYR97Wv - bsOKikNZqRR+K4JsfQxLpO2qKM0ocN5+RLYVGqh8A874C5hIJnqmt33WghAH0sMtcgYlnQjUbVRRk3Y3 - jgIvBVPjno2pRKnX+ISZqQgAE3froaOlEJozpoWMX9O66FVWHNn3OJlCb4bTvG0LREf7z12iGQXQSCGe - wR9rWjjyNG27XmXFlZjbUbTmehhvlTuKznrwPCYFEHD5CU+ULRGPbTJOvnmHjGebrfbdW/eXXkXFFUyG - hlEwXwhgxPLVmlGADRPiGWif8w5HstIW61VSnNn9cL0QwOora8iyvRW981498r/4XD+5cL9h48ZAFZ93 - OJq14axeJcUZrAYQABgXYNgFOm8/qggg8MpTqlhHHOJwUFLU9znCoafJNfQq+DsQdTtSCGDJIXchgGFL - /RQBAEyOiGeaoq+TmNPMGTXNOje4lHw6SLcCU8h4kqbAI0k3T17w66ctQydPbsT/FK28BhUsK5BVpw80 - O1uHtVukAOwZsyPZP3KwatMXOQpfFDWD2vZqKug1vBPvA6bnUIJgV6gup2nH+rT7drySfvBBMrnHOVI/ - 227U2+Z9WrDagdKvRCvp0AI1aGWpKWPWyvFKevCOJdS+d3OlHaDLgDa0/qRhP7L+51jlNegzo6943vv0 - bUUA0EpnlwsFr9lFc/MS5Hf+AU8WjwV2YckiQ9RBb6VSycAJPUVa2bfLUMlSJcX38QuGafJ06NuCzEuY - 08DxPQWjZw+kfT8nKOmzfSaI50pwHqnzq9WwmiKk5FNBIq75+w2VMqBIlc9Dkfp2pTfptTdKiXxvlC1N - tRtaUMJxf5GeyhsiKQC7UHuR54s9JxQBeJ28KeKYXYzZg+rN2yiJYFxwvMig9wpIARx6mEz77yfRYPsP - xe/tmVFKHgigzJuva56THPxlPf2DBdepX0shlAP8Oyh9sfiHMTKQRwpgScysHM+rWZ44V+SLPeKjiceO - UArAccMckQdaItk/nBMQx3zHmP3e8hMbjQBsvEJEhs3nwzUFAykANBYaXFsng0p626VIJQ8E8Pq/Sgs1 - 2a4bsaKTMi3jSSq16NqIqtauQMsS9JWnUgDzgiaL51EO5gTjfLkJIPXuWkUArnvcRJ6JoUmaPr5VrSbi - 7zBmf7UdPlaT+KmnoQGbL+QugI/H9aAOfVqI70Mm99FMVBAA4iUffNJOU0ZMxkqyqFNZpJmbm9OkRTaa - OUAKQI3vRhdNGSA3ASSp5oBl3ywXeaBSV/exca+PEY/rNbNnDbv30yTiKIyHNv0YqikYSAFIPvewFYpK - dR4IAO+23cIRQlPkue75+yvZ+1MC+W1ZSB+OMNwCt+7eRJknpAC6DmornrfncvRex9wEEHfHsAqA5ce8 - RR78qeo+Zl/c4HhsdqecRS1NIoYLHor/ZpWmYCAF0OkjgxrKd2POlSKvOQCvwNZLEcrSiJGDUyXKCt3r - KeJedg6I4GOxsQBsvEM0fWw5yAbxvzNiItAoEKRaOeRLd03BQApg049h1LhdHfE98oCXJg8EULrMa7Tx - hzW0gdl2+fn8sGa3YXPiHDhJCCL9ajRN5H8ZcXg1kEcKABMjngcYMbIMiZ4ADrKAZeeB3AxhYlcLoHoz - cbn6gBFLAXmduqkkuvCSgTiPeEdNhUAK4PCjFB6WwWIyq1LzHTFZyTxYk5FHjXzHd1yLoe6D2+dIxzyC - lQV5Us4E50gfxUupLF+iJ4BdD5M0Api/3XA0hoGGXOax5GPu4fgLjNgMaNZJbBoQ95lzTj3fqk2u5Bo2 - Tfkde9SHPne31WyGog950+LomQq4MYLAZDqWz4BtbuJCZdz8obQidb6Ik+lYYZZx59RlrOV6ZLok7WwI - T6AjNZss9R4ATIufLvqSCxmM2A6K+zYpAGwbrTp+IC4eDj007VKzOHCEibplOAdIXHYuPMT9O8lotvoM - tv9iK9yMEfYAUgAABwjE433Uq6w4svuR4SisJuJmRB90Mq+AI+F93PMF8VFRCkAqEaHz06usOKI+A2ST - FXMrxiSjiWRGKAukAKBEgDKheZeGyuRUnMHdQJi28xR2KyJ/pUd2gHqIRvuEKwIAUCchPmL/ct1KixMp - qu2vJPJWZF/ROxMCFIRPoDCE4lAKAApFjudtb3exgdGruDiw75FBG6yGR8M5Xq9KiN6ZGKAqFqpj9Sjo - P3epEILxZqe4gJl/rWrrqwjgVtgY0asCBFwWUJuhtuISQRkF32aKS4aOfHx9VdYfL0LSiQAxQc8OsqfR - K8doGLJy6J+V61SK4/5EM/hjccmDy558A66NxAqgHgW2qyLFKMCeXa8xRQ2u4dCeAoLrPlz75RnaMX/h - chEXilIAOCdYcxyn8bbTsF//fzJliUHlNmfLYd0LWzW44JWnWwYXv/kGXCGTfUSqZhTgyhlXz3Wb1zKc - 5nQaVlTgKh5t1DOZ0wM726aG22FYvMIEIM8AI4KHZataCOMCdUHylNh1YFvN4aco2cu7vYGz+xdIAABG - H3iGgRFIvgHmJMK8JOBylqYgmKEgrefwTkJ7q9fIV0X6g0Re3iKov5PQ5gjzHGmqo5649SioAGBQBMMi - cSZQ69RhiCTv16AS09MaFTaHs1Ip+efnGx2njYZjsJqhi301HTamoAJAgGkZTMyEyZm6MJikwTQNaTgx - CguxV2AmhzUe/zrv6DRrfOiNcHJMdaJy1cspAoDpnrqNxryIABBgZHiP0aiVJdg0wVgR6VM9belLI93g - i4KO7+COx96J0nY8G9+zfjRgnkEbDdNZGG0at82YFxUAAsxNhVPEtIT0HAVjqekwaqIo3NK6Bq1MW6BR - bhQEGDjgejvHP54NrD+mRDlwpyuJ+tCp3Ex4Yd6rjnsZASDA8BgGyMIgWW2QCGC47BC7mSrVM1iKw7DZ - PXEOpV4Opz08a+9/nCJubTOy0vh9ThN6u6847suHSbT1l3XiGJtbp8HK075kHzaJarQQunyq2rg5D/l0 - YaitbgcMuUf7Rog8MPBWp72sABBaM8J4Cg4Qeh4iPj/cFfp3mLYjH67Hek/rQzOTZpHXcW8KuRaq20Fj - Qq6G0rJjXjQjcSb1nKI4a7CAGwvlJkzzjetGXO8ZLkpe4zmhMASAAGcEOCVQkz6DhLOCuhIJ/Ang5NB6 - sPaStKJVJeoxuSfZLBtJdqGTaPq6GaKT0/gTv0d42lB3+x5UvmZ5zXPQ4U9L3JmrWw70mfWee7UIpw6H - uK2aPJ3GTJbp+ZvG5BOgYYF7iigQbiu5eXMA4fnFcwfcYCzbd5GNyJO6nXvQQJdlPPHu1H3HJdgIDV1i - UN0xuORYxcCtR7j5SJcfqPtwoOP4a4xJNsOmBDgqwWFJODBBqaq+W8gNbFrgIGXsOIV/EQ5VesPbGKi1 - oeau+Nw7BQ5ccOSSAQ5exs6asAhR5ymUgOHkxfzKkEWz1mJ/ABc3vYa/LFhxMMdgLkB9DCZmN6YMYxzg - 6ifd/uACqJen0AKcGOHMCKdG0Tg4O8J5Cq+AqXbHeTHcI1B2GuA9h8+gSWf8ogxwa4V7K9xclQZbdugq - 3GFhtAz3WLjJQjC4jVoB91n+9OTfcKt13HSAh3cK9XN0o76zF1LAxceHQ2784WzZsTscrr9m4J77UjN5 - UQUMPTg+72PgCK3+B03lJvMW87cPcIWHSzy0zy4MXOWhsoYGag+TzkAPEcBAaMMYaG9yN2MrlGBm9j+C - mopTjR/CAgAAAABJRU5ErkJggg== + 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 + ij7XsTWHAAAAAElFTkSuQmCC diff --git a/CoordinateConverter/MainForm.cs b/CoordinateConverter/MainForm.cs index 9d50e34..741a4ab 100644 --- a/CoordinateConverter/MainForm.cs +++ b/CoordinateConverter/MainForm.cs @@ -20,7 +20,7 @@ namespace CoordinateConverter /// public partial class MainForm : Form { - private readonly GitHub.Version VERSION = new GitHub.Version(0, 6, 2); + private readonly GitHub.Version VERSION = new GitHub.Version(0, 6, 3); #pragma warning disable CS1591 // Missing XML comment for publicly visible type or member public static readonly Color ERROR_COLOR = Color.Pink; diff --git a/CoordinateConverter/todo.txt b/CoordinateConverter/todo.txt index ab509da..4e60534 100644 --- a/CoordinateConverter/todo.txt +++ b/CoordinateConverter/todo.txt @@ -63,7 +63,6 @@ Add aircraft support (https://github.com/aronCiucu/DCSTheWay/tree/main/src/modul UHF radio: 225.000 - 399.975 MHz, in 0.025 increments FM1/FM2 radios: 30.000 - 87.975 MHz, in 0.025 increments HF 2.0000 - 29.9999 MHz, in 0.0001 increments - - Tune (using com page) - ADF Presets - Valid range 100 - 2199.5 kHz - Valid ID 1-3 alpha characters (no numbers, no other stuff) diff --git a/Installer/Installer.wixproj b/Installer/Installer.wixproj index 582e475..bc24341 100644 --- a/Installer/Installer.wixproj +++ b/Installer/Installer.wixproj @@ -1,6 +1,6 @@  - Version=0.6.2 + Version=0.6.3 Version=0.6.0