示例#1
0
        private static void ProjectWindowItemOnGUI_Scripts(Rect rect, string assetName)
        {
            if (!assetName.EndsWith(".cs", StringComparison.CurrentCultureIgnoreCase))
            {
                return;
            }

            var script = AssetDatabase.LoadAssetAtPath <MonoScript>(assetName);

            if (script == null)
            {
                return;
            }

            var scriptIcon = EditorGUIUtility.ObjectContent(null, typeof(MonoScript)).image;
            var icon       = AutoGizmo.Editor_GetIcon(script);

            if (icon == null || scriptIcon == icon || scriptIcon == null)
            {
                return;
            }

            Rect iconRect = new Rect(rect.x - 5, rect.y + 5, 32, rect.height - 5);

            GUI.DrawTexture(iconRect, scriptIcon, ScaleMode.ScaleToFit, true, (float)scriptIcon.width / scriptIcon.height);
        }
示例#2
0
        private static void ProjectWindowItemOnGUI_Prefabs(Rect rect, string assetName)
        {
            if (!assetName.EndsWith(".prefab", StringComparison.CurrentCultureIgnoreCase))
            {
                return;
            }

            var go = AssetDatabase.LoadAssetAtPath <GameObject>(assetName);

            if (go == null)
            {
                return;
            }

            var texture = AutoGizmo.Editor_GetIcon(go);

            if (texture == null)
            {
                return;
            }

            Rect iconRect = new Rect(rect.x - 5, rect.y + 5, 30, rect.height - 5);

            GUI.DrawTexture(iconRect, texture, ScaleMode.ScaleToFit, true, (float)texture.width / texture.height);
        }
示例#3
0
        private void HeirachyWindowItemOnGUI(int instanceid, Rect rect)
        {
            if (EditorApplication.isPlayingOrWillChangePlaymode)
            {
                return;
            }

            var obj = EditorUtility.InstanceIDToObject(instanceid);

            if (obj == null)
            {
                return;
            }

            var go = obj as GameObject;

            if (go == null)
            {
                return;
            }

            var texture = AutoGizmo.Editor_GetIcon(go);

            if (texture == null)
            {
                return;
            }

            Rect iconRect = new Rect(rect.x + (EditorGUI.indentLevel - 1) * 35, rect.y, 30, rect.height);

            GUI.DrawTexture(iconRect, texture, ScaleMode.ScaleToFit, true, (float)texture.width / texture.height);
        }