public void Activate()
        {
            if (!MainV2.comPort.BaseStream.IsOpen)
            {
                this.Enabled = false;
                return;
            }
            else
            {
                if (MainV2.comPort.MAV.cs.firmware == MainV2.Firmwares.ArduCopter2 || MainV2.comPort.MAV.cs.firmware == MainV2.Firmwares.ArduHeli)
                {
                    this.Enabled = true;
                }
                else
                {
                    this.Enabled = false;
                    return;
                }
            }

            startup = true;

            changes.Clear();

            // read tooltips
            if (tooltips.Count == 0)
                readToolTips();

            ParameterMetaDataRepository param = new ParameterMetaDataRepository();

            // ensure the fields are populated before setting them
            CH7_OPT.DataSource = param.GetParameterOptionsInt("CH7_OPT").ToList();
            CH7_OPT.DisplayMember = "Value";
            CH7_OPT.ValueMember = "Key";

            CH8_OPT.DataSource = param.GetParameterOptionsInt("CH8_OPT").ToList();
            CH8_OPT.DisplayMember = "Value";
            CH8_OPT.ValueMember = "Key";

            TUNE.DataSource = param.GetParameterOptionsInt("TUNE").ToList();
            TUNE.DisplayMember = "Value";
            TUNE.ValueMember = "Key";

            // prefill all fields
            processToScreen();

            if (MainV2.comPort.MAV.param["H_SWASH_TYPE"] != null)
            {
                CHK_lockrollpitch.Checked = false;
            }

            startup = false;
        }
Esempio n. 2
0
        void createValueControl(KeyValuePair<string,string> x)
        {
            ParameterMetaDataRepository _parameterMetaDataRepository = new ParameterMetaDataRepository();

            string value = ((float)MainV2.comPort.MAV.param[x.Key]).ToString("0.###", CultureInfo.InvariantCulture);
            string description = _parameterMetaDataRepository.GetParameterMetaData(x.Key, ParameterMetaDataConstants.Description);
            string displayName = _parameterMetaDataRepository.GetParameterMetaData(x.Key, ParameterMetaDataConstants.DisplayName) +" (" + x.Key + ")";
            string units = _parameterMetaDataRepository.GetParameterMetaData(x.Key, ParameterMetaDataConstants.Units);

            var valueControl = new ValuesControl();
            valueControl.Name = x.Key;
            valueControl.DescriptionText = FitDescriptionText(units, description);
            valueControl.LabelText = displayName;

            ThemeManager.ApplyThemeTo(valueControl);

            valueControl.ComboBoxControl.DisplayMember = "Value";
            valueControl.ComboBoxControl.ValueMember = "Key";
            valueControl.ComboBoxControl.DataSource = _parameterMetaDataRepository.GetParameterOptionsInt(x.Key);
            valueControl.ComboBoxControl.SelectedItem = value;

            valueControl.ValueChanged += valueControl_ValueChanged;

            flowLayoutPanel1.Controls.Add(valueControl);
        }
Esempio n. 3
0
        public static List<KeyValuePair<int, string>> getModesList(CurrentState cs)
        {
            log.Info("getModesList Called");

            // ensure we get the correct list
            MainV2.comPort.MAV.cs.firmware = cs.firmware;

            Utilities.ParameterMetaDataRepository parm = new ParameterMetaDataRepository();

            if (cs.firmware == MainV2.Firmwares.ArduPlane)
            {
                var flightModes = parm.GetParameterOptionsInt("FLTMODE1");
                flightModes.Add(new KeyValuePair<int,string>(16,"INITIALISING"));
                return flightModes;
            }
            else if (cs.firmware == MainV2.Firmwares.Ateryx)
            {
                var flightModes = parm.GetParameterOptionsInt("FLTMODE1"); //same as apm
                return flightModes;
            }
            else if (cs.firmware == MainV2.Firmwares.ArduCopter2 || MainV2.comPort.MAV.cs.firmware == MainV2.Firmwares.ArduHeli)
            {
                var flightModes = parm.GetParameterOptionsInt("FLTMODE1");
                return flightModes;
            }
            else if (cs.firmware == MainV2.Firmwares.ArduRover)
            {
                var flightModes = parm.GetParameterOptionsInt("MODE1");
                return flightModes;
            }

            return null;
        }
        void updateDropDown(ComboBox ctl, string param)
        {
            ParameterMetaDataRepository parm = new ParameterMetaDataRepository();

            ctl.DataSource = parm.GetParameterOptionsInt(param).ToList();
            ctl.DisplayMember = "Value";
            ctl.ValueMember = "Key";
        }