From ddb1f254e611460fe4a8007d3dd08cc8ab22f111 Mon Sep 17 00:00:00 2001 From: Andrew Welker Date: Tue, 30 Jun 2020 00:34:24 -0600 Subject: [PATCH] renamed room -> rooms started on Dual Display room; --- .../PepperDashEssentials.csproj | 3 + .../Room/Types/EssentialsDualDisplayRoom.cs | 22 -- .../RoomOnToDefaultSourceWhenOccupied.cs | 0 .../Config/DDVC01RoomPropertiesConfig.cs | 0 ...sentialsDualDisplayRoomPropertiesConfig.cs | 0 .../EssentialsHuddleRoomPropertiesConfig.cs | 0 .../EssentialsHuddleVtc1PropertiesConfig.cs | 0 .../EssentialsNDisplayRoomPropertiesConfig.cs | 11 +- .../EssentialsPresentationPropertiesConfig.cs | 0 .../Config/EssentialsRoomConfig.cs | 0 .../Config/EssentialsRoomEmergencyConfig.cs | 0 .../Config/EssentialsVolumeLevelConfig.cs | 0 .../EsentialsRoomEmergencyContactClosure.cs | 0 .../{Room => Rooms}/EssentialsRoomBase.cs | 2 + .../{Room => Rooms}/Interfaces.cs | 0 .../{Room => Rooms}/Room.cs | 0 .../Rooms/Types/EssentialsDualDisplayRoom.cs | 192 ++++++++++++++++++ .../Types/EssentialsHuddleSpaceRoom.cs | 2 +- .../Types/EssentialsHuddleVtc1Room.cs | 0 .../Types/EssentialsNDisplayRoomBase.cs | 0 .../iOccupancyStatusProvider.cs | 0 .../SubpageReferenceList.cs | 3 +- 22 files changed, 201 insertions(+), 34 deletions(-) delete mode 100644 essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Types/EssentialsDualDisplayRoom.cs rename essentials-framework/Essentials Core/PepperDashEssentialsBase/{Room => Rooms}/Behaviours/RoomOnToDefaultSourceWhenOccupied.cs (100%) rename essentials-framework/Essentials Core/PepperDashEssentialsBase/{Room => Rooms}/Config/DDVC01RoomPropertiesConfig.cs (100%) rename essentials-framework/Essentials Core/PepperDashEssentialsBase/{Room => Rooms}/Config/EssentialsDualDisplayRoomPropertiesConfig.cs (100%) rename essentials-framework/Essentials Core/PepperDashEssentialsBase/{Room => Rooms}/Config/EssentialsHuddleRoomPropertiesConfig.cs (100%) rename essentials-framework/Essentials Core/PepperDashEssentialsBase/{Room => Rooms}/Config/EssentialsHuddleVtc1PropertiesConfig.cs (100%) rename essentials-framework/Essentials Core/PepperDashEssentialsBase/{Room => Rooms}/Config/EssentialsNDisplayRoomPropertiesConfig.cs (70%) rename essentials-framework/Essentials Core/PepperDashEssentialsBase/{Room => Rooms}/Config/EssentialsPresentationPropertiesConfig.cs (100%) rename essentials-framework/Essentials Core/PepperDashEssentialsBase/{Room => Rooms}/Config/EssentialsRoomConfig.cs (100%) rename essentials-framework/Essentials Core/PepperDashEssentialsBase/{Room => Rooms}/Config/EssentialsRoomEmergencyConfig.cs (100%) rename essentials-framework/Essentials Core/PepperDashEssentialsBase/{Room => Rooms}/Config/EssentialsVolumeLevelConfig.cs (100%) rename essentials-framework/Essentials Core/PepperDashEssentialsBase/{Room => Rooms}/Emergency/EsentialsRoomEmergencyContactClosure.cs (100%) rename essentials-framework/Essentials Core/PepperDashEssentialsBase/{Room => Rooms}/EssentialsRoomBase.cs (99%) rename essentials-framework/Essentials Core/PepperDashEssentialsBase/{Room => Rooms}/Interfaces.cs (100%) rename essentials-framework/Essentials Core/PepperDashEssentialsBase/{Room => Rooms}/Room.cs (100%) create mode 100644 essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Types/EssentialsDualDisplayRoom.cs rename essentials-framework/Essentials Core/PepperDashEssentialsBase/{Room => Rooms}/Types/EssentialsHuddleSpaceRoom.cs (99%) rename essentials-framework/Essentials Core/PepperDashEssentialsBase/{Room => Rooms}/Types/EssentialsHuddleVtc1Room.cs (100%) rename essentials-framework/Essentials Core/PepperDashEssentialsBase/{Room => Rooms}/Types/EssentialsNDisplayRoomBase.cs (100%) rename essentials-framework/Essentials Core/PepperDashEssentialsBase/{Room => Rooms}/iOccupancyStatusProvider.cs (100%) diff --git a/PepperDashEssentials/PepperDashEssentials.csproj b/PepperDashEssentials/PepperDashEssentials.csproj index d215f64e..758542d4 100644 --- a/PepperDashEssentials/PepperDashEssentials.csproj +++ b/PepperDashEssentials/PepperDashEssentials.csproj @@ -233,6 +233,9 @@ Essentials Devices Common + + + diff --git a/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Types/EssentialsDualDisplayRoom.cs b/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Types/EssentialsDualDisplayRoom.cs deleted file mode 100644 index f93b579e..00000000 --- a/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Types/EssentialsDualDisplayRoom.cs +++ /dev/null @@ -1,22 +0,0 @@ -using System; -using System.Linq; -using Crestron.SimplSharp; - -using Newtonsoft.Json; - -using PepperDash.Core; -using PepperDash.Essentials.Core; -using PepperDash.Essentials.Core.Config; -using PepperDash.Essentials.Core.Rooms; -using PepperDash.Essentials.Core.Rooms.Config; -using PepperDash.Essentials.Core.Devices.Codec; -using PepperDash.Essentials.Core.Devices.VideoCodec; -using PepperDash.Essentials.Core.Devices.AudioCodec; - -namespace PepperDash.Essentials -{ - public class EssentialsDualDisplayRoom - { - - } -} \ No newline at end of file diff --git a/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Behaviours/RoomOnToDefaultSourceWhenOccupied.cs b/essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Behaviours/RoomOnToDefaultSourceWhenOccupied.cs similarity index 100% rename from essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Behaviours/RoomOnToDefaultSourceWhenOccupied.cs rename to essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Behaviours/RoomOnToDefaultSourceWhenOccupied.cs diff --git a/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Config/DDVC01RoomPropertiesConfig.cs b/essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Config/DDVC01RoomPropertiesConfig.cs similarity index 100% rename from essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Config/DDVC01RoomPropertiesConfig.cs rename to essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Config/DDVC01RoomPropertiesConfig.cs diff --git a/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Config/EssentialsDualDisplayRoomPropertiesConfig.cs b/essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Config/EssentialsDualDisplayRoomPropertiesConfig.cs similarity index 100% rename from essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Config/EssentialsDualDisplayRoomPropertiesConfig.cs rename to essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Config/EssentialsDualDisplayRoomPropertiesConfig.cs diff --git a/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Config/EssentialsHuddleRoomPropertiesConfig.cs b/essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Config/EssentialsHuddleRoomPropertiesConfig.cs similarity index 100% rename from essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Config/EssentialsHuddleRoomPropertiesConfig.cs rename to essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Config/EssentialsHuddleRoomPropertiesConfig.cs diff --git a/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Config/EssentialsHuddleVtc1PropertiesConfig.cs b/essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Config/EssentialsHuddleVtc1PropertiesConfig.cs similarity index 100% rename from essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Config/EssentialsHuddleVtc1PropertiesConfig.cs rename to essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Config/EssentialsHuddleVtc1PropertiesConfig.cs diff --git a/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Config/EssentialsNDisplayRoomPropertiesConfig.cs b/essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Config/EssentialsNDisplayRoomPropertiesConfig.cs similarity index 70% rename from essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Config/EssentialsNDisplayRoomPropertiesConfig.cs rename to essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Config/EssentialsNDisplayRoomPropertiesConfig.cs index 30d1ea38..4678574a 100644 --- a/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Config/EssentialsNDisplayRoomPropertiesConfig.cs +++ b/essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Config/EssentialsNDisplayRoomPropertiesConfig.cs @@ -16,14 +16,8 @@ namespace PepperDash.Essentials.Core.Rooms.Config public string DefaultAudioBehavior { get; set; } [JsonProperty("defaultVideoBehavior")] public string DefaultVideoBehavior { get; set; } - [JsonProperty("displays")] - public Dictionary Displays { get; set; } - - public EssentialsNDisplayRoomPropertiesConfig() - { - Displays = new Dictionary(); - } - + [JsonProperty("destinationListKey")] + public string DestinationListKey { get; set; } } public class DisplayItem : IKeyName @@ -31,5 +25,4 @@ namespace PepperDash.Essentials.Core.Rooms.Config public string Key { get; set; } public string Name { get; set; } } - } \ No newline at end of file diff --git a/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Config/EssentialsPresentationPropertiesConfig.cs b/essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Config/EssentialsPresentationPropertiesConfig.cs similarity index 100% rename from essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Config/EssentialsPresentationPropertiesConfig.cs rename to essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Config/EssentialsPresentationPropertiesConfig.cs diff --git a/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Config/EssentialsRoomConfig.cs b/essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Config/EssentialsRoomConfig.cs similarity index 100% rename from essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Config/EssentialsRoomConfig.cs rename to essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Config/EssentialsRoomConfig.cs diff --git a/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Config/EssentialsRoomEmergencyConfig.cs b/essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Config/EssentialsRoomEmergencyConfig.cs similarity index 100% rename from essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Config/EssentialsRoomEmergencyConfig.cs rename to essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Config/EssentialsRoomEmergencyConfig.cs diff --git a/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Config/EssentialsVolumeLevelConfig.cs b/essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Config/EssentialsVolumeLevelConfig.cs similarity index 100% rename from essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Config/EssentialsVolumeLevelConfig.cs rename to essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Config/EssentialsVolumeLevelConfig.cs diff --git a/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Emergency/EsentialsRoomEmergencyContactClosure.cs b/essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Emergency/EsentialsRoomEmergencyContactClosure.cs similarity index 100% rename from essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Emergency/EsentialsRoomEmergencyContactClosure.cs rename to essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Emergency/EsentialsRoomEmergencyContactClosure.cs diff --git a/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/EssentialsRoomBase.cs b/essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/EssentialsRoomBase.cs similarity index 99% rename from essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/EssentialsRoomBase.cs rename to essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/EssentialsRoomBase.cs index 901bc52d..d5d77fe4 100644 --- a/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/EssentialsRoomBase.cs +++ b/essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/EssentialsRoomBase.cs @@ -47,6 +47,8 @@ namespace PepperDash.Essentials.Core /// public bool EnablePowerOnToLastSource { get; set; } + public const string DefaultSourceListKey = "default"; + protected EssentialsRoomBase(DeviceConfig config) : base(config) { diff --git a/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Interfaces.cs b/essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Interfaces.cs similarity index 100% rename from essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Interfaces.cs rename to essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Interfaces.cs diff --git a/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Room.cs b/essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Room.cs similarity index 100% rename from essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Room.cs rename to essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Room.cs diff --git a/essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Types/EssentialsDualDisplayRoom.cs b/essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Types/EssentialsDualDisplayRoom.cs new file mode 100644 index 00000000..8e0c05f7 --- /dev/null +++ b/essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Types/EssentialsDualDisplayRoom.cs @@ -0,0 +1,192 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using PepperDash.Core; +using PepperDash.Essentials.Core; +using PepperDash.Essentials.Core.Config; +using PepperDash.Essentials.Core.Rooms.Config; +using PepperDash_Essentials_Core.Devices; + +namespace PepperDash.Essentials +{ + public class EssentialsDualDisplayRoom : EssentialsRoomBase + { + public const string DefaultDestinationListKey = "default"; + private const string LeftDestinationKey = "leftDisplay"; + private const string RightDestinationKey = "rightDisplay"; + private readonly EssentialsDualDisplayRoomPropertiesConfig _config; + + private string _destinationListKey; + + public EssentialsDualDisplayRoom(DeviceConfig config) : base(config) + { + _config = config.Properties.ToObject(); + + DefaultDisplay = DeviceManager.GetDeviceForKey(_config.DefaultDisplayKey) as IRoutingSinkWithSwitching; + DefaultAudioDevice = DeviceManager.GetDeviceForKey(_config.DefaultAudioKey) as IRoutingSinkWithSwitching; + + Initialize(); + } + + public Dictionary DestinationList { get; private set; } + + public BoolFeedback LeftDisplayIsWarmingUpFeedback { get; private set; } + public BoolFeedback RightDisplayIsWarmingUpFeedback { get; private set; } + public BoolFeedback LeftDisplayIsCoolingDownFeedback { get; private set; } + public BoolFeedback RightDisplayIsCoolingDownFeedback { get; private set; } + + public IRoutingSinkWithSwitching LeftDisplay { get; private set; } + public IRoutingSinkWithSwitching RightDisplay { get; private set; } + + private void Initialize() + { + if (DefaultAudioDevice is IBasicVolumeControls) + { + DefaultVolumeControls = DefaultAudioDevice as IBasicVolumeControls; + } + else if (DefaultAudioDevice is IHasVolumeDevice) + { + DefaultVolumeControls = (DefaultAudioDevice as IHasVolumeDevice).VolumeDevice; + } + + CurrentVolumeControls = DefaultVolumeControls; + + _destinationListKey = String.IsNullOrEmpty(_config.DestinationListKey) + ? DefaultDestinationListKey + : _config.DestinationListKey; + + SourceListKey = String.IsNullOrEmpty(_config.SourceListKey) ? DefaultSourceListKey : _config.SourceListKey; + + InitializeDestinations(); + } + + private void InitializeDestinations() + { + DestinationList = ConfigReader.ConfigObject.GetDestinationListForKey(_destinationListKey); + + if (DestinationList == null) + { + Debug.Console(0, Debug.ErrorLogLevel.Error, "No destination list with key {0} found", + _destinationListKey); + return; + } + + //left destination is defined as the display on the 0 surface, at location 0,0 (h, v) + var leftDest = GetDestinationForKey(LeftDestinationKey); + + //not found by key, check by expected location + if (leftDest == null) + { + DestinationList.Values.FirstOrDefault( + (li) => li.SurfaceLocation == 0 && li.HorizontalLocation == 0 && li.VerticalLocation == 0); + } + + //right destination is defined as the display on the 0 surface, at location 0,0 (h, v) + var rightDest = GetDestinationForKey(RightDestinationKey); + + //not found by key, check by expected location + if (rightDest == null) + { + DestinationList.Values.FirstOrDefault( + (li) => li.SurfaceLocation == 0 && li.HorizontalLocation == 1 && li.VerticalLocation == 0); + } + + if (leftDest == null || rightDest == null) + { + Debug.Console(0, Debug.ErrorLogLevel.Error, "Dual destinations not defined. Please check configuration"); + return; + } + + var leftDisplay = leftDest.SinkDevice as DisplayBase; + var rightDisplay = rightDest.SinkDevice as DisplayBase; + + if (leftDisplay == null || rightDisplay == null) + { + Debug.Console(0, Debug.ErrorLogLevel.Error, + "Display for key {0} && key {1} not found. Please check configurattion"); + Debug.Console(0, Debug.ErrorLogLevel.Error, "LeftDisplay: {0}\r\nRightDisplay: {1}", leftDest.SinkKey, + rightDest.SinkKey); + + return; + } + + //need displays as DisplayBase later instead of IRoutingSinkWithSwtich + LeftDisplay = leftDisplay; + RightDisplay = rightDisplay; + + //TODO: Check this definition for on for dual display rooms + OnFeedbackFunc = () => CurrentSourceInfo != null && CurrentSourceInfo.Type == eSourceListItemType.Route; + + IsWarmingFeedbackFunc = + () => leftDisplay.IsWarmingUpFeedback.BoolValue || rightDisplay.IsWarmingUpFeedback.BoolValue; + + IsCoolingFeedbackFunc = () => leftDisplay.IsWarmingUpFeedback.BoolValue || + rightDisplay.IsCoolingDownFeedback.BoolValue; + + LeftDisplayIsWarmingUpFeedback = new BoolFeedback(() => leftDisplay.IsWarmingUpFeedback.BoolValue); + LeftDisplayIsCoolingDownFeedback = new BoolFeedback(() => leftDisplay.IsCoolingDownFeedback.BoolValue); + + + RightDisplayIsWarmingUpFeedback = new BoolFeedback(() => rightDisplay.IsWarmingUpFeedback.BoolValue); + RightDisplayIsCoolingDownFeedback = new BoolFeedback(() => rightDisplay.IsCoolingDownFeedback.BoolValue); + + InitializeDisplay(leftDisplay); + InitializeDisplay(rightDisplay); + } + + private DestinationListItem GetDestinationForKey(string key) + { + DestinationListItem returnValue; + + DestinationList.TryGetValue(key, out returnValue); + + return returnValue; + } + + + protected override void IsCoolingDownFeedbackOnOutputChange(object sender, FeedbackEventArgs args) + { + IsCoolingDownFeedback.FireUpdate(); + LeftDisplayIsCoolingDownFeedback.FireUpdate(); + RightDisplayIsCoolingDownFeedback.FireUpdate(); + } + + public override void RoomVacatedForTimeoutPeriod(object o) + { + throw new NotImplementedException(); + } + + + protected override void IsWarmingUpFeedbackOnOutputChange(object sender, FeedbackEventArgs args) + { + IsWarmingUpFeedback.FireUpdate(); + LeftDisplayIsWarmingUpFeedback.FireUpdate(); + RightDisplayIsWarmingUpFeedback.FireUpdate(); + } + + protected override void PowerIsOnFeedbackOnOutputChange(object sender, FeedbackEventArgs args) + { + var ld = LeftDisplay as DisplayBase; + var rd = RightDisplay as DisplayBase; + + if (ld == null || rd == null) + { + return; + } + + //if room is already on and either display is still on, no need to fire update + if (OnFeedback.BoolValue && (ld.PowerIsOnFeedback.BoolValue || rd.PowerIsOnFeedback.BoolValue)) + { + return; + } + + //if both displays are off, room is off, clear the current source + if (!ld.PowerIsOnFeedback.BoolValue && !rd.PowerIsOnFeedback.BoolValue) + { + CurrentSourceInfo = null; + } + + OnFeedback.FireUpdate(); + } + } +} \ No newline at end of file diff --git a/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Types/EssentialsHuddleSpaceRoom.cs b/essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Types/EssentialsHuddleSpaceRoom.cs similarity index 99% rename from essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Types/EssentialsHuddleSpaceRoom.cs rename to essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Types/EssentialsHuddleSpaceRoom.cs index b36039f4..eb332e98 100644 --- a/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Types/EssentialsHuddleSpaceRoom.cs +++ b/essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Types/EssentialsHuddleSpaceRoom.cs @@ -47,7 +47,7 @@ namespace PepperDash.Essentials CurrentVolumeControls = DefaultVolumeControls; SourceListKey = String.IsNullOrEmpty(PropertiesConfig.SourceListKey) - ? "default" + ? DefaultSourceListKey : PropertiesConfig.SourceListKey; EnablePowerOnToLastSource = true; diff --git a/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Types/EssentialsHuddleVtc1Room.cs b/essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Types/EssentialsHuddleVtc1Room.cs similarity index 100% rename from essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Types/EssentialsHuddleVtc1Room.cs rename to essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Types/EssentialsHuddleVtc1Room.cs diff --git a/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Types/EssentialsNDisplayRoomBase.cs b/essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Types/EssentialsNDisplayRoomBase.cs similarity index 100% rename from essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/Types/EssentialsNDisplayRoomBase.cs rename to essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/Types/EssentialsNDisplayRoomBase.cs diff --git a/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/iOccupancyStatusProvider.cs b/essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/iOccupancyStatusProvider.cs similarity index 100% rename from essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/iOccupancyStatusProvider.cs rename to essentials-framework/Essentials Core/PepperDashEssentialsBase/Rooms/iOccupancyStatusProvider.cs diff --git a/essentials-framework/Essentials Core/PepperDashEssentialsBase/SmartObjects/SubpageReferencList/SubpageReferenceList.cs b/essentials-framework/Essentials Core/PepperDashEssentialsBase/SmartObjects/SubpageReferencList/SubpageReferenceList.cs index fe69e4ca..720d1c6e 100644 --- a/essentials-framework/Essentials Core/PepperDashEssentialsBase/SmartObjects/SubpageReferencList/SubpageReferenceList.cs +++ b/essentials-framework/Essentials Core/PepperDashEssentialsBase/SmartObjects/SubpageReferencList/SubpageReferenceList.cs @@ -66,8 +66,7 @@ namespace PepperDash.Essentials.Core StringIncrement = stringIncrement; // Count the enable lines to see what max items is - MaxDefinedItems = (ushort)SRL.BooleanInput - .Where(s => s.Name.Contains("Enable")).Count(); + MaxDefinedItems = (ushort)SRL.BooleanInput.Count(s => s.Name.Contains("Enable")); Debug.Console(2, "SRL {0} contains max {1} items", SRL.ID, MaxDefinedItems); SRL.SigChange -= new SmartObjectSigChangeEventHandler(SRL_SigChange);