Strange issue in HeaderDriver.SetupHeaderButtons with avDriver being null. Need to investigate further

This commit is contained in:
Neil Dorin
2018-05-17 14:42:57 -06:00
parent c88b259c71
commit 0de4fbb69c
4 changed files with 30 additions and 15 deletions

View File

@@ -36,7 +36,7 @@ namespace PepperDash.Essentials
var room = DeviceManager.GetDeviceForKey(props.DefaultRoomKey);
if (room is EssentialsHuddleSpaceRoom)
{
Debug.Console(0, panelController, "Adding huddle space driver");
Debug.Console(0, panelController, "Adding huddle space AV driver");
// Header Driver
mainDriver.HeaderDriver = new EssentialsHeaderDriver(mainDriver, props);
@@ -49,7 +49,10 @@ namespace PepperDash.Essentials
// Environment Driver
if (avDriver.CurrentRoom.Config.Environment != null && avDriver.CurrentRoom.Config.Environment.DeviceKeys.Count > 0)
{
Debug.Console(0, panelController, "Adding environment driver");
mainDriver.EnvironmentDriver = new EssentialsEnvironmentDriver(mainDriver, props);
}
panelController.LoadAndShowDriver(mainDriver); // This is a little convoluted.
@@ -85,7 +88,7 @@ namespace PepperDash.Essentials
//}
else if (room is EssentialsHuddleVtc1Room)
{
Debug.Console(0, panelController, "Adding huddle space driver");
Debug.Console(0, panelController, "Adding huddle space VTC AV driver");
// Header Driver
mainDriver.HeaderDriver = new EssentialsHeaderDriver(mainDriver, props);
@@ -102,7 +105,10 @@ namespace PepperDash.Essentials
// Environment Driver
if (avDriver.CurrentRoom.Config.Environment != null && avDriver.CurrentRoom.Config.Environment.DeviceKeys.Count > 0)
{
Debug.Console(0, panelController, "Adding environment driver");
mainDriver.EnvironmentDriver = new EssentialsEnvironmentDriver(mainDriver, props);
}
panelController.LoadAndShowDriver(mainDriver); // This is a little convoluted.

View File

@@ -50,7 +50,7 @@ namespace PepperDash.Essentials
// Gear
TriList.SetString(UIStringJoin.HeaderButtonIcon5, "Gear");
TriList.SetSigHeldAction(UIBoolJoin.HeaderIcon5Press, 2000,
Parent.AvDriver.ShowTech,
avDriver.ShowTech,
null,
() =>
{
@@ -98,6 +98,19 @@ namespace PepperDash.Essentials
});
}
uint SetUpEnvironmentButton(EssentialsEnvironmentDriver environmentDriver, uint nextJoin)
{
if (environmentDriver != null)
{
TriList.SetString(nextJoin, "Lights");
TriList.SetSigFalseAction(nextJoin, environmentDriver.Show);
return nextJoin--;
}
else
return nextJoin;
}
uint SetUpCalendarButton(EssentialsHuddleVtc1PanelAvFunctionsDriver avDriver, uint nextJoin)
{
// Calendar button
@@ -185,6 +198,8 @@ namespace PepperDash.Essentials
uint nextJoin = 3953;
nextJoin = SetUpEnvironmentButton(Parent.EnvironmentDriver, nextJoin);
nextJoin = SetUpCalendarButton(avDriver, nextJoin);
nextJoin = SetUpCallButton(avDriver, nextJoin);
@@ -218,8 +233,12 @@ namespace PepperDash.Essentials
ComputeHeaderCallStatus(currentRoom.VideoCodec);
}
/// <summary>
/// Sets up Header Buttons for the EssentialsHuddleSpaceRoom type
/// </summary>
public void SetupHeaderButtons(EssentialsHuddleSpaceRoom currentRoom)
{
#warning This is returning avDriver as null
var avDriver = Parent.AvDriver as EssentialsHuddlePanelAvFunctionsDriver;
HeaderButtonsAreSetUp = false;
@@ -228,23 +247,13 @@ namespace PepperDash.Essentials
var roomConf = currentRoom.Config;
//SetUpGear(avDriver, currentRoom);
SetUpGear(avDriver, currentRoom);
SetUpHelpButton(roomConf);
uint nextJoin = 3953;
//// Calendar button
//if (_CurrentRoom.ScheduleSource != null)
//{
// TriList.SetString(nextJoin, "Calendar");
// TriList.SetSigFalseAction(nextJoin, CalendarPress);
// nextJoin--;
//}
//nextJoin--;
nextJoin = SetUpEnvironmentButton(Parent.EnvironmentDriver, nextJoin);
// blank any that remain
for (var i = nextJoin; i > 3950; i--)