From 4d05d0d1353d545ec64974c3ae7f37dd94feb5c0 Mon Sep 17 00:00:00 2001 From: PopSlime Date: Fri, 1 Dec 2023 11:45:15 +0800 Subject: [PATCH] Fix resource browser initialization. (2) --- Assets/Cryville/Crtr/Browsing/UI/ResourceBrowserMaster.cs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Assets/Cryville/Crtr/Browsing/UI/ResourceBrowserMaster.cs b/Assets/Cryville/Crtr/Browsing/UI/ResourceBrowserMaster.cs index f4dca10..52bc8c7 100644 --- a/Assets/Cryville/Crtr/Browsing/UI/ResourceBrowserMaster.cs +++ b/Assets/Cryville/Crtr/Browsing/UI/ResourceBrowserMaster.cs @@ -34,16 +34,15 @@ namespace Cryville.Crtr.Browsing.UI { OnTabClicked(AddPathedBrowserTab("Local", new LegacyResourceManager(Settings.Default.GameDataPath))); AddPathedBrowserTab("Files", new FileSystemResourceManager()); - AddTab("Settings", m_settingsBrowser, _tabs.Count, false); + AddTab("Settings", InitBrowser(m_settingsBrowser), _tabs.Count, false); } BrowserTab AddPathedBrowserTab(string name, IPathedResourceManager manager) { - var browser = Instantiate(m_pathedBrowserPrefab, m_browserContainer, false).GetComponent(); + var browser = InitBrowser(Instantiate(m_pathedBrowserPrefab, m_browserContainer, false).GetComponent()); browser.Init(manager); return AddTab(name, browser, _tabs.Count, false); } BrowserTab AddTab(string name, ResourceBrowser browser, int index, bool closable) { - browser.Init(this); var tab = Instantiate(m_tabPrefab, m_tabContainer, false).GetComponent(); tab.transform.SetSiblingIndex(index); tab.Icon = browser.Icon; @@ -55,8 +54,10 @@ namespace Cryville.Crtr.Browsing.UI { _tabs.Add(tab, browser); return tab; } + T InitBrowser(T browser) where T : ResourceBrowser { browser.Init(this); return browser; } public void AddAndOpenTab(string name, ResourceBrowser browser) { + InitBrowser(browser); browser.transform.SetParent(m_browserContainer, false); OnTabClicked(AddTab(name, browser, _currentTab.transform.GetSiblingIndex() + 1, true)); }