fix: add nullable props where necessary

This commit is contained in:
Andrew Welker
2024-05-28 14:43:31 -05:00
parent 00a7b25026
commit cc06c7bfd8
3 changed files with 23 additions and 20 deletions

View File

@@ -23,16 +23,16 @@ namespace PepperDash.Essentials.Core
public string ProjectName { get; set; }
[JsonProperty("showVolumeGauge", NullValueHandling = NullValueHandling.Ignore)]
public bool ShowVolumeGauge { get; set; }
public bool? ShowVolumeGauge { get; set; }
[JsonProperty("usesSplashPage", NullValueHandling = NullValueHandling.Ignore)]
public bool UsesSplashPage { get; set; }
public bool? UsesSplashPage { get; set; }
[JsonProperty("showDate", NullValueHandling = NullValueHandling.Ignore)]
public bool ShowDate { get; set; }
public bool? ShowDate { get; set; }
[JsonProperty("showTime", NullValueHandling = NullValueHandling.Ignore)]
public bool ShowTime { get; set; }
public bool? ShowTime { get; set; }
[JsonProperty("setup", NullValueHandling = NullValueHandling.Ignore)]
public UiSetupPropertiesConfig Setup { get; set; }
@@ -41,13 +41,13 @@ namespace PepperDash.Essentials.Core
public string HeaderStyle { get; set; }
[JsonProperty("includeInFusionRoomHealth", NullValueHandling = NullValueHandling.Ignore)]
public bool IncludeInFusionRoomHealth { get; set; }
public bool? IncludeInFusionRoomHealth { get; set; }
[JsonProperty("screenSaverTimeoutMin", NullValueHandling = NullValueHandling.Ignore)]
public uint ScreenSaverTimeoutMin { get; set; }
public uint? ScreenSaverTimeoutMin { get; set; }
[JsonProperty("screenSaverMovePositionIntervalMs", NullValueHandling = NullValueHandling.Ignore)]
public uint ScreenSaverMovePositionIntervalMs { get; set; }
public uint? ScreenSaverMovePositionIntervalMs { get; set; }
/// <summary>
@@ -55,17 +55,20 @@ namespace PepperDash.Essentials.Core
/// Defaults to 5
/// </summary>
[JsonProperty("sourcesOverflowCount", NullValueHandling = NullValueHandling.Ignore)]
public int SourcesOverflowCount { get; set; }
public int? SourcesOverflowCount { get; set; }
public CrestronTouchpanelPropertiesConfig()
public CrestronTouchpanelPropertiesConfig() : this(false) { }
public CrestronTouchpanelPropertiesConfig(bool setDefaultValues = false)
{
if(!setDefaultValues) { return; }
SourcesOverflowCount = 5;
HeaderStyle = CrestronTouchpanelPropertiesConfig.Habanero;
HeaderStyle = Habanero;
// Default values
ScreenSaverTimeoutMin = 5;
ScreenSaverMovePositionIntervalMs = 15000;
}
}
/// <summary>
/// "habanero"