private DimmableLight Toggle(IClient client, bool?state)
        {
            Items.Dimmer dimmer   = client.GetDimmer(_id);
            bool         newState = state ?? !dimmer.State;

            dimmer.State = newState;
            return(DimmableLight.Create(dimmer).WithState(newState));
        }
Beispiel #2
0
        static void Main(string[] args)
        {
            IToggleable light  = new DimmableLight();
            ISwitch     button = new TimedSwitch(new ToggleCommand(light));

            while (true)
            {
                string input = Console.ReadLine();
                if (input.ToLower() == string.Empty)
                {
                    button.Click();
                }
                else
                {
                    break;
                }
            }
        }
        private DimmableLight OffsetValue(IClient client, int brightnessOffset)
        {
            Items.Dimmer dimmer        = client.GetDimmer(_id);
            int          newBrightness = dimmer.Value + brightnessOffset;

            if (newBrightness > 100)
            {
                newBrightness = 100;
            }
            if (newBrightness < 0)
            {
                newBrightness = 0;
            }
            dimmer.Value = (byte)newBrightness;
            return(DimmableLight.Create(dimmer)
                   .WithState(newBrightness > 0)
                   .WithBrightnessInPercent(newBrightness));
        }