/// <summary> /// Constructor /// </summary> public EssentialsHuddlePanelAvFunctionsDriver(PanelDriverBase parent, CrestronTouchpanelPropertiesConfig config) : base(parent.TriList) { Config = config; Parent = parent; PopupInterlock = new JoinedSigInterlock(TriList); SourcesSrl = new SubpageReferenceList(TriList, 3200, 3, 3, 3); ActivityFooterSrl = new SubpageReferenceList(TriList, 15022, 3, 3, 3); ShareButtonSig = ActivityFooterSrl.BoolInputSig(1, 1); SetupActivityFooterWhenRoomOff(); ShowVolumeGauge = true; // One-second pulse extender for volume gauge VolumeGaugeFeedback = new BoolFeedbackPulseExtender(1500); VolumeGaugeFeedback.Feedback .LinkInputSig(TriList.BooleanInput[UIBoolJoin.VolumeGaugePopupVisible]); VolumeButtonsPopupFeedback = new BoolFeedbackPulseExtender(4000); VolumeButtonsPopupFeedback.Feedback .LinkInputSig(TriList.BooleanInput[UIBoolJoin.VolumeButtonPopupVisible]); PowerOffTimeout = 30000; TriList.StringInput[UIStringJoin.StartActivityText].StringValue = "Tap Share to begin"; }
void ShowSubDriver(PanelDriverBase driver) { CurrentChildDriver = driver; if (driver == null) { return; } this.Hide(); driver.Show(); }
public SingleSubpageModalAndBackDriver(PanelDriverBase parent, uint subpageJoin) : base(parent.TriList) { Parent = parent; SubpageSig = Parent.TriList.BooleanInput[subpageJoin]; }
public SingleSubpageModalDriver(PanelDriverBase parent, uint subpageJoin, uint closeJoin) : base(parent.TriList) { SubpageSig = parent.TriList.BooleanInput[subpageJoin]; parent.TriList.SetSigFalseAction(closeJoin, Hide); }
public override void Show() { CurrentChildDriver = null; ShowSubDriver(AvDriver as PanelDriverBase); base.Show(); }
public void LoadAndShowDriver(PanelDriverBase driver) { PanelDriver = driver; driver.Show(); }
/// <summary> /// Returns the appropriate panel driver for the device /// </summary> /// <param name="device"></param> /// <param name="column"></param> /// <returns></returns> PanelDriverBase GetPanelDriverForDevice(IKeyed device, uint column) { PanelDriverBase panelDriver = null; uint buttonPressJoinBase = 0; uint buttonVisibleJoinBase = 0; uint stringJoinBase = 0; uint shadeTypeVisibleBase = 0; uint lightingTypeVisibleBase = 0; switch (column) { case 1: { buttonPressJoinBase = UIBoolJoin.EnvironmentColumnOneButtonPressBase; buttonVisibleJoinBase = UIBoolJoin.EnvironmentColumnOneButtonVisibleBase; stringJoinBase = UIStringJoin.EnvironmentColumnOneLabelBase; shadeTypeVisibleBase = UIBoolJoin.EnvironmentColumnOneShadingTypeVisibleBase; lightingTypeVisibleBase = UIBoolJoin.EnvironmentColumnOneLightingTypeVisibleBase; break; } case 2: { buttonPressJoinBase = UIBoolJoin.EnvironmentColumnTwoButtonPressBase; buttonVisibleJoinBase = UIBoolJoin.EnvironmentColumnTwoButtonVisibleBase; stringJoinBase = UIStringJoin.EnvironmentColumnTwoLabelBase; shadeTypeVisibleBase = UIBoolJoin.EnvironmentColumnTwoShadingTypeVisibleBase; lightingTypeVisibleBase = UIBoolJoin.EnvironmentColumnTwoLightingTypeVisibleBase; break; } case 3: { buttonPressJoinBase = UIBoolJoin.EnvironmentColumnThreeButtonPressBase; buttonVisibleJoinBase = UIBoolJoin.EnvironmentColumnThreeButtonVisibleBase; stringJoinBase = UIStringJoin.EnvironmentColumnThreeLabelBase; shadeTypeVisibleBase = UIBoolJoin.EnvironmentColumnThreeShadingTypeVisibleBase; lightingTypeVisibleBase = UIBoolJoin.EnvironmentColumnThreeLightingTypeVisibleBase; break; } case 4: { buttonPressJoinBase = UIBoolJoin.EnvironmentColumnFourButtonPressBase; buttonVisibleJoinBase = UIBoolJoin.EnvironmentColumnFourButtonVisibleBase; stringJoinBase = UIStringJoin.EnvironmentColumnFourLabelBase; shadeTypeVisibleBase = UIBoolJoin.EnvironmentColumnFourShadingTypeVisibleBase; lightingTypeVisibleBase = UIBoolJoin.EnvironmentColumnFourLightingTypeVisibleBase; break; } default: { Debug.Console(1, "Environment Driver: Invalid column number specified"); break; } } // Determine if device is a shade or lighting type and construct the appropriate driver if (device is ShadeBase) { panelDriver = new EssentialsShadeDriver(this, device.Key, buttonPressJoinBase, stringJoinBase, shadeTypeVisibleBase); } else if (device is LightingBase) { panelDriver = new EssentialsLightingDriver(this, device.Key, buttonPressJoinBase, buttonVisibleJoinBase, stringJoinBase, lightingTypeVisibleBase); } // Return the driver return(panelDriver); }