private static BundleFolderConcreteInfo AddFoldersToBundle(BundleFolderInfo root, BundleNameData nameData) { BundleInfo currInfo = root; var folder = currInfo as BundleFolderConcreteInfo; var size = nameData.pathTokens.Count; for (var index = 0; index < size; index++) { if (folder != null) { currInfo = folder.GetChild(nameData.pathTokens[index]); if (currInfo == null) { currInfo = new BundleFolderConcreteInfo(nameData.pathTokens, index + 1, folder); folder.AddChild(currInfo); } folder = currInfo as BundleFolderConcreteInfo; if (folder == null) { s_InErrorState = true; LogFolderAndBundleNameConflict(currInfo.m_Name.fullNativeName); break; } } } return(currInfo as BundleFolderConcreteInfo); }
internal static void Refresh() { s_EmptyMessageString = k_ProblemEmptyMessage; if (s_InErrorState) { return; } var bundleList = ValidateBundleList(); if (bundleList != null) { s_EmptyMessageString = k_DefaultEmptyMessage; foreach (var bundleName in bundleList) { AddBundleToModel(bundleName); } AddBundlesToUpdate(s_RootLevelBundles.GetChildList()); } if (s_InErrorState) { s_RootLevelBundles = new BundleFolderConcreteInfo("", null); s_EmptyMessageString = k_ProblemEmptyMessage; } }
internal static BundleFolderInfo CreateEmptyBundleFolder(BundleFolderConcreteInfo folder = null) { folder = (folder == null) ? s_RootLevelBundles : folder; string name = GetUniqueName(folder) + "/dummy"; BundleNameData nameData = new BundleNameData(folder.m_Name.bundleName, name); return(AddFoldersToBundle(s_RootLevelBundles, nameData)); }
/// <summary> /// Clears and rebuilds model data. /// </summary> public static void Rebuild() { s_RootLevelBundles = new BundleFolderConcreteInfo("", null); s_MoveData = new List <ABMoveData>(); s_BundlesToUpdate = new List <BundleInfo>(); s_GlobalAssetList = new Dictionary <string, AssetInfo>(); Refresh(); }
void CreateNewSiblingBundle(object context) { var selectedNodes = context as List <AssetBundleModel.BundleTreeItem>; if (selectedNodes != null && selectedNodes.Count > 0) { AssetBundleModel.BundleFolderConcreteInfo folder = null; folder = selectedNodes[0].bundle.parent as AssetBundleModel.BundleFolderConcreteInfo; CreateBundleUnderParent(folder); } else { Debug.LogError("could not add 'sibling' with no bundles selected"); } }
internal static BundleFolderInfo CreateNamedBundleFolder(BundleFolderConcreteInfo folder) { BundleNameData nameData = new BundleNameData(folder.m_Name.bundleName, "dummy"); return(AddFoldersToBundle(s_RootLevelBundles, nameData)); }
private AssetBundleModel.BundleFolderInfo CreateDepsFolder() { AssetBundleModel.BundleFolderConcreteInfo depsFolder = new AssetBundleModel.BundleFolderConcreteInfo(AssetBundleConfig.AssetBundlesDepsDir, null); return(AssetBundleModel.Model.CreateNamedBundleFolder(depsFolder)); }
protected virtual void CreateFolderUnderParent(AssetBundleModel.BundleFolderConcreteInfo folder) { var newBundle = AssetBundleModel.Model.CreateEmptyBundleFolder(folder); ReloadAndSelect(newBundle.nameHashCode, true); }