public void SimulateSceneSelect(string sceneName) { Debug.Console(1, this, "Simulating selection of scene '{0}'", sceneName); var scene = LightingScenes.FirstOrDefault(s => s.Name.Equals(sceneName)); if (scene != null) { CurrentLightingScene = scene; OnLightingSceneChange(); } }
/// <summary> /// Handles all responses that contain the delimiter /// </summary> /// <param name="sender"></param> /// <param name="args"></param> void PortGather_LineReceived(object sender, GenericCommMethodReceiveTextArgs args) { Debug.Console(2, this, "Line Received: '{0}'", args.Text); try { if (args.Text.Contains("~AREA")) { var response = args.Text.Split(','); var integrationId = response[1]; if (integrationId != IntegrationId) { Debug.Console(2, this, "Response is not for correct Integration ID"); return; } else { var action = Int32.Parse(response[2]); switch (action) { case (int)eAction.Scene: { var scene = response[3]; CurrentLightingScene = LightingScenes.FirstOrDefault(s => s.ID.Equals(scene)); OnLightingSceneChange(); break; } default: break; } } } } catch (Exception e) { Debug.Console(2, this, "Error parsing response:\n{0}", e); } }