From 0841d5e9dd525817d93f5ae83054985c0cc51ae7 Mon Sep 17 00:00:00 2001 From: VladV Date: Sun, 8 May 2022 14:21:18 +0300 Subject: [PATCH] Access to unity internal with InternalsVisibleTo instead of reflection --- Editor/Elements/TriListElement.cs | 24 +--- Editor/TriInspector.Editor.asmdef | 5 +- Editor/Utilities/EditorGUIUtilityProxy.cs | 23 ---- .../Utilities/InternalEditorUtilityProxy.cs | 34 ------ .../Utilities/ScriptAttributeUtilityProxy.cs | 84 ------------- .../TriReflectionCompileExtensions.cs | 115 ------------------ .../TriReflectionCompileExtensions.cs.meta | 3 - Installer.unitypackage | Bin 0 -> 525 bytes Installer.unitypackage.meta | 7 ++ README.md | 2 + Unity.InternalAPIEditorBridge.012.meta | 8 ++ .../AssemblyInfo.cs | 3 + .../AssemblyInfo.cs.meta | 3 + .../EditorGUIUtilityProxy.cs | 13 ++ .../EditorGUIUtilityProxy.cs.meta | 0 .../InternalEditorUtilityProxy.cs | 17 +++ .../InternalEditorUtilityProxy.cs.meta | 0 .../ReorderableListProxy.cs | 30 +++++ .../ReorderableListProxy.cs.meta | 11 ++ .../ScriptAttributeUtilityProxy.cs | 37 ++++++ .../ScriptAttributeUtilityProxy.cs.meta | 0 .../Unity.InternalAPIEditorBridge.012.asmref | 3 + ...ty.InternalAPIEditorBridge.012.asmref.meta | 7 ++ 23 files changed, 148 insertions(+), 281 deletions(-) delete mode 100644 Editor/Utilities/EditorGUIUtilityProxy.cs delete mode 100644 Editor/Utilities/InternalEditorUtilityProxy.cs delete mode 100644 Editor/Utilities/ScriptAttributeUtilityProxy.cs delete mode 100644 Editor/Utilities/TriReflectionCompileExtensions.cs delete mode 100644 Editor/Utilities/TriReflectionCompileExtensions.cs.meta create mode 100644 Installer.unitypackage create mode 100644 Installer.unitypackage.meta create mode 100644 Unity.InternalAPIEditorBridge.012.meta create mode 100644 Unity.InternalAPIEditorBridge.012/AssemblyInfo.cs create mode 100644 Unity.InternalAPIEditorBridge.012/AssemblyInfo.cs.meta create mode 100644 Unity.InternalAPIEditorBridge.012/EditorGUIUtilityProxy.cs rename {Editor/Utilities => Unity.InternalAPIEditorBridge.012}/EditorGUIUtilityProxy.cs.meta (100%) create mode 100644 Unity.InternalAPIEditorBridge.012/InternalEditorUtilityProxy.cs rename {Editor/Utilities => Unity.InternalAPIEditorBridge.012}/InternalEditorUtilityProxy.cs.meta (100%) create mode 100644 Unity.InternalAPIEditorBridge.012/ReorderableListProxy.cs create mode 100644 Unity.InternalAPIEditorBridge.012/ReorderableListProxy.cs.meta create mode 100644 Unity.InternalAPIEditorBridge.012/ScriptAttributeUtilityProxy.cs rename {Editor/Utilities => Unity.InternalAPIEditorBridge.012}/ScriptAttributeUtilityProxy.cs.meta (100%) create mode 100644 Unity.InternalAPIEditorBridge.012/Unity.InternalAPIEditorBridge.012.asmref create mode 100644 Unity.InternalAPIEditorBridge.012/Unity.InternalAPIEditorBridge.012.asmref.meta diff --git a/Editor/Elements/TriListElement.cs b/Editor/Elements/TriListElement.cs index cc5d388..6d364ed 100644 --- a/Editor/Elements/TriListElement.cs +++ b/Editor/Elements/TriListElement.cs @@ -1,5 +1,5 @@ -using System; -using System.Collections; +using System.Collections; +using TriInspectorUnityInternalBridge; using TriInspector.Utilities; using UnityEditor; using UnityEditorInternal; @@ -11,28 +11,12 @@ namespace TriInspector.Elements { private static readonly GUIContent ListIsNullContent = new GUIContent("List is null"); - private static readonly Action ReorderableListDrawHeaderMethod; - private static readonly Action ReorderableListClearCacheRecursiveMethod; - private readonly TriProperty _property; private readonly ReorderableList _reorderableListGui; private readonly bool _alwaysExpanded; private float _lastContentWidth; - static TriListElement() - { - ReorderableListDrawHeaderMethod = typeof(ReorderableList) - .CompileVoidInstanceMethod("DoListHeader"); - -#if UNITY_2020_2_OR_NEWER - ReorderableListClearCacheRecursiveMethod = typeof(ReorderableList) - .CompileVoidInstanceMethod("ClearCacheRecursive"); -#else - ReorderableListClearCacheRecursiveMethod = delegate { }; -#endif - } - public TriListElement(TriProperty property) { property.TryGetAttribute(out ListDrawerSettings settings); @@ -86,7 +70,7 @@ namespace TriInspector.Elements if (dirty) { - ReorderableListClearCacheRecursiveMethod(_reorderableListGui); + ReorderableListProxy.ClearCacheRecursive(_reorderableListGui); } return dirty; @@ -121,7 +105,7 @@ namespace TriInspector.Elements if (!_property.IsExpanded) { - ReorderableListDrawHeaderMethod(_reorderableListGui, new Rect(position) + ReorderableListProxy.DoListHeader(_reorderableListGui, new Rect(position) { yMax = position.yMax - 4, }); diff --git a/Editor/TriInspector.Editor.asmdef b/Editor/TriInspector.Editor.asmdef index 5908600..edae90f 100644 --- a/Editor/TriInspector.Editor.asmdef +++ b/Editor/TriInspector.Editor.asmdef @@ -2,14 +2,15 @@ "name": "TriInspector.Editor", "rootNamespace": "", "references": [ - "TriInspector" + "TriInspector", + "Unity.InternalAPIEditorBridge.012" ], "includePlatforms": [ "Editor" ], "excludePlatforms": [], "allowUnsafeCode": false, - "overrideReferences": false, + "overrideReferences": true, "precompiledReferences": [], "autoReferenced": true, "defineConstraints": [], diff --git a/Editor/Utilities/EditorGUIUtilityProxy.cs b/Editor/Utilities/EditorGUIUtilityProxy.cs deleted file mode 100644 index d57f2cf..0000000 --- a/Editor/Utilities/EditorGUIUtilityProxy.cs +++ /dev/null @@ -1,23 +0,0 @@ -using System; -using UnityEditor; -using UnityEngine; - -namespace TriInspector.Utilities -{ - public class EditorGUIUtilityProxy - { - private static Func _getHelpIcon; - - public static Texture2D GetHelpIcon(MessageType type) - { - if (_getHelpIcon == null) - { - _getHelpIcon = TriReflectionUtilities - .GetUnityEditorTypeByFullName("UnityEditor.EditorGUIUtility") - .CompileStaticMethod("GetHelpIcon"); - } - - return _getHelpIcon(type); - } - } -} \ No newline at end of file diff --git a/Editor/Utilities/InternalEditorUtilityProxy.cs b/Editor/Utilities/InternalEditorUtilityProxy.cs deleted file mode 100644 index fe7a689..0000000 --- a/Editor/Utilities/InternalEditorUtilityProxy.cs +++ /dev/null @@ -1,34 +0,0 @@ -using System; - -namespace TriInspector.Utilities -{ - internal static class InternalEditorUtilityProxy - { - private static Func _getIsInspectorExpanded; - private static Action _setIsInspectorExpanded; - - public static bool GetIsInspectorExpanded(UnityEngine.Object obj) - { - if (_getIsInspectorExpanded == null) - { - _getIsInspectorExpanded = TriReflectionUtilities - .GetUnityEditorTypeByFullName("UnityEditorInternal.InternalEditorUtility") - .CompileStaticMethod("GetIsInspectorExpanded"); - } - - return _getIsInspectorExpanded.Invoke(obj); - } - - public static void SetIsInspectorExpanded(UnityEngine.Object obj, bool isExpanded) - { - if (_setIsInspectorExpanded == null) - { - _setIsInspectorExpanded = TriReflectionUtilities - .GetUnityEditorTypeByFullName("UnityEditorInternal.InternalEditorUtility") - .CompileStaticVoidMethod("SetIsInspectorExpanded"); - } - - _setIsInspectorExpanded.Invoke(obj, isExpanded); - } - } -} \ No newline at end of file diff --git a/Editor/Utilities/ScriptAttributeUtilityProxy.cs b/Editor/Utilities/ScriptAttributeUtilityProxy.cs deleted file mode 100644 index 0a56d66..0000000 --- a/Editor/Utilities/ScriptAttributeUtilityProxy.cs +++ /dev/null @@ -1,84 +0,0 @@ -using System; -using UnityEditor; -using UnityEngine; - -namespace TriInspector.Utilities -{ - internal static class ScriptAttributeUtilityProxy - { - private static Func _getHandler; - - public static PropertyHandlerProxy GetHandler(SerializedProperty property) - { - if (_getHandler == null) - { - _getHandler = TriReflectionUtilities - .GetUnityEditorTypeByFullName("UnityEditor.ScriptAttributeUtility") - .CompileStaticMethod("GetHandler"); - } - - return new PropertyHandlerProxy(_getHandler(property)); - } - } - - public readonly struct PropertyHandlerProxy - { - private static Func _hasPropertyDrawerProperty; - private static Func _getHeightMethod; - private static Func _onGuiMethod; - - private readonly object _self; - - internal PropertyHandlerProxy(object self) - { - _self = self; - } - - // ReSharper disable once InconsistentNaming - public bool hasPropertyDrawer - { - get - { - if (_hasPropertyDrawerProperty == null) - { - _hasPropertyDrawerProperty = TriReflectionUtilities - .GetUnityEditorTypeByFullName("UnityEditor.PropertyHandler") - .CompileInstanceProperty("hasPropertyDrawer"); - } - - return _hasPropertyDrawerProperty(_self); - } - } - - public float GetHeight( - SerializedProperty property, - GUIContent label, - bool includeChildren) - { - if (_getHeightMethod == null) - { - _getHeightMethod = TriReflectionUtilities - .GetUnityEditorTypeByFullName("UnityEditor.PropertyHandler") - .CompileInstanceMethod("GetHeight"); - } - - return _getHeightMethod(_self, property, label, includeChildren); - } - - public bool OnGUI( - Rect position, - SerializedProperty property, - GUIContent label, - bool includeChildren) - { - if (_onGuiMethod == null) - { - _onGuiMethod = TriReflectionUtilities - .GetUnityEditorTypeByFullName("UnityEditor.PropertyHandler") - .CompileInstanceMethod("OnGUI"); - } - - return _onGuiMethod(_self, position, property, label, includeChildren); - } - } -} \ No newline at end of file diff --git a/Editor/Utilities/TriReflectionCompileExtensions.cs b/Editor/Utilities/TriReflectionCompileExtensions.cs deleted file mode 100644 index 532e936..0000000 --- a/Editor/Utilities/TriReflectionCompileExtensions.cs +++ /dev/null @@ -1,115 +0,0 @@ -using System; -using System.Linq; -using System.Linq.Expressions; -using System.Reflection; - -namespace TriInspector.Utilities -{ - internal static class TriReflectionCompileExtensions - { - public static Func CompileInstanceProperty(this Type type, string name) - { - const BindingFlags flags = BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic; - var property = GetProperty(type, name, flags); - - var target = Expression.Parameter(typeof(object)); - var body = Expression.Call(Expression.Convert(target, type), property.GetMethod); - var lambda = Expression.Lambda>(body, target); - return lambda.Compile(); - } - - public static Action CompileVoidInstanceMethod(this Type type, string name) - { - const BindingFlags flags = BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic; - var method = GetMethod(type, name, 0, flags); - - var target = Expression.Parameter(typeof(object)); - var body = Expression.Call(Expression.Convert(target, type), method); - var lambda = Expression.Lambda>(body, target); - return lambda.Compile(); - } - - public static Action CompileVoidInstanceMethod(this Type type, string name) - { - const BindingFlags flags = BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic; - var method = GetMethod(type, name, 1, flags); - - var target = Expression.Parameter(typeof(object)); - var a1 = Expression.Parameter(typeof(T1)); - var body = Expression.Call(Expression.Convert(target, type), method, a1); - var lambda = Expression.Lambda>(body, target, a1); - return lambda.Compile(); - } - - public static Func CompileInstanceMethod( - this Type type, string name) - { - const BindingFlags flags = BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic; - var method = GetMethod(type, name, 3, flags); - - var target = Expression.Parameter(typeof(object)); - var a1 = Expression.Parameter(typeof(T1)); - var a2 = Expression.Parameter(typeof(T2)); - var a3 = Expression.Parameter(typeof(T3)); - var body = Expression.Call(Expression.Convert(target, type), method, a1, a2, a3); - var lambda = Expression.Lambda>(body, target, a1, a2, a3); - return lambda.Compile(); - } - - public static Func CompileInstanceMethod( - this Type type, string name) - { - const BindingFlags flags = BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic; - var method = GetMethod(type, name, 4, flags); - - var target = Expression.Parameter(typeof(object)); - var a1 = Expression.Parameter(typeof(T1)); - var a2 = Expression.Parameter(typeof(T2)); - var a3 = Expression.Parameter(typeof(T3)); - var a4 = Expression.Parameter(typeof(T4)); - var body = Expression.Call(Expression.Convert(target, type), method, a1, a2, a3, a4); - var lambda = Expression.Lambda>(body, target, a1, a2, a3, a4); - return lambda.Compile(); - } - - public static Func CompileStaticMethod( - this Type type, string name) - { - const BindingFlags flags = BindingFlags.Static | BindingFlags.Public | BindingFlags.NonPublic; - var method = GetMethod(type, name, 1, flags); - - var a1 = Expression.Parameter(typeof(T1)); - var body = Expression.Call(method, a1); - var lambda = Expression.Lambda>(body, a1); - return lambda.Compile(); - } - - public static Action CompileStaticVoidMethod( - this Type type, string name) - { - const BindingFlags flags = BindingFlags.Static | BindingFlags.Public | BindingFlags.NonPublic; - var method = GetMethod(type, name, 2, flags); - - var a1 = Expression.Parameter(typeof(T1)); - var a2 = Expression.Parameter(typeof(T2)); - var body = Expression.Call(method, a1, a2); - var lambda = Expression.Lambda>(body, a1, a2); - return lambda.Compile(); - } - - private static PropertyInfo GetProperty(this Type type, string name, BindingFlags flags) - { - var property = type.GetProperties(flags).SingleOrDefault(it => it.Name == name); - return property ?? throw new InvalidOperationException($"Property {name} of type {type} not found"); - } - - private static MethodInfo GetMethod(Type type, string name, int parametersCount, BindingFlags flags) - { - var method = type.GetMethods(flags) - .SingleOrDefault(it => it.Name == name && it.GetParameters().Length == parametersCount); - - return method ?? throw new InvalidOperationException( - $"Method {name} of type {type} with {parametersCount} args not found"); - } - } -} \ No newline at end of file diff --git a/Editor/Utilities/TriReflectionCompileExtensions.cs.meta b/Editor/Utilities/TriReflectionCompileExtensions.cs.meta deleted file mode 100644 index 4a1f8fb..0000000 --- a/Editor/Utilities/TriReflectionCompileExtensions.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: d558661b36c94968ac0e2f704da4f6cb -timeCreated: 1639241554 \ No newline at end of file diff --git a/Installer.unitypackage b/Installer.unitypackage new file mode 100644 index 0000000000000000000000000000000000000000..b0fe9d902f40b6e507278e6a9d40c6dfb5988b3c GIT binary patch literal 525 zcmV+o0`mPIiwFoxqjzEi0AX@tXmn+5a4vLVascg?O>f&U42E^iuP|~RV#%MWZ|T|r zxop9(_A>0CSahaAmJCVWS`_{7qn!^RDKHN$mKCUb`)k~7dc&n>|W-X??f z=gxsAFM=}q$NFb9-PfPS8QNLQqKpJ*smU9!|HC9erkd9PXEk_Ep39K_qa@qu zpJjQ}&Hn`F|ET|SP@xJwpuV`j-L`HKM3YS`MG*|O#$>%d-d&x-&*`rf*1wNTK_l2h9)w~}j*W-{`R7%FnuaR0qK z9mw+;(mzYGllvdu0+Lbx=U~yv&4nw~;^E}NFIFzKYf!MphJ%-Z;T1FPYCJH>$jHdZ P$SdPFP!DmQ01^NInVb|- literal 0 HcmV?d00001 diff --git a/Installer.unitypackage.meta b/Installer.unitypackage.meta new file mode 100644 index 0000000..0a5a995 --- /dev/null +++ b/Installer.unitypackage.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 45e08a87d3d7eab48b90b26af99f1631 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/README.md b/README.md index e1e626d..40fd2bf 100644 --- a/README.md +++ b/README.md @@ -266,6 +266,8 @@ Minimal Unity Version is 2020.3. Library distributed as git package ([How to install package from git URL](https://docs.unity3d.com/Manual/upm-ui-giturl.html))
Git URL: `https://github.com/codewriter-packages/Tri-Inspector.git` +After installing the package, you need to unpack the `Installer.unitypackage` that comes with the package + ## License Tri-Inspector is [MIT licensed](./LICENSE.md). \ No newline at end of file diff --git a/Unity.InternalAPIEditorBridge.012.meta b/Unity.InternalAPIEditorBridge.012.meta new file mode 100644 index 0000000..90fba08 --- /dev/null +++ b/Unity.InternalAPIEditorBridge.012.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 17812d8658d186345af6f2e6bbc1c31b +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Unity.InternalAPIEditorBridge.012/AssemblyInfo.cs b/Unity.InternalAPIEditorBridge.012/AssemblyInfo.cs new file mode 100644 index 0000000..26f65e0 --- /dev/null +++ b/Unity.InternalAPIEditorBridge.012/AssemblyInfo.cs @@ -0,0 +1,3 @@ +using System.Runtime.CompilerServices; + +[assembly: InternalsVisibleTo("TriInspector.Editor")] \ No newline at end of file diff --git a/Unity.InternalAPIEditorBridge.012/AssemblyInfo.cs.meta b/Unity.InternalAPIEditorBridge.012/AssemblyInfo.cs.meta new file mode 100644 index 0000000..ec210bf --- /dev/null +++ b/Unity.InternalAPIEditorBridge.012/AssemblyInfo.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: ceaac34ef4d54edea2f5bd49bc1145a5 +timeCreated: 1652008241 \ No newline at end of file diff --git a/Unity.InternalAPIEditorBridge.012/EditorGUIUtilityProxy.cs b/Unity.InternalAPIEditorBridge.012/EditorGUIUtilityProxy.cs new file mode 100644 index 0000000..b611e1a --- /dev/null +++ b/Unity.InternalAPIEditorBridge.012/EditorGUIUtilityProxy.cs @@ -0,0 +1,13 @@ +using UnityEditor; +using UnityEngine; + +namespace TriInspector.Utilities +{ + internal static class EditorGUIUtilityProxy + { + public static Texture2D GetHelpIcon(MessageType type) + { + return EditorGUIUtility.GetHelpIcon(type); + } + } +} \ No newline at end of file diff --git a/Editor/Utilities/EditorGUIUtilityProxy.cs.meta b/Unity.InternalAPIEditorBridge.012/EditorGUIUtilityProxy.cs.meta similarity index 100% rename from Editor/Utilities/EditorGUIUtilityProxy.cs.meta rename to Unity.InternalAPIEditorBridge.012/EditorGUIUtilityProxy.cs.meta diff --git a/Unity.InternalAPIEditorBridge.012/InternalEditorUtilityProxy.cs b/Unity.InternalAPIEditorBridge.012/InternalEditorUtilityProxy.cs new file mode 100644 index 0000000..b72b919 --- /dev/null +++ b/Unity.InternalAPIEditorBridge.012/InternalEditorUtilityProxy.cs @@ -0,0 +1,17 @@ +using UnityEditorInternal; + +namespace TriInspector.Utilities +{ + internal static class InternalEditorUtilityProxy + { + public static bool GetIsInspectorExpanded(UnityEngine.Object obj) + { + return InternalEditorUtility.GetIsInspectorExpanded(obj); + } + + public static void SetIsInspectorExpanded(UnityEngine.Object obj, bool isExpanded) + { + InternalEditorUtility.SetIsInspectorExpanded(obj, isExpanded); + } + } +} \ No newline at end of file diff --git a/Editor/Utilities/InternalEditorUtilityProxy.cs.meta b/Unity.InternalAPIEditorBridge.012/InternalEditorUtilityProxy.cs.meta similarity index 100% rename from Editor/Utilities/InternalEditorUtilityProxy.cs.meta rename to Unity.InternalAPIEditorBridge.012/InternalEditorUtilityProxy.cs.meta diff --git a/Unity.InternalAPIEditorBridge.012/ReorderableListProxy.cs b/Unity.InternalAPIEditorBridge.012/ReorderableListProxy.cs new file mode 100644 index 0000000..a68ca9a --- /dev/null +++ b/Unity.InternalAPIEditorBridge.012/ReorderableListProxy.cs @@ -0,0 +1,30 @@ +using UnityEditorInternal; +using UnityEngine; + +namespace TriInspectorUnityInternalBridge +{ + internal static class ReorderableListProxy + { + public static void DoListHeader(ReorderableList list, Rect headerRect) + { + if (list.showDefaultBackground && Event.current.type == EventType.Repaint) + { + ReorderableList.defaultBehaviours.DrawHeaderBackground(headerRect); + } + + headerRect.xMin += 6f; + headerRect.xMax -= 6f; + headerRect.height -= 2f; + headerRect.y += 1; + + list.drawHeaderCallback?.Invoke(headerRect); + } + + public static void ClearCacheRecursive(ReorderableList list) + { +#if UNITY_2020_2_OR_NEWER + list.ClearCacheRecursive(); +#endif + } + } +} \ No newline at end of file diff --git a/Unity.InternalAPIEditorBridge.012/ReorderableListProxy.cs.meta b/Unity.InternalAPIEditorBridge.012/ReorderableListProxy.cs.meta new file mode 100644 index 0000000..71f029c --- /dev/null +++ b/Unity.InternalAPIEditorBridge.012/ReorderableListProxy.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: acf8923868a81dd41825ea3ce86c0455 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Unity.InternalAPIEditorBridge.012/ScriptAttributeUtilityProxy.cs b/Unity.InternalAPIEditorBridge.012/ScriptAttributeUtilityProxy.cs new file mode 100644 index 0000000..a8bd688 --- /dev/null +++ b/Unity.InternalAPIEditorBridge.012/ScriptAttributeUtilityProxy.cs @@ -0,0 +1,37 @@ +using UnityEditor; +using UnityEngine; + +namespace TriInspector.Utilities +{ + internal static class ScriptAttributeUtilityProxy + { + public static PropertyHandlerProxy GetHandler(SerializedProperty property) + { + var handler = ScriptAttributeUtility.GetHandler(property); + return new PropertyHandlerProxy(handler); + } + } + + internal readonly struct PropertyHandlerProxy + { + private readonly PropertyHandler _handler; + + internal PropertyHandlerProxy(PropertyHandler handler) + { + _handler = handler; + } + + // ReSharper disable once InconsistentNaming + public bool hasPropertyDrawer => _handler.hasPropertyDrawer; + + public float GetHeight(SerializedProperty property, GUIContent label, bool includeChildren) + { + return _handler.GetHeight(property, label, includeChildren); + } + + public bool OnGUI(Rect position, SerializedProperty property, GUIContent label, bool includeChildren) + { + return _handler.OnGUI(position, property, label, includeChildren); + } + } +} \ No newline at end of file diff --git a/Editor/Utilities/ScriptAttributeUtilityProxy.cs.meta b/Unity.InternalAPIEditorBridge.012/ScriptAttributeUtilityProxy.cs.meta similarity index 100% rename from Editor/Utilities/ScriptAttributeUtilityProxy.cs.meta rename to Unity.InternalAPIEditorBridge.012/ScriptAttributeUtilityProxy.cs.meta diff --git a/Unity.InternalAPIEditorBridge.012/Unity.InternalAPIEditorBridge.012.asmref b/Unity.InternalAPIEditorBridge.012/Unity.InternalAPIEditorBridge.012.asmref new file mode 100644 index 0000000..d8a1848 --- /dev/null +++ b/Unity.InternalAPIEditorBridge.012/Unity.InternalAPIEditorBridge.012.asmref @@ -0,0 +1,3 @@ +{ + "reference": "Unity.InternalAPIEditorBridge.012" +} \ No newline at end of file diff --git a/Unity.InternalAPIEditorBridge.012/Unity.InternalAPIEditorBridge.012.asmref.meta b/Unity.InternalAPIEditorBridge.012/Unity.InternalAPIEditorBridge.012.asmref.meta new file mode 100644 index 0000000..814d423 --- /dev/null +++ b/Unity.InternalAPIEditorBridge.012/Unity.InternalAPIEditorBridge.012.asmref.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: ef298164c542ea34b917beb80251fa54 +AssemblyDefinitionReferenceImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: