mirror of
https://github.com/PepperDash/Essentials.git
synced 2026-01-27 19:34:51 +00:00
42 lines
1.1 KiB
C#
42 lines
1.1 KiB
C#
using Crestron.SimplSharpPro.DeviceSupport;
|
|
using PepperDash.Essentials.Core;
|
|
|
|
namespace PepperDash.Essentials.Core.PageManagers
|
|
{
|
|
public class DiscPlayerMediumPageManager : MediumLeftSwitchablePageManager
|
|
{
|
|
IDiscPlayerControls Player;
|
|
|
|
public DiscPlayerMediumPageManager(IDiscPlayerControls player, BasicTriListWithSmartObject trilist)
|
|
: base(player.DisplayUiType)
|
|
{
|
|
Player = player;
|
|
TriList = trilist;
|
|
}
|
|
|
|
public override void Show()
|
|
{
|
|
uint offset = GetOffsetJoin();
|
|
BackingPageJoin = offset + 1;
|
|
AllLeftSubpages = new uint[] { 7, 8 };
|
|
|
|
if (LeftSubpageJoin == 0)
|
|
LeftSubpageJoin = offset + 8; // default to transport
|
|
TriList.BooleanInput[BackingPageJoin].BoolValue = true;
|
|
TriList.BooleanInput[LeftSubpageJoin].BoolValue = true;
|
|
|
|
// Attach buttons to interlock
|
|
foreach(var p in AllLeftSubpages)
|
|
{
|
|
var p2 = p; // scope
|
|
TriList.SetSigFalseAction(10000 + p2, () => InterlockLeftSubpage(p2));
|
|
}
|
|
}
|
|
|
|
public override void Hide()
|
|
{
|
|
TriList.BooleanInput[BackingPageJoin].BoolValue = false;
|
|
TriList.BooleanInput[LeftSubpageJoin].BoolValue = false;
|
|
}
|
|
}
|
|
} |