private static void DrawAdvancedSpriteField(AtlasTexture atlas, string spriteName) { if (atlas == null) { return; } if (atlas.Sprites.Count == 0) { EditorGUILayout.HelpBox("No sprites found", MessageType.Warning); return; } GUILayout.BeginHorizontal(); { if (EditorLayoutTools.DrawPrefixButton("Sprite")) { EditorAtlasPrefs.atlas = atlas; EditorAtlasPrefs.selectedSprite = spriteName; AtlasSpriteSelector.Show(SelectSprite); } EditorGUILayout.SelectableLabel(spriteName, new GUIStyle("TextArea"), GUILayout.Height(18f)); } GUILayout.EndHorizontal(); }
// オプションの描画. protected virtual void DrawBuildOptions() { var originLabelWidth = EditorLayoutTools.SetLabelWidth(130f); if (selectionBuildParam != null && selectionBuildParam.buildParam != null) { var buildParam = selectionBuildParam.buildParam; EditorGUI.BeginChangeCheck(); // Version. buildParam.Version = EditorGUILayout.DelayedTextField("Version", buildParam.Version); GUILayout.Space(2f); // BuildVersion. buildParam.BuildVersion = EditorGUILayout.DelayedIntField("BuildVersion", buildParam.BuildVersion); if (EditorGUI.EndChangeCheck()) { UnityEditorUtility.SaveAsset(buildParam); } } GUILayout.Space(2f); EditorLayoutTools.SetLabelWidth(originLabelWidth); }
private bool DrawCharInfoGUI(FontKerningSetting.CharInfo info) { var delete = false; using (new EditorGUILayout.HorizontalScope()) { EditorGUI.BeginChangeCheck(); var text = EditorGUILayout.DelayedTextField(info.character.ToString(), GUILayout.Width(50f)); if (EditorGUI.EndChangeCheck()) { info.character = text.FirstOrDefault(); } var originLabelWidth = EditorLayoutTools.SetLabelWidth(30f); info.leftSpace = EditorGUILayout.FloatField("◀▶", info.leftSpace, GUILayout.ExpandWidth(true)); info.rightSpace = EditorGUILayout.FloatField("◀▶", info.rightSpace, GUILayout.ExpandWidth(true)); EditorLayoutTools.SetLabelWidth(originLabelWidth); if (GUILayout.Button("-", EditorStyles.miniButton, GUILayout.Width(25f))) { delete = true; } } return(delete); }
public override void OnInspectorGUI() { instance = target as ManagedAssets; Initialize(); EditorGUILayout.Separator(); using (var scrollViewScope = new EditorGUILayout.ScrollViewScope(scrollPosition, GUILayout.Height(700f))) { foreach (var group in manageInfoGroup) { EditorLayoutTools.Title(group.Key, new Color(0.2f, 0f, 1f, 1f)); using (new EditorGUILayout.HorizontalScope()) { GUILayout.Space(8f); using (new EditorGUILayout.VerticalScope()) { foreach (var manageInfo in group) { DrawManageInfoGUI(manageInfo); } } GUILayout.Space(8f); } } scrollPosition = scrollViewScope.scrollPosition; } }
protected override void DrawContent(int index, FindDependencyAssetsWindow.AssetReferenceInfo content) { var count = content.ReferenceAssets.Length; if (count < 2) { return; } var asset = GetAsset(content.Asset); using (new EditorGUILayout.HorizontalScope()) { if (titleGuiStyle == null) { titleGuiStyle = new EditorLayoutTools.TitleGUIStyle { backgroundColor = new Color(1f, 0.65f, 0f, 0.5f), alignment = TextAnchor.MiddleCenter, fontStyle = FontStyle.Bold, width = 30f, }; } EditorLayoutTools.Title(count.ToString(), titleGuiStyle); EditorGUILayout.ObjectField("", asset, typeof(Object), false, GUILayout.Width(250f)); } }
protected override void DrawContent(int index, AssetGroupInfo content) { if (textAreaStyle == null) { textAreaStyle = GUI.skin.GetStyle("TextArea"); textAreaStyle.alignment = TextAnchor.MiddleLeft; textAreaStyle.wordWrap = false; textAreaStyle.stretchWidth = true; } var opened = openedIds.Contains(index); using (new EditorGUILayout.VerticalScope()) { var open = EditorLayoutTools.DrawHeader(content.GroupName, opened); if (open) { using (new ContentsScope()) { DrawGroupContent(content); } } if (!opened && open) { openedIds.Add(index); } if (opened && !open) { openedIds.Remove(index); } } }
private void DrawAtlasInfos() { EditorLayoutTools.DrawLabelWithBackground("Input", EditorLayoutTools.BackgroundColor, EditorLayoutTools.LabelColor); var tex = selectAtlas.Texture; var labelWidth = 80f; using (new EditorGUILayout.HorizontalScope()) { if (tex != null) { if (GUILayout.Button("Texture", GUILayout.Width(labelWidth))) { Selection.activeObject = tex; } GUILayout.Label(" " + tex.width + "x" + tex.height); } else { GUI.color = Color.grey; GUILayout.Button("Texture", GUILayout.Width(labelWidth)); GUI.color = Color.white; GUILayout.Label(" N/A"); } } }
private void DrawContentGUI(string label, string content) { EditorLayoutTools.DrawLabelWithBackground(label, new Color(0.3f, 0.3f, 0.5f), new Color(0.8f, 0.8f, 0.8f, 0.8f)); using (new EditorGUILayout.HorizontalScope()) { using (new EditorGUILayout.VerticalScope()) { if (GUILayout.Button("copy", GUILayout.Width(45f), GUILayout.Height(18f))) { UniClipboard.SetText(content); } GUILayout.Space(2f); } var textStyle = new GUIStyle(); var textSize = textStyle.CalcSize(new GUIContent(content)); var originLabelWidth = EditorLayoutTools.SetLabelWidth(textSize.x); GUILayout.Label(content, GUILayout.Height(20f)); EditorLayoutTools.SetLabelWidth(originLabelWidth); GUILayout.FlexibleSpace(); } }
protected override void DrawContent(int index, Content content) { if (tabNextIconContent == null) { tabNextIconContent = EditorGUIUtility.IconContent("tab_next"); } using (new EditorGUILayout.HorizontalScope()) { var type = content.isAssetBundle ? "AssetBundle" : "Other Assets"; var color = content.isAssetBundle ? new Color(0.3f, 0.3f, 1f) : new Color(0.3f, 1f, 0.3f); var originLabelWidth = EditorLayoutTools.SetLabelWidth(75f); EditorLayoutTools.DrawLabelWithBackground(type, color, width: 70f, options: GUILayout.Height(15f)); EditorLayoutTools.SetLabelWidth(content.label); EditorGUILayout.SelectableLabel(content.label, GUILayout.Height(18f)); EditorLayoutTools.SetLabelWidth(originLabelWidth); GUILayout.FlexibleSpace(); if (GUILayout.Button(tabNextIconContent, EditorStyles.label, GUILayout.Width(20f), GUILayout.Height(20f))) { if (onRequestDetailView != null) { onRequestDetailView.OnNext(content.label); } } } }
private void DrawSettingsGUI() { var labelWidth = 80f; EditorLayoutTools.DrawLabelWithBackground("Settings", EditorLayoutTools.BackgroundColor, EditorLayoutTools.LabelColor); using (new EditorGUILayout.HorizontalScope()) { var labels = BlockSizes.Select(x => x.ToString()).ToArray(); GUILayout.Label("BlockSize", GUILayout.Width(labelWidth)); blockSize = EditorGUILayout.IntPopup(blockSize, labels, BlockSizes, GUILayout.Width(75f)); } using (new EditorGUILayout.HorizontalScope()) { GUILayout.Label("Padding", GUILayout.Width(labelWidth)); padding = Mathf.Clamp(EditorGUILayout.IntField(padding, GUILayout.Width(75f)), 1, 5); } using (new EditorGUILayout.HorizontalScope()) { GUILayout.Label("AlphaMap", GUILayout.Width(labelWidth)); hasAlphaMap = EditorGUILayout.Toggle(hasAlphaMap, GUILayout.Width(75f)); } using (new EditorGUILayout.HorizontalScope()) { GUILayout.Label("FilterMode", GUILayout.Width(labelWidth)); filterMode = (FilterMode)EditorGUILayout.EnumPopup(filterMode, GUILayout.Width(75f)); } }
protected override void DrawContent(int index, FindDependencyAssetsWindow.AssetBundleInfo content) { content.IsOpen = EditorLayoutTools.DrawHeader(content.AssetBundleName, content.IsOpen); if (content.IsOpen) { using (new ContentsScope()) { if (content.Assets.Any()) { foreach (var asset in content.Assets) { using (new EditorGUILayout.HorizontalScope()) { EditorLayoutTools.DrawLabelWithBackground("Asset", new Color(0.9f, 0.4f, 0.4f, 0.3f), null, TextAnchor.MiddleCenter, 90f); EditorGUILayout.ObjectField("", asset, typeof(Object), false, GUILayout.Width(250f)); } } } if (content.DependentAssets.Any()) { foreach (var dependentAsset in content.DependentAssets) { using (new EditorGUILayout.HorizontalScope()) { EditorLayoutTools.DrawLabelWithBackground("Dependent", new Color(0.4f, 0.4f, 0.9f, 0.5f), null, TextAnchor.MiddleCenter, 90f); EditorGUILayout.ObjectField("", dependentAsset, typeof(Object), false, GUILayout.Width(250f)); } } } } } }
// 生成制御GUI描画. private void DrawGenerateGUI() { var languageManager = LanguageManager.Instance; var languageInfo = languageManager.Current; EditorLayoutTools.Title("Asset"); GUILayout.Space(4f); // 生成制御. using (new DisableScope(languageInfo == null)) { if (GUILayout.Button("Generate")) { TextDataGenerator.Generate(contentType, languageInfo); UnityConsole.Info("TextData generate finish."); Repaint(); } } GUILayout.Space(4f); }
protected override void DrawContent(int index, Object content) { if (viewToolZoomIcon == null) { viewToolZoomIcon = EditorGUIUtility.IconContent("ViewToolZoom"); } if (vcscheckIcon == null) { vcscheckIcon = EditorGUIUtility.IconContent("vcs_check"); } if (vcsdeleteIcon == null) { vcsdeleteIcon = EditorGUIUtility.IconContent("vcs_delete"); } using (new EditorGUILayout.HorizontalScope()) { var info = CompressFolderInfos.FirstOrDefault(x => x.folder == content); if (info != null) { var originLabelWidth = EditorLayoutTools.SetLabelWidth(12f); var icon = info.compress ? vcscheckIcon : vcsdeleteIcon; using (new EditorGUILayout.VerticalScope(GUILayout.Width(12f))) { GUILayout.Space(-1f); EditorGUILayout.LabelField(icon, GUILayout.Width(20f), GUILayout.Height(20f)); } EditorLayoutTools.SetLabelWidth(originLabelWidth); } EditorGUI.BeginChangeCheck(); switch (AssetViewMode) { case CompressCheckWindow.AssetViewMode.Asset: EditorGUILayout.ObjectField(content, typeof(Object), false); break; case CompressCheckWindow.AssetViewMode.Path: GUILayout.Label(AssetDatabase.GetAssetPath(content), EditorLayoutTools.TextAreaStyle); break; } if (GUILayout.Button(viewToolZoomIcon, EditorStyles.miniButton, GUILayout.Width(24f), GUILayout.Height(15f))) { if (onSearchRequest != null) { onSearchRequest.OnNext(content); } } } }
// エクセル制御GUI描画. private void DrawExcelControlGUI() { TextDataConfig.GenerateAssetSetting setting = null; switch (contentType) { case ContentType.Embedded: setting = config.Embedded; break; case ContentType.Distribution: setting = config.Distribution; break; } EditorLayoutTools.Title("Excel"); GUILayout.Space(4f); var excelFilePath = setting.GetExcelPath(); var excelFileExists = File.Exists(excelFilePath); using (new DisableScope(!excelFileExists)) { if (GUILayout.Button("Open")) { TextDataExcel.Open(setting); } } GUILayout.Space(4f); var isLock = TextDataExcel.IsExcelFileLocked(setting); using (new DisableScope(isLock)) { if (GUILayout.Button("Import")) { var nowait = TextDataExcel.Import(contentType, true); UnityConsole.Info("TextData import record finish."); } } GUILayout.Space(4f); using (new DisableScope(!excelFileExists)) { if (GUILayout.Button("Export")) { var nowait = TextDataExcel.Export(contentType, true); UnityConsole.Info("TextData export record finish."); } } GUILayout.Space(4f); }
public override void OnPreviewGUI(Rect r, GUIStyle background) { if (instance == null || instance.Current == null) { return; } var current = instance.Current; if (previewTexture == null || previewGuid != current.Guid) { var assetPath = AssetDatabase.GUIDToAssetPath(current.Guid); previewTexture = AssetDatabase.LoadMainAssetAtPath(assetPath) as Texture2D; previewGuid = current.Guid; } if (previewTexture == null) { return; } if (previewBackdrop == null) { var c1 = new Color(1f, 1f, 1f, 0.8f); var c2 = new Color(1f, 1f, 1f, 1f); previewBackdrop = TextureUtility.CreateCheckerTex(c1, c2, 32); } var uv = new Rect(0f, 0f, 1f, 1f); var scaleX = r.width / uv.width; var scaleY = r.height / uv.height; var aspect = (scaleY / scaleX) / ((float)previewTexture.height / previewTexture.width); var clipRect = r; if (aspect != 1f) { if (aspect < 1f) { var padding = r.width * (1f - aspect) * 0.5f; clipRect.xMin += padding; clipRect.xMax -= padding; } else { var padding = r.height * (1f - 1f / aspect) * 0.5f; clipRect.yMin += padding; clipRect.yMax -= padding; } } EditorLayoutTools.DrawTiledTexture(clipRect, previewBackdrop); GUI.DrawTextureWithTexCoords(clipRect, previewTexture, uv); }
private void DrawManageInfoGUI(ManageInfo manageInfo) { if (manageInfo == null) { return; } var guid = manageInfo.guid; Object asset; if (!assetCacheByGuid.ContainsKey(guid)) { asset = UnityEditorUtility.FindMainAsset(guid); assetCacheByGuid[guid] = asset; } else { asset = assetCacheByGuid.GetValueOrDefault(guid); } var assetPath = AssetDatabase.GUIDToAssetPath(guid); EditorLayoutTools.ContentTitle(assetPath, new Color(0.2f, 1f, 0f, 1f)); using (new ContentsScope()) { using (new DisableScope(true)) { EditorGUILayout.ObjectField("Asset", asset, typeof(Object), false); EditorGUILayout.TextField("Category", manageInfo.category); if (!string.IsNullOrEmpty(manageInfo.tag)) { EditorGUILayout.TextField("Tag", manageInfo.tag); } if (!string.IsNullOrEmpty(manageInfo.comment)) { EditorGUILayout.TextField("Comment", manageInfo.comment); } if (manageInfo.isAssetBundle) { EditorGUILayout.EnumPopup("NamingRule", manageInfo.assetBundleNamingRule); if (!string.IsNullOrEmpty(manageInfo.assetBundleNameStr)) { EditorGUILayout.TextField("NameStr", manageInfo.assetBundleNameStr); } } } } EditorGUILayout.Space(3f); }
public override void OnInspectorGUI() { instance = target as AnimationPlayer; var animatorController = Reflection.GetPrivateField <AnimationPlayer, RuntimeAnimatorController>(instance, "animatorController") as AnimatorController; var endActionType = Reflection.GetPrivateField <AnimationPlayer, EndActionType>(instance, "endActionType"); var ignoreTimeScale = Reflection.GetPrivateField <AnimationPlayer, bool>(instance, "ignoreTimeScale"); if (animator != null) { animator.runtimeAnimatorController = animatorController; } EditorGUILayout.Separator(); EditorGUI.BeginChangeCheck(); animatorController = EditorGUILayout.ObjectField("Controller", animatorController, typeof(AnimatorController), false) as AnimatorController; if (EditorGUI.EndChangeCheck()) { UnityEditorUtility.RegisterUndo("AnimationPlayerInspector Undo", instance); Reflection.SetPrivateField(instance, "animatorController", animatorController); } if (animator != null && animatorController != null) { EditorGUILayout.Separator(); if (EditorLayoutTools.DrawHeader("Option", "AnimationPlayerInspector-Option")) { using (new ContentsScope()) { EditorGUI.BeginChangeCheck(); var originLabelWidth = EditorLayoutTools.SetLabelWidth(150f); endActionType = (EndActionType)EditorGUILayout.EnumPopup("End Action", endActionType); ignoreTimeScale = EditorGUILayout.Toggle("Ignore TimeScale", ignoreTimeScale); if (EditorGUI.EndChangeCheck()) { UnityEditorUtility.RegisterUndo("AnimationPlayerInspector Undo", instance); Reflection.SetPrivateField(instance, "endActionType", endActionType); Reflection.SetPrivateField(instance, "ignoreTimeScale", ignoreTimeScale); } EditorLayoutTools.SetLabelWidth(originLabelWidth); } } EditorGUILayout.Separator(); } }
private void DrawRegisterIgnoreFolderNameGUI(FolderNameRegisterScrollView scrollView, string title) { var scrollViewHeight = Mathf.Min(scrollView.Contents.Length * 18f, 150f); if (EditorLayoutTools.DrawHeader(title, string.Format("TextureAssetTunerConfigInspector-{0}", title))) { using (new ContentsScope()) { scrollView.DrawGUI(GUILayout.Height(scrollViewHeight)); } } }
void OnGUI() { if (connector == null) { Initialize(); Repaint(); } EditorGUI.BeginDisabledGroup(EditorApplication.isCompiling); { var originLabelWidth = EditorLayoutTools.SetLabelWidth(85f); GUILayout.Space(5f); switch (connector.State) { case SpreadsheetConnector.AuthenticationState.SignIn: DrawGUI(); break; case SpreadsheetConnector.AuthenticationState.SignOut: if (GUILayout.Button("Get Access Code")) { connector.OpenAccessCodeURL(); } break; case SpreadsheetConnector.AuthenticationState.WaitingAccessCode: accessCode = EditorGUILayout.TextField("Access Code", accessCode); GUILayout.Space(5f); if (GUILayout.Button("SignIn")) { connector.SignIn(accessCode); GUI.FocusControl(""); } break; } GUILayout.Space(5f); EditorLayoutTools.SetLabelWidth(originLabelWidth); } EditorGUI.EndDisabledGroup(); }
void OnGUI() { Initialize(); GUILayout.Space(2f); EditorLayoutTools.ContentTitle("Current"); using (new ContentsScope()) { var defineSymbols = defineSymbolInfos.Where(x => x.enable).Select(x => x.symbol).ToArray(); var defineSymbolStr = string.Join(";", defineSymbols); EditorGUILayout.SelectableLabel(defineSymbolStr, EditorStyles.miniTextField, GUILayout.Height(16f), GUILayout.ExpandWidth(true)); } EditorLayoutTools.ContentTitle("Define"); using (new ContentsScope()) { using (var scrollView = new EditorGUILayout.ScrollViewScope(scrollPosition, GUILayout.ExpandWidth(true))) { foreach (var defineSymbolInfo in defineSymbolInfos) { using (new ContentsScope()) { DrawInfoGUI(defineSymbolInfo); } GUILayout.Space(2f); } scrollPosition = scrollView.scrollPosition; } } GUILayout.Space(2f); using (new EditorGUILayout.HorizontalScope()) { GUILayout.FlexibleSpace(); if (GUILayout.Button("Apply", GUILayout.Width(100f))) { var defineSymbols = defineSymbolInfos.Where(x => x.enable).Select(x => x.symbol).ToArray(); DefineSymbol.Set(defineSymbols, true); } } }
//----- property ----- //----- method ----- public override void OnInspectorGUI() { var patternTexture = target as PatternTexture; EditorLayoutTools.ContentTitle("Contents"); using (new ContentsScope()) { using (var scrollViewScope = new EditorGUILayout.ScrollViewScope(scrollPosition, GUILayout.Height(350f))) { var sourceData = patternTexture.GetAllPatternData(); for (var i = 0; i < sourceData.Count; i++) { var data = sourceData[i]; using (new EditorGUILayout.HorizontalScope()) { using (new LabelWidthScope(20f)) { EditorGUILayout.PrefixLabel(i.ToString(), EditorStyles.miniLabel); } EditorGUILayout.SelectableLabel(data.TextureName, EditorStyles.textArea, GUILayout.Height(18f)); using (new DisableScope(previewGuid == data.Guid)) { using (new EditorGUILayout.VerticalScope(GUILayout.Width(50f))) { GUILayout.Space(3f); if (GUILayout.Button("select", EditorStyles.miniButton, GUILayout.Width(50f))) { previewGuid = data.Guid; var assetPath = AssetDatabase.GUIDToAssetPath(previewGuid); previewTexture = AssetDatabase.LoadMainAssetAtPath(assetPath) as Texture; Repaint(); } } } } } scrollPosition = scrollViewScope.scrollPosition; } } }
private void DrawInspector() { if (!string.IsNullOrEmpty(instance.VersionHash)) { EditorGUILayout.LabelField("Version:", GUILayout.Width(50f)); GUILayout.Space(-5f); EditorGUILayout.SelectableLabel(instance.VersionHash, hashGuiStyle, GUILayout.Height(14f)); } EditorGUILayout.LabelField(totalAssetCountText, GUILayout.Width(150f)); EditorGUILayout.Separator(); using (new EditorGUILayout.HorizontalScope()) { Action <string> onChangeSearchText = x => { searchText = x; var searchKeywords = BuildSearchKeywords(); searchedInfos = currentInfos.Where(info => info.IsSearchedHit(searchKeywords)).ToArray(); asstInfoScrollView.ScrollPosition = Vector2.zero; asstInfoScrollView.Contents = searchedInfos; Repaint(); }; Action onSearchCancel = () => { searchText = string.Empty; searchedInfos = null; currentInfos.ForEach(x => x.ResetSearch()); asstInfoScrollView.ScrollPosition = Vector2.zero; asstInfoScrollView.Contents = currentInfos; Repaint(); }; EditorLayoutTools.DrawSearchTextField(searchText, onChangeSearchText, onSearchCancel); } GUILayout.Space(3f); asstInfoScrollView.Draw(); }
protected override void DrawContent(int index, FindDependencyAssetsWindow.AssetReferenceInfo content) { var count = content.ReferenceAssets.Length; if (count < 2) { return; } using (new EditorGUILayout.HorizontalScope()) { EditorLayoutTools.DrawLabelWithBackground(count.ToString(), new Color(1f, 0.65f, 0f, 0.5f), null, TextAnchor.MiddleCenter, 30f); EditorGUILayout.ObjectField("", content.Asset, typeof(Object), false, GUILayout.Width(250f)); } }
void OnGUI() { EditorLayoutTools.SetLabelWidth(120f); EditorGUILayout.Separator(); using (new EditorGUILayout.HorizontalScope()) { var sceneName = Path.GetFileName(targetScenePath); if (EditorLayoutTools.DrawPrefixButton("Scene", GUILayout.Width(65f))) { SceneSelectorPrefs.selectedScenePath = targetScenePath; SceneSelector.Open().Subscribe(OnSelectScene); } var sceneNameStyle = GUI.skin.GetStyle("TextArea"); sceneNameStyle.alignment = TextAnchor.MiddleLeft; EditorGUILayout.SelectableLabel(sceneName, sceneNameStyle, GUILayout.Height(18f)); GUILayout.Space(5f); } GUILayout.Space(5f); using (new EditorGUILayout.HorizontalScope()) { GUILayout.Space(5f); // 下記条件時は再生ボタンを非アクティブ:. // ・実行中. // ・ビルド中. // ・遷移先シーンが未選択. GUI.enabled = !(EditorApplication.isPlaying || EditorApplication.isCompiling || string.IsNullOrEmpty(targetScenePath)); if (GUILayout.Button("Launch")) { Launch().Subscribe(); } GUI.enabled = true; GUILayout.Space(5f); } }
void OnGUI() { EditorGUILayout.Separator(); var backgroundColor = new Color(0.8f, 1.0f, 0.3f); var labelColor = new Color(0.8f, 0.8f, 0.8f, 0.8f); EditorLayoutTools.DrawLabelWithBackground("Import from AtomCraft folder", backgroundColor, labelColor); if (GUILayout.Button("Import")) { CriAssetUpdater.Execute(); } EditorGUILayout.Separator(); }
void OnGUI() { EditorLayoutTools.SetLabelWidth(80f); GUILayout.Space(6f); if (objects == null || objects.Length == 0) { EditorGUILayout.HelpBox("No " + GetTypeName(type) + " components found.\nTry creating a new one.", MessageType.Info); } else { Object sel = null; scroll = GUILayout.BeginScrollView(scroll); foreach (Object o in objects) { if (DrawObject(o)) { sel = o; } } GUILayout.EndScrollView(); if (sel != null) { callback(sel); Close(); } } if (!searched) { GUILayout.Space(6f); GUILayout.BeginHorizontal(); GUILayout.FlexibleSpace(); bool search = GUILayout.Button("Show All", "LargeButton", GUILayout.Width(120f)); GUILayout.FlexibleSpace(); GUILayout.EndHorizontal(); if (search) { Search(); } } }
public override void DrawGUI(params GUILayoutOption[] option) { if (EditorLayoutTools.DrawHeader(title, headerKey)) { using (new ContentsScope()) { var scrollViewHeight = Mathf.Min(Contents.Length * 18f, 150f); var options = new List <GUILayoutOption>(); options.Add(GUILayout.Height(scrollViewHeight)); options.AddRange(option); base.DrawGUI(options.ToArray()); } } }
private static void DrawSprite(Texture2D tex, Rect drawRect, SpriteData sprite, Color color, bool hasLabel) { if (!tex || sprite == null) { return; } EditorLayoutTools.DrawSprite( tex, drawRect, color, null, sprite.x, sprite.y, sprite.width, sprite.height, sprite.borderLeft, sprite.borderBottom, sprite.borderRight, sprite.borderTop, hasLabel); }
protected void DrawMaterialSelector <T>(T instance) where T : TextEffectBase { var textEffectBase = instance as TextEffectBase; var reference = Reflection.GetPrivateField <TextEffectBase, Dictionary <Material, List <TextEffectBase> > >(textEffectBase, "reference", BindingFlags.Static); if (reference == null || reference.IsEmpty()) { return; } var targets = reference.Values .Select(x => x.Select(y => y as T).Where(y => y != null)) .Select(x => x.FirstOrDefault()) .Where(x => x != null) .Cast <TextEffectBase>() .ToArray(); // 1つしかない時は自身のみなので不要. if (targets.Length <= 1) { return; } GUILayout.Space(2f); if (EditorLayoutTools.DrawHeader("MaterialSelector", "TextEffectBaseInspector.MaterialSelector")) { using (new ContentsScope()) { if (4 <= targets.Length) { using (var scrollViewScope = new EditorGUILayout.ScrollViewScope(scrollPosition, GUILayout.Height(130f))) { DrawSelectorContents(targets); scrollPosition = scrollViewScope.scrollPosition; } } else { DrawSelectorContents(targets); } } } }
//--------------------------------------- // Movie. //--------------------------------------- #if ENABLE_CRIWARE_SOFDEC private void DrawMovieAssetConfigGUI(CriAssetConfig instance) { if (EditorLayoutTools.Header("Movie", "CriAssetConfigInspector-Movie")) { using (new ContentsScope()) { var change = DrawAssetImportInfoGUI(instance.MovieImportInfo); if (change) { UnityEditorUtility.RegisterUndo("CriAssetConfigInspector Undo", instance); } } } GUILayout.Space(4f); }