private static void RenderFolder(string folderPath, AssetBundleFolder assetBundleFolder, out bool removeFolder) { // Folder path and associated management buttons. EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField(folderPath, EditorStyles.wordWrappedLabel); removeFolder = GUILayout.Button("Remove", GUILayout.Width(FieldWidth)); EditorGUILayout.EndHorizontal(); EditorGUILayout.Space(); // Display the folder state. if (assetBundleFolder.State == AssetPackFolderState.Ok) { EditorGUILayout.HelpBox( string.Format("Found {0} AssetBundle(s) in this folder", assetBundleFolder.AssetBundleCount), MessageType.None); } else { var errorMessage = NameAndDescriptionAttribute.GetAttribute(assetBundleFolder.State).Description; EditorGUILayout.HelpBox(errorMessage, MessageType.Warning); } EditorGUILayout.Space(); EditorGUILayout.Space(); }
private static void RenderVariant(AssetBundleVariant variant, TextureCompressionFormat targeting) { EditorGUILayout.BeginHorizontal(); // TODO: revisit TextureCompressionFormat enum extension methods. var targetingDescription = targeting == TextureCompressionFormat.Default ? targeting.ToString() : targeting.ToString().ToUpper(); EditorGUILayout.PrefixLabel(targetingDescription); EditorGUILayout.LabelField(variant.FileSizeText, GUILayout.ExpandWidth(false)); var errors = variant.Errors; if (errors.Count == 0) { EditorGUILayout.LabelField("No errors", GUILayout.ExpandWidth(true)); } else { if (GUILayout.Button(variant.ErrorSummary + "...", GUILayout.ExpandWidth(true))) { var errorDialogTitle = "AssetBundle Error" + (errors.Count == 1 ? string.Empty : "s"); var errorDialogMessage = string.Join("\n\n", errors.Select(e => NameAndDescriptionAttribute.GetAttribute(e).Description).ToArray()); EditorUtility.DisplayDialog(errorDialogTitle, errorDialogMessage, WindowUtils.OkButtonText); } } EditorGUILayout.EndHorizontal(); }