Fix resource browser initialization.

This commit is contained in:
2023-12-01 00:35:43 +08:00
parent f247be0177
commit 8cf6430181
3 changed files with 5 additions and 5 deletions

View File

@@ -10,7 +10,7 @@ using UnityEngine;
using UnityEngine.UI; using UnityEngine.UI;
namespace Cryville.Crtr.Browsing.UI { namespace Cryville.Crtr.Browsing.UI {
public class PathedResourceBrowser : ResourceBrowser { internal class PathedResourceBrowser : ResourceBrowser {
[SerializeField] [SerializeField]
Button[] m_writeTools; Button[] m_writeTools;
[SerializeField] [SerializeField]
@@ -56,12 +56,11 @@ namespace Cryville.Crtr.Browsing.UI {
if (_manager != null) _manager.Deactivate(); if (_manager != null) _manager.Deactivate();
} }
public void Init(ResourceBrowserMaster master, IPathedResourceManager<IResourceMeta> manager) { public void Init(IPathedResourceManager<IResourceMeta> manager) {
if (_manager != null) { if (_manager != null) {
OnDisable(); OnDisable();
UnregisterManager(); UnregisterManager();
} }
Init(master);
_manager = manager; _manager = manager;
_manager.ItemChanged += OnItemChanged; _manager.ItemChanged += OnItemChanged;
_manager.DirectoryChanged += OnDirectoryChanged; _manager.DirectoryChanged += OnDirectoryChanged;

View File

@@ -8,7 +8,7 @@ namespace Cryville.Crtr.Browsing.UI {
public virtual Sprite Icon { get { return m_icon; } } public virtual Sprite Icon { get { return m_icon; } }
protected ResourceBrowserMaster Master { get; private set; } protected ResourceBrowserMaster Master { get; private set; }
protected void Init(ResourceBrowserMaster master) { internal void Init(ResourceBrowserMaster master) {
Master = master; Master = master;
} }

View File

@@ -39,10 +39,11 @@ namespace Cryville.Crtr.Browsing.UI {
BrowserTab AddPathedBrowserTab(string name, IPathedResourceManager<IResourceMeta> manager) { BrowserTab AddPathedBrowserTab(string name, IPathedResourceManager<IResourceMeta> manager) {
var browser = Instantiate(m_pathedBrowserPrefab, m_browserContainer, false).GetComponent<PathedResourceBrowser>(); var browser = Instantiate(m_pathedBrowserPrefab, m_browserContainer, false).GetComponent<PathedResourceBrowser>();
browser.Init(this, manager); browser.Init(manager);
return AddTab(name, browser, _tabs.Count, false); return AddTab(name, browser, _tabs.Count, false);
} }
BrowserTab AddTab(string name, ResourceBrowser browser, int index, bool closable) { BrowserTab AddTab(string name, ResourceBrowser browser, int index, bool closable) {
browser.Init(this);
var tab = Instantiate(m_tabPrefab, m_tabContainer, false).GetComponent<BrowserTab>(); var tab = Instantiate(m_tabPrefab, m_tabContainer, false).GetComponent<BrowserTab>();
tab.transform.SetSiblingIndex(index); tab.transform.SetSiblingIndex(index);
tab.Icon = browser.Icon; tab.Icon = browser.Icon;