Exemplo n.º 1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="trilist"></param>
        /// <param name="parent"></param>
        public EssentialsHuddleTechPageDriver(BasicTriListWithSmartObject trilist, EssentialsRoomTechConfig config)
            : base(trilist)
        {
            Config = config;

            PagesInterlock = new JoinedSigInterlock(trilist);
            PagesInterlock.SetButDontShow(UIBoolJoin.TechSystemStatusVisible);

            trilist.SetSigFalseAction(UIBoolJoin.TechExitButton, Hide);

            MenuList = new SmartObjectDynamicList(trilist.SmartObjects[UISmartObjectJoin.TechMenuList],
                                                  true, 3100);

            MenuList.SetFeedback(1, true); // initial fb
            ushort count = 0;

            MenuList.SetItemMainText(1, "System Status");
            MenuList.SetItemButtonAction(1, b => {
                if (b)
                {
                    PagesInterlock.ShowInterlocked(UIBoolJoin.TechSystemStatusVisible);
                }
                MenuList.SetFeedback(1, true);
            });

            MenuList.SetItemMainText(2, "Display Controls");
            MenuList.SetItemButtonAction(2, b => {
                if (b)
                {
                    PagesInterlock.ShowInterlocked(UIBoolJoin.TechDisplayControlsVisible);
                }
                MenuList.SetFeedback(2, true);
            });

            count = 2;

            // Don't show panel setup on iPad or xpanel
            if (TriList is Crestron.SimplSharpPro.DeviceSupport.TswFt5Button)
            {
                count++;
                MenuList.SetItemMainText(count, "Panel Setup");
                MenuList.SetItemButtonAction(count, b =>
                {
                    if (b)
                    {
                        PagesInterlock.ShowInterlocked(UIBoolJoin.TechPanelSetupVisible);
                    }
                    MenuList.SetFeedback(count, true);
                });
            }

            MenuList.Count = count;
            BuildStatusList();
            BuildDisplayList();
            SetupPinModal();
        }
Exemplo n.º 2
0
        /// <summary>
        ///
        /// </summary>
        void SetupRecentCallsList()
        {
            var codec = Codec as IHasCallHistory;

            if (codec != null)
            {
                codec.CallHistory.RecentCallsListHasChanged += (o, a) => RefreshRecentCallsList();
                // EVENT??????????????? Pointed at refresh
                RecentCallsList = new SmartObjectDynamicList(TriList.SmartObjects[UISmartObjectJoin.VCRecentsList], true, 1200);
                RefreshRecentCallsList();
            }
        }
Exemplo n.º 3
0
        /// <summary>
        ///
        /// </summary>
        void SetupDirectoryList()
        {
            var codec = Codec as IHasDirectory;

            if (codec != null)
            {
                DirectoryList = new SmartObjectDynamicList(TriList.SmartObjects[UISmartObjectJoin.VCDirectoryList],
                                                           true, 1300);
                codec.DirectoryResultReturned += new EventHandler <DirectoryEventArgs>(dir_DirectoryResultReturned);

                if (codec.PhonebookSyncState.InitialSyncComplete)
                {
                    SetCurrentDirectoryToRoot();
                }
                else
                {
                    codec.PhonebookSyncState.InitialSyncCompleted += new EventHandler <EventArgs>(PhonebookSyncState_InitialSyncCompleted);
                }

                RefreshDirectory();
            }
        }