protected override void Start() { base.Start(); _hasStarted = true; // Loads all available tabs from resources var tabs = Resources.LoadAll <SRTab>("SRDebugger/UI/Prefabs/Tabs"); var defaultTabs = Enum.GetNames(typeof(DefaultTabs)); foreach (var srTab in tabs) { var enabler = srTab.GetComponent(typeof(IEnableTab)) as IEnableTab; if (enabler != null && !enabler.IsEnabled) { continue; } if (defaultTabs.Contains(srTab.Key)) { var tabValue = Enum.Parse(typeof(DefaultTabs), srTab.Key); if (Enum.IsDefined(typeof(DefaultTabs), tabValue) && Settings.Instance.DisabledTabs.Contains((DefaultTabs)tabValue)) { continue; } } TabController.AddTab(SRInstantiate.Instantiate(srTab)); } // Add about tab (has no button, accessed via "Stompy" logo if (AboutTab != null) { _aboutTabInstance = SRInstantiate.Instantiate(AboutTab); TabController.AddTab(_aboutTabInstance, false); } // Open active tab (set before panel loaded), or default tab from settings var defaultTab = _activeTab ?? Settings.Instance.DefaultTab; if (!OpenTab(defaultTab)) { TabController.ActiveTab = TabController.Tabs.FirstOrDefault(); } }
private void TabControllerOnActiveTabChanged(SRTabController srTabController, SRTab srTab) { Close(); }