Пример #1
0
        private ContentTab CreateTab(TabDisplayInfo tabDisplayInfo)
        {
            ContentTab tabInstance = GameObject.Instantiate(contentTabPrefab);

            tabInstance.transform.SetParent(contentTabContainer.transform, false);
            tabInstance.Initialize(tabDisplayInfo.TabName, tabDisplayInfo.TabIcon);
            return(tabInstance);
        }
Пример #2
0
 public void Initialize(ContentTab tab)
 {
     if (!initialized)
     {
         LinkedTab = tab;
         LinkedTab.ContentTabSelectToggleEvent += OnContentTabSelectToggleEvent;
         initialized = true;
         InitializedAwake();
     }
 }
Пример #3
0
        private void ShowDisplayContentOfTab(ContentTab tab)
        {
            DestroyDisplayingContent();
            TabDisplayInfo?tabInfo = currentDisplaySetting.GetInfoByName(tab.TabName);

            if (tabInfo.HasValue)
            {
                currentlyDisplayingContent = GameObject.Instantiate <TabContent>(tabInfo.Value.displayContentPrefab);
                currentlyDisplayingContent.transform.SetParent(contentContainer.transform, false);
                currentlyDisplayingContent.Initialize(tab);
            }
        }
Пример #4
0
 private void OnContentTabSelectToggleEvent(ContentTab tab)
 {
     if (tab.IsSelected)
     {
         if (currentlySelectedTab != null)
         {
             currentlySelectedTab.ToggleSelected(false);
         }
         currentlySelectedTab = tab;
         ShowDisplayContentOfTab(currentlySelectedTab);
     }
 }
Пример #5
0
        private void DestroyAllTabs()
        {
            ContentTab ct = null;

            for (int i = createdContentTabs.Count - 1; i >= 0; i--)
            {
                ct = createdContentTabs[i];
                ct.ContentTabSelectToggleEvent -= OnContentTabSelectToggleEvent;
                Destroy(ct.gameObject);
            }
            createdContentTabs.Clear();
        }
Пример #6
0
 public void SetTabDisplaySetting(TabDisplaySetting setting)
 {
     UnsetTabDisplaySetting();
     currentDisplaySetting = setting;
     for (int i = 0; i < setting.TabDisplayInfos.Length; i++)
     {
         ContentTab t = CreateTab(setting.TabDisplayInfos[i]);
         t.ContentTabSelectToggleEvent += OnContentTabSelectToggleEvent;
         if (i == 0)
         {
             t.ToggleSelected(true);
         }
         else
         {
             t.ToggleSelected(false);
         }
     }
 }
Пример #7
0
 protected virtual void OnContentTabSelectToggleEvent(ContentTab tab)
 {
 }