using System; using Newtonsoft.Json; namespace PepperDash.Essentials.Core.Lighting { /// /// Represents a LightingScene /// public class LightingScene { [JsonProperty("name", NullValueHandling = NullValueHandling.Ignore)] /// /// Gets or sets the Name /// public string Name { get; set; } [JsonProperty("id", NullValueHandling = NullValueHandling.Ignore)] /// /// Gets or sets the ID /// public string ID { get; set; } bool _IsActive; [JsonProperty("isActive", NullValueHandling = NullValueHandling.Ignore)] public bool IsActive { get { return _IsActive; } set { _IsActive = value; IsActiveFeedback.FireUpdate(); } } [JsonProperty("sortOrder", NullValueHandling = NullValueHandling.Ignore)] /// /// Gets or sets the SortOrder /// public int SortOrder { get; set; } [JsonIgnore] /// /// Gets or sets the IsActiveFeedback /// public BoolFeedback IsActiveFeedback { get; set; } public LightingScene() { IsActiveFeedback = new BoolFeedback(new Func(() => IsActive)); } } }