Ejemplo n.º 1
0
        protected override bool OnSave(object sender)
        {
            var sensorSettings = new TemperatureProbeSettings();

            sensorSettings.name = (string)settings["Name"].setting;
            if (sensorSettings.name == "Enter name")
            {
                MessageBox.Show("Invalid probe name");
                return(false);
            }

            string channelString = (string)settings["Input Channel"].setting;

            if (channelString.IsEmpty())
            {
                MessageBox.Show("Please select an channel");
                return(false);
            }
            sensorSettings.channel = ParseIndividualControl(channelString);

            Sensors.TemperatureProbes.UpdateSensor(temperatureProbeName, sensorSettings);
            temperatureProbeName = sensorSettings.name;

            return(true);
        }
Ejemplo n.º 2
0
        public TemperatureProbeSettingsDialog(TemperatureProbeSettings settings, Window parent)
            : base(settings.name, settings.name.IsNotEmpty(), parent)
        {
            temperatureProbeName = settings.name;

            var t = new SettingsTextBox("Name");

            t.textBox.text              = temperatureProbeName.IsNotEmpty() ? temperatureProbeName : "Enter name";
            t.textBox.TextChangedEvent += (sender, args) => {
                if (args.text.IsEmpty())
                {
                    args.keepText = false;
                }
                else if (Sensors.TemperatureProbes.GadgetNameExists(args.text))
                {
                    MessageBox.Show("Probe name already exists");
                    args.keepText = false;
                }
            };
            AddSetting(t);

            var c = new SettingsComboBox("Input Channel");

            if (temperatureProbeName.IsNotEmpty())
            {
                var ic = settings.channel;
                c.combo.comboList.Add(string.Format("Current: {0}.i{1}", ic.Group, ic.Individual));
                c.combo.activeIndex = 0;
            }
            c.combo.nonActiveMessage = "Please select channel";
            c.combo.comboList.AddRange(Driver.AnalogInput.GetAllAvaiableChannels());
            AddSetting(c);

            DrawSettings();
        }