public Animatroller.Framework.PhysicalDevice.DigitalInput AddDigitalInput_Momentarily(DigitalInput2 logicalDevice) { var control = new Control.SimpleButton(); control.Text = logicalDevice.Name; control.UseMnemonic = false; control.Size = new System.Drawing.Size(80, 80); control.TextAlign = ContentAlignment.MiddleCenter; flowLayoutPanelLights.Controls.Add(control); var device = new Animatroller.Framework.PhysicalDevice.DigitalInput(); control.MouseDown += (sender, e) => { device.Trigger(true); }; control.MouseUp += (sender, e) => { device.Trigger(false); }; device.Connect(logicalDevice); control.Checked = logicalDevice.Value; logicalDevice.Output .ObserveOn(SynchronizationContext.Current) .Subscribe(x => { control.Checked = x; }); return(device); }
public Animatroller.Framework.PhysicalDevice.DigitalInput AddDigitalInput_Momentarily(DigitalInput2 logicalDevice) { var control = new Control.SimpleButton(); control.Text = logicalDevice.Name; control.UseMnemonic = false; control.Size = new System.Drawing.Size(80, 80); control.TextAlign = ContentAlignment.MiddleCenter; flowLayoutPanelLights.Controls.Add(control); var device = new Animatroller.Framework.PhysicalDevice.DigitalInput(); control.MouseDown += (sender, e) => { device.Trigger(true); }; control.MouseUp += (sender, e) => { device.Trigger(false); }; device.Connect(logicalDevice); control.Checked = logicalDevice.Value; logicalDevice.Output .ObserveOn(SynchronizationContext.Current) .Subscribe(x => { control.Checked = x; }); return device; }