mirror of
https://github.com/ckaczor/WorkIndicator.git
synced 2026-02-16 18:48:57 -05:00
Fix issue with SetLight not doing anything due to change detection
This commit is contained in:
@@ -74,7 +74,7 @@ namespace WorkIndicator.Delcom
|
|||||||
if (_red == red && _yellow == yellow && _green == green)
|
if (_red == red && _yellow == yellow && _green == green)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
int port1 = 0;
|
var port1 = 0;
|
||||||
|
|
||||||
_red = red;
|
_red = red;
|
||||||
_yellow = yellow;
|
_yellow = yellow;
|
||||||
@@ -86,8 +86,8 @@ namespace WorkIndicator.Delcom
|
|||||||
|
|
||||||
_delcom.WritePorts(0, port1);
|
_delcom.WritePorts(0, port1);
|
||||||
|
|
||||||
int blinkEnable = 0;
|
var blinkEnable = 0;
|
||||||
int blinkDisable = 0;
|
var blinkDisable = 0;
|
||||||
|
|
||||||
if (red == LightState.Blink)
|
if (red == LightState.Blink)
|
||||||
blinkEnable = blinkEnable.SetBitValue((int) Light.Red, true);
|
blinkEnable = blinkEnable.SetBitValue((int) Light.Red, true);
|
||||||
@@ -109,25 +109,29 @@ namespace WorkIndicator.Delcom
|
|||||||
|
|
||||||
public void SetLight(Light light, LightState state)
|
public void SetLight(Light light, LightState state)
|
||||||
{
|
{
|
||||||
|
var red = _red;
|
||||||
|
var yellow = _yellow;
|
||||||
|
var green = _green;
|
||||||
|
|
||||||
switch (light)
|
switch (light)
|
||||||
{
|
{
|
||||||
case Light.Red:
|
case Light.Red:
|
||||||
_red = state;
|
red = state;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Light.Yellow:
|
case Light.Yellow:
|
||||||
_yellow = state;
|
yellow = state;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Light.Green:
|
case Light.Green:
|
||||||
_green = state;
|
green = state;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
throw new ArgumentOutOfRangeException("light");
|
throw new ArgumentOutOfRangeException("light");
|
||||||
}
|
}
|
||||||
|
|
||||||
SetLights(_red, _yellow, _green);
|
SetLights(red, yellow, green);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user