376, 377, 383. Resolving multi UI-sync issues

This commit is contained in:
Heath Volmer
2017-08-23 20:14:23 -06:00
parent 2c8259e350
commit f87e0a7888
7 changed files with 23 additions and 37 deletions

View File

@@ -78,6 +78,11 @@ namespace PepperDash.Essentials
} }
EssentialsHuddleSpaceRoom _CurrentRoom; EssentialsHuddleSpaceRoom _CurrentRoom;
/// <summary>
///
/// </summary>
uint CurrentInterlockedModalJoin;
/// <summary> /// <summary>
/// For hitting feedback /// For hitting feedback
/// </summary> /// </summary>
@@ -140,6 +145,8 @@ namespace PepperDash.Essentials
/// </summary> /// </summary>
CTimer PowerOffTimer; CTimer PowerOffTimer;
ModalDialog PowerDownModal;
ModalDialog WarmingCoolingModal; ModalDialog WarmingCoolingModal;
/// <summary> /// <summary>
@@ -338,17 +345,12 @@ namespace PepperDash.Essentials
/// </summary> /// </summary>
void ShareButtonPressed() void ShareButtonPressed()
{ {
//if (!_CurrentRoom.OnFeedback.BoolValue) ShareButtonSig.BoolValue = true;
//{ TriList.BooleanInput[UIBoolJoin.StartPageVisible].BoolValue = false;
ShareButtonSig.BoolValue = true; TriList.BooleanInput[UIBoolJoin.StagingPageVisible].BoolValue = true;
TriList.BooleanInput[UIBoolJoin.StartPageVisible].BoolValue = false; TriList.BooleanInput[UIBoolJoin.SelectASourceVisible].BoolValue = true;
TriList.BooleanInput[UIBoolJoin.StagingPageVisible].BoolValue = true;
TriList.BooleanInput[UIBoolJoin.SelectASourceVisible].BoolValue = true;
//}
} }
uint CurrentInterlockedModalJoin;
void ShowInterlockedModal(uint join) void ShowInterlockedModal(uint join)
{ {
if (CurrentInterlockedModalJoin == join) if (CurrentInterlockedModalJoin == join)
@@ -458,8 +460,8 @@ namespace PepperDash.Essentials
/// </summary> /// </summary>
public void PowerButtonPressed() public void PowerButtonPressed()
{ {
var room = CurrentRoom; if (!CurrentRoom.OnFeedback.BoolValue
if (!room.OnFeedback.BoolValue || room.ShutdownPromptTimer.IsRunningFeedback.BoolValue) || CurrentRoom.ShutdownPromptTimer.IsRunningFeedback.BoolValue)
return; return;
CurrentRoom.StartShutdown(ShutdownType.Manual); CurrentRoom.StartShutdown(ShutdownType.Manual);
@@ -472,7 +474,6 @@ namespace PepperDash.Essentials
/// <param name="e"></param> /// <param name="e"></param>
void ShutdownPromptTimer_HasStarted(object sender, EventArgs e) void ShutdownPromptTimer_HasStarted(object sender, EventArgs e)
{ {
// Do we need to check where the UI is? No? // Do we need to check where the UI is? No?
var timer = CurrentRoom.ShutdownPromptTimer; var timer = CurrentRoom.ShutdownPromptTimer;
EndMeetingButtonSig.BoolValue = true; EndMeetingButtonSig.BoolValue = true;
@@ -480,7 +481,7 @@ namespace PepperDash.Essentials
if (CurrentRoom.ShutdownType == ShutdownType.Manual) if (CurrentRoom.ShutdownType == ShutdownType.Manual)
{ {
var modal = new ModalDialog(TriList); PowerDownModal = new ModalDialog(TriList);
var message = string.Format("Meeting will end in {0} seconds", CurrentRoom.ShutdownPromptSeconds); var message = string.Format("Meeting will end in {0} seconds", CurrentRoom.ShutdownPromptSeconds);
// figure out a cleaner way to update gauge // figure out a cleaner way to update gauge
@@ -498,14 +499,14 @@ namespace PepperDash.Essentials
if (!onFb.BoolValue) if (!onFb.BoolValue)
{ {
EndMeetingButtonSig.BoolValue = false; EndMeetingButtonSig.BoolValue = false;
modal.HideDialog(); PowerDownModal.HideDialog();
onFb.OutputChange -= offHandler; onFb.OutputChange -= offHandler;
gauge.OutputChange -= gaugeHandler; gauge.OutputChange -= gaugeHandler;
} }
}; };
onFb.OutputChange += offHandler; onFb.OutputChange += offHandler;
modal.PresentModalDialog(2, "End Meeting", "Power", message, "Cancel", "End Meeting Now", true, true, PowerDownModal.PresentModalDialog(2, "End Meeting", "Power", message, "Cancel", "End Meeting Now", true, true,
but => but =>
{ {
if (but != 2) // any button except for End cancels if (but != 2) // any button except for End cancels
@@ -535,7 +536,10 @@ namespace PepperDash.Essentials
void ShutdownPromptTimer_WasCancelled(object sender, EventArgs e) void ShutdownPromptTimer_WasCancelled(object sender, EventArgs e)
{ {
Debug.Console(2, "UI shutdown prompt cancelled"); Debug.Console(2, "UI shutdown prompt cancelled");
ShareButtonSig.BoolValue = true; // restore Share fb if (PowerDownModal != null)
PowerDownModal.HideDialog();
//CurrentRoom_SyncOnFeedback();
//ShareButtonSig.BoolValue = true; // restore Share fb
EndMeetingButtonSig.BoolValue = false; EndMeetingButtonSig.BoolValue = false;
} }
@@ -551,27 +555,6 @@ namespace PepperDash.Essentials
} }
} }
/// <summary>
/// Runs the power off function on the current room
/// </summary>
//public void FinishPowerOff()
//{
// if (CurrentRoom == null)
// return;
// CurrentRoom.RunRouteAction("roomOff");
// CancelPowerOff();
//}
/// <summary>
/// Hides power off pages and stops timer
/// </summary>
//void CancelPowerOff()
//{
// CancelPowerOffTimer();
// TriList.BooleanInput[UIBoolJoin.PowerOffStep1Visible].BoolValue = false;
// TriList.BooleanInput[UIBoolJoin.PowerOffStep2Visible].BoolValue = false;
//}
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>
@@ -710,9 +693,12 @@ namespace PepperDash.Essentials
var value = _CurrentRoom.OnFeedback.BoolValue; var value = _CurrentRoom.OnFeedback.BoolValue;
Debug.Console(2, CurrentRoom, "UI: Is on event={0}", value); Debug.Console(2, CurrentRoom, "UI: Is on event={0}", value);
TriList.BooleanInput[UIBoolJoin.RoomIsOn].BoolValue = value; TriList.BooleanInput[UIBoolJoin.RoomIsOn].BoolValue = value;
if (value) //ON if (value) //ON
{ {
SetupActivityFooterWhenRoomOn(); SetupActivityFooterWhenRoomOn();
TriList.BooleanInput[UIBoolJoin.SelectASourceVisible].BoolValue = false;
TriList.BooleanInput[UIBoolJoin.StagingPageVisible].BoolValue = true;
TriList.BooleanInput[UIBoolJoin.StartPageVisible].BoolValue = false; TriList.BooleanInput[UIBoolJoin.StartPageVisible].BoolValue = false;
TriList.BooleanInput[UIBoolJoin.VolumeSingleMute1Visible].BoolValue = true; TriList.BooleanInput[UIBoolJoin.VolumeSingleMute1Visible].BoolValue = true;
} }