mirror of
https://github.com/PepperDash/Essentials.git
synced 2026-04-12 20:17:03 +00:00
feat(RoomCombining): #742 Updates EssentialsTouchpanelController
Will now switch room the TP is linked to based on room combination scenario
This commit is contained in:
parent
6542c062b9
commit
7114e60c04
5 changed files with 248 additions and 130 deletions
|
|
@ -11,7 +11,7 @@ namespace PepperDash.Essentials
|
|||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public class EssentialsPanelMainInterfaceDriver : PanelDriverBase, IHasScreenSaverController
|
||||
public class EssentialsPanelMainInterfaceDriver : PanelDriverBase, IHasScreenSaverController, IDisposable
|
||||
{
|
||||
CTimer InactivityTimer;
|
||||
|
||||
|
|
@ -69,6 +69,35 @@ namespace PepperDash.Essentials
|
|||
}
|
||||
}
|
||||
|
||||
#region IDisposable Members
|
||||
|
||||
public void Dispose()
|
||||
{
|
||||
var avDriver = AvDriver as PanelDriverBase;
|
||||
if (avDriver != null)
|
||||
{
|
||||
avDriver.Hide();
|
||||
}
|
||||
if (ScreenSaverController != null)
|
||||
{
|
||||
ScreenSaverController.Dispose();
|
||||
}
|
||||
if (HeaderDriver != null)
|
||||
{
|
||||
HeaderDriver.Hide();
|
||||
}
|
||||
if (EnvironmentDriver != null)
|
||||
{
|
||||
EnvironmentDriver.Hide();
|
||||
}
|
||||
if (CurrentChildDriver != null)
|
||||
{
|
||||
CurrentChildDriver.Hide();
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
void ExtenderTouchDetectionReservedSigs_DeviceExtenderSigChange(Crestron.SimplSharpPro.DeviceExtender currentDeviceExtender, Crestron.SimplSharpPro.SigEventArgs args)
|
||||
{
|
||||
|
||||
|
|
@ -130,7 +159,7 @@ namespace PepperDash.Essentials
|
|||
if(CurrentChildDriver != null)
|
||||
CurrentChildDriver.BackButtonPressed();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public interface IHasScreenSaverController
|
||||
{
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ namespace PepperDash.Essentials
|
|||
/// <summary>
|
||||
/// Driver responsible for controlling the screenshaver showing the client logo, MC connection information and QR Code. Moves the elements around to prevent screen burn in
|
||||
/// </summary>
|
||||
public class ScreenSaverController : PanelDriverBase
|
||||
public class ScreenSaverController : PanelDriverBase, IDisposable
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
|
|
@ -65,7 +65,7 @@ namespace PepperDash.Essentials
|
|||
|
||||
public override void Hide()
|
||||
{
|
||||
Debug.Console(1, "Hiding ScreenSaverController");
|
||||
Debug.Console(2, "Hiding ScreenSaverController");
|
||||
|
||||
if (PositionTimer != null)
|
||||
{
|
||||
|
|
@ -117,7 +117,7 @@ namespace PepperDash.Essentials
|
|||
CurrentPositionIndex = 0;
|
||||
}
|
||||
|
||||
Debug.Console(1, "ScreenSaver Position Timer Expired: Setting new position: {0}", CurrentPositionIndex);
|
||||
//Debug.Console(2, "ScreenSaver Position Timer Expired: Setting new position: {0}", CurrentPositionIndex);
|
||||
}
|
||||
|
||||
//
|
||||
|
|
@ -129,9 +129,18 @@ namespace PepperDash.Essentials
|
|||
|
||||
void ClearAllPositions()
|
||||
{
|
||||
Debug.Console(1, "Hiding all screensaver positions");
|
||||
Debug.Console(2, "Hiding all screensaver positions");
|
||||
PositionInterlock.HideAndClear();
|
||||
}
|
||||
|
||||
#region IDisposable Members
|
||||
|
||||
public void Dispose()
|
||||
{
|
||||
Hide();
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue