Beispiel #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private async void iNumericUpDownTemperature_ValueChanged(object sender, EventArgs e)
        {
            if (iTreeViewDevices.SelectedNode == null ||
                !(iTreeViewDevices.SelectedNode.Tag is SmartHome.Device))
            {
                return;
            }

            SmartHome.Device device = (SmartHome.Device)iTreeViewDevices.SelectedNode.Tag;
            if (!await device.SetTargetTemperature((float)iNumericUpDownTemperature.Value))
            {
                // Authenticate anew before trying one last time
                await Authenticate();

                SelectDevice(device.Identifier);
                await device.SetTargetTemperature((float)iNumericUpDownTemperature.Value);
            }
            await UpdateDeviceList(device.Identifier);
        }
Beispiel #2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private async void iComboBoxThermostat_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (iTreeViewDevices.SelectedNode == null ||
                !(iTreeViewDevices.SelectedNode.Tag is SmartHome.Device))
            {
                return;
            }

            SmartHome.Device device = (SmartHome.Device)iTreeViewDevices.SelectedNode.Tag;

            SmartHome.Thermostat.Radiator thermostat = SmartHome.Thermostat.Radiator.Off;
            Enum.TryParse <SmartHome.Thermostat.Radiator>(iComboBoxThermostat.SelectedValue.ToString(), out thermostat);
            if (thermostat == SmartHome.Thermostat.Radiator.Regulated)
            {
                // Set target temperature
                if (!await device.SetTargetTemperature((float)iNumericUpDownTemperature.Value))
                {
                    // Authenticate anew before trying one last time
                    await Authenticate();

                    SelectDevice(device.Identifier);
                    await device.SetTargetTemperature((float)iNumericUpDownTemperature.Value);
                }
            }
            else
            {
                // Turn it on of off
                if (!await device.SetTargetTemperatureCode((int)thermostat))
                {
                    // Authenticate anew before trying one last time
                    await Authenticate();

                    SelectDevice(device.Identifier);
                    await device.SetTargetTemperatureCode((int)thermostat);
                }
            }

            await UpdateDeviceList(device.Identifier);
        }