public static AssetPostprocessorFolderTab Get(EditorWindow parent) { var treeView = new AssetPostprocessorFolderTab(parent, new TreeViewState()); treeView.Reload(); return(treeView); }
private void ShowSubTabs() { subRect = GetSubWindowArea(); if (configTab == null) { folderTab = folderTab ?? AssetPostprocessorFolderTab.Get(this); configTab = configTab ?? AssetPostprocessorConfigTab.Get(); setTab = setTab ?? new AssetPostprocessorSetTab(); assetListTab = assetListTab ?? AssetListTab.Get(); configTab.DeleteSoAssetPostprocessor += OnDeleteSoAssetPostprocessor; configTab.OnChanged += OnSoPostprocessorChanged; setTab.OnChanged += OnSoPostprocessorSetChangee; } HandleHorizontalResize(); HandleVerticalResize(); var assetFolderRect = new Rect(subRect.x, subRect.y, subRect.width * horizontalLeftSplitterPercent, subRect.height); var assetListRect = new Rect(subRect.x + subRect.width * horizontalRightSplitterPercent, subRect.y, subRect.width * (1 - horizontalRightSplitterPercent), subRect.height); var configTabRect = new Rect(subRect.x + assetFolderRect.width + splitterWidth, subRect.y, assetListRect.x - assetFolderRect.xMax - 2 * splitterWidth, subRect.height * verticalSplitterPercent); var detailTabRect = new Rect(subRect.x + assetFolderRect.width + splitterWidth, subRect.y + configTabRect.height + splitterWidth, configTabRect.width, subRect.height - configTabRect.height - splitterWidth); folderTab.SetAssetType(selectAssetType); var selectFolderPath = folderTab.GetSelectPostprocessorFolder(); configTab.SetAssetType(selectAssetType); configTab.SetPostprocessorFolder(selectFolderPath); var selectGuid = configTab.GetSelectSoPostprocessorGuid(); setTab.SetPostprocessor(selectAssetType, selectGuid); assetListTab.SetFolder(selectAssetType, selectFolderPath); configTab.OnGUI(configTabRect); folderTab.OnGUI(assetFolderRect); setTab.OnGUI(detailTabRect); assetListTab.OnGUI(assetListRect); }