diff --git a/Editor/HierarchyData.cs b/Editor/HierarchyData.cs index 8d855b4..c7fda2c 100644 --- a/Editor/HierarchyData.cs +++ b/Editor/HierarchyData.cs @@ -1,4 +1,4 @@ -using UnityEditor; +using UnityEditor; using UnityEngine; namespace Febucci.HierarchyData @@ -11,6 +11,8 @@ public class HierarchyData : ScriptableObject public bool drawActivationToggle = true; + public bool drawScriptMark = true; + #region Icons Data [System.Serializable] @@ -137,4 +139,4 @@ private void OnValidate() HierarchyDrawer.Initialize(); } } -} \ No newline at end of file +} diff --git a/Editor/HierarchyDrawer.cs b/Editor/HierarchyDrawer.cs index efcfbb0..55a9982 100644 --- a/Editor/HierarchyDrawer.cs +++ b/Editor/HierarchyDrawer.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using UnityEditor; using UnityEngine; @@ -341,10 +341,10 @@ static void RetrieveDataFromScene() sceneGameObjects.Clear(); iconsPositions.Clear(); - var prefabStage = UnityEditor.Experimental.SceneManagement.PrefabStageUtility.GetCurrentPrefabStage(); + var prefabStage = UnityEditor.SceneManagement.PrefabStageUtility.GetCurrentPrefabStage(); if (prefabStage != null) { - var prefabContentsRoot = UnityEditor.Experimental.SceneManagement.PrefabStageUtility.GetCurrentPrefabStage().prefabContentsRoot; + var prefabContentsRoot = UnityEditor.SceneManagement.PrefabStageUtility.GetCurrentPrefabStage().prefabContentsRoot; AnalyzeGoWithChildren( go: prefabContentsRoot, @@ -629,6 +629,30 @@ static void DrawCore(int instanceID, Rect selectionRect) #endregion + #region DrawScriptMark + if (data.drawScriptMark) + { + void DrawQuad(Rect position, Color color) + { + Texture2D texture = new Texture2D(1, 1); + texture.SetPixel(0, 0, color); + texture.Apply(); + GUI.skin.box.normal.background = texture; + GUI.Box(position, GUIContent.none); + } + + temp_iconsDrawedCount++; + + go = EditorUtility.InstanceIDToObject(instanceID) as GameObject; + var comp = go.GetComponent(); + if (comp == null) + return; + + var r = new Rect(selectionRect.xMax - 16 * (temp_iconsDrawedCount + 1) - 2, selectionRect.yMin, 12, 12); + DrawQuad(r, Color.grey); + } + #endregion + #region Drawing Icon if (data.icons.enabled)