From fc6de82e75310b4c007d80753a5f58e6692f4855 Mon Sep 17 00:00:00 2001 From: chai Date: Tue, 13 Oct 2020 10:33:05 +0800 Subject: +misc --- .../Scripts/Editor/AnimationCurveUtilityRecent.cs | 210 ++++++++++----------- .../Editor/EditorVersionCompatibilityUtility.cs | 134 ++++++------- .../Scripts/Editor/GUICompatibilityUtility.cs | 202 ++++++++++---------- 3 files changed, 273 insertions(+), 273 deletions(-) (limited to 'Assets/ThirdParty/UMotion/UMotionEditor/Scripts/Editor') diff --git a/Assets/ThirdParty/UMotion/UMotionEditor/Scripts/Editor/AnimationCurveUtilityRecent.cs b/Assets/ThirdParty/UMotion/UMotionEditor/Scripts/Editor/AnimationCurveUtilityRecent.cs index 0b44b879..d3238362 100644 --- a/Assets/ThirdParty/UMotion/UMotionEditor/Scripts/Editor/AnimationCurveUtilityRecent.cs +++ b/Assets/ThirdParty/UMotion/UMotionEditor/Scripts/Editor/AnimationCurveUtilityRecent.cs @@ -1,105 +1,105 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System.Reflection; - -namespace UMotionEditor -{ - public static class AnimationCurveUtilityRecent - { - //******************************************************************************** - // Public Properties - //******************************************************************************** - - public static bool WeightedTangentsImplemented - { - get - { - #if UNITY_2018_1_OR_NEWER - return true; - #else - return false; - #endif - } - } - - //******************************************************************************** - // Private Properties - //******************************************************************************** - - //---------------------- - // Inspector - //---------------------- - - //---------------------- - // Internal - //---------------------- - - //******************************************************************************** - // Public Methods - //******************************************************************************** - - public static void SetKeyWeightedMode(ref Keyframe key, int weightedMode) - { - #if UNITY_2018_1_OR_NEWER - key.weightedMode = (WeightedMode)weightedMode; - #endif - } - - public static int GetKeyWeightedMode(Keyframe key) - { - #if UNITY_2018_1_OR_NEWER - return (int)key.weightedMode; - #else - return 0; - #endif - } - - public static void SetKeyLeftWeight(ref Keyframe key, float weight) - { - #if UNITY_2018_1_OR_NEWER - key.inWeight = weight; - #endif - } - - public static float GetKeyLeftWeight(Keyframe key) - { - #if UNITY_2018_1_OR_NEWER - return key.inWeight; - #else - return 1f / 3f; - #endif - } - - public static void SetKeyRightWeight(ref Keyframe key, float weight) - { - #if UNITY_2018_1_OR_NEWER - key.outWeight = weight; - #endif - } - - public static float GetKeyRightWeight(Keyframe key) - { - #if UNITY_2018_1_OR_NEWER - return key.outWeight; - #else - return 1f / 3f; - #endif - } - - public static void InitializeKeyframe(int frame, float value, float inTangent, float outTangent, int weightedMode, float leftWeight, float rightWeight, out Keyframe key) - { - key = new Keyframe(frame, value, inTangent, outTangent); - - #if UNITY_2018_1_OR_NEWER - key.weightedMode = (WeightedMode)weightedMode; - key.inWeight = leftWeight; - key.outWeight = rightWeight; - #endif - } - - //******************************************************************************** - // Private Methods - //******************************************************************************** - } -} +using UnityEngine; +using UnityEditor; +using System.Collections; +using System.Reflection; + +namespace UMotionEditor +{ + public static class AnimationCurveUtilityRecent + { + //******************************************************************************** + // Public Properties + //******************************************************************************** + + public static bool WeightedTangentsImplemented + { + get + { + #if UNITY_2018_1_OR_NEWER + return true; + #else + return false; + #endif + } + } + + //******************************************************************************** + // Private Properties + //******************************************************************************** + + //---------------------- + // Inspector + //---------------------- + + //---------------------- + // Internal + //---------------------- + + //******************************************************************************** + // Public Methods + //******************************************************************************** + + public static void SetKeyWeightedMode(ref Keyframe key, int weightedMode) + { + #if UNITY_2018_1_OR_NEWER + key.weightedMode = (WeightedMode)weightedMode; + #endif + } + + public static int GetKeyWeightedMode(Keyframe key) + { + #if UNITY_2018_1_OR_NEWER + return (int)key.weightedMode; + #else + return 0; + #endif + } + + public static void SetKeyLeftWeight(ref Keyframe key, float weight) + { + #if UNITY_2018_1_OR_NEWER + key.inWeight = weight; + #endif + } + + public static float GetKeyLeftWeight(Keyframe key) + { + #if UNITY_2018_1_OR_NEWER + return key.inWeight; + #else + return 1f / 3f; + #endif + } + + public static void SetKeyRightWeight(ref Keyframe key, float weight) + { + #if UNITY_2018_1_OR_NEWER + key.outWeight = weight; + #endif + } + + public static float GetKeyRightWeight(Keyframe key) + { + #if UNITY_2018_1_OR_NEWER + return key.outWeight; + #else + return 1f / 3f; + #endif + } + + public static void InitializeKeyframe(int frame, float value, float inTangent, float outTangent, int weightedMode, float leftWeight, float rightWeight, out Keyframe key) + { + key = new Keyframe(frame, value, inTangent, outTangent); + + #if UNITY_2018_1_OR_NEWER + key.weightedMode = (WeightedMode)weightedMode; + key.inWeight = leftWeight; + key.outWeight = rightWeight; + #endif + } + + //******************************************************************************** + // Private Methods + //******************************************************************************** + } +} diff --git a/Assets/ThirdParty/UMotion/UMotionEditor/Scripts/Editor/EditorVersionCompatibilityUtility.cs b/Assets/ThirdParty/UMotion/UMotionEditor/Scripts/Editor/EditorVersionCompatibilityUtility.cs index 318bd59e..567b7a0e 100644 --- a/Assets/ThirdParty/UMotion/UMotionEditor/Scripts/Editor/EditorVersionCompatibilityUtility.cs +++ b/Assets/ThirdParty/UMotion/UMotionEditor/Scripts/Editor/EditorVersionCompatibilityUtility.cs @@ -1,67 +1,67 @@ -using UnityEngine; -using UnityEditor; -using System.Collections; -using System.Collections.Generic; -using System.Collections.ObjectModel; -using UnityEditor.Compilation; -#if UNITY_2018_3_OR_NEWER -using UnityEditor.Experimental.SceneManagement; -#endif - -namespace UMotionEditor -{ - public static class EditorVersionCompatibilityUtility - { - //******************************************************************************** - // Public Properties - //******************************************************************************** - - //******************************************************************************** - // Private Properties - //******************************************************************************** - - //---------------------- - // Inspector - //---------------------- - - //---------------------- - // Internal - //---------------------- - - //******************************************************************************** - // Public Methods - //******************************************************************************** - - public static bool IsModelPrefab(GameObject gameObject) - { - #if UNITY_2018_3_OR_NEWER - return (PrefabUtility.GetPrefabAssetType(gameObject) == PrefabAssetType.Model); - #else - return (PrefabUtility.GetPrefabType(gameObject) == PrefabType.ModelPrefab); - #endif - } - - public static bool IsPrefab(GameObject gameObject) - { - #if UNITY_2018_3_OR_NEWER - return (PrefabUtility.GetPrefabAssetType(gameObject) != PrefabAssetType.NotAPrefab); - #else - return (PrefabUtility.GetPrefabType(gameObject) != PrefabType.None); - #endif - } - - public static bool IsInPrefabStage() - { - #if UNITY_2018_3_OR_NEWER - return (PrefabStageUtility.GetCurrentPrefabStage() != null); - #else - return false; - #endif - } - - //******************************************************************************** - // Private Methods - //******************************************************************************** - - } -} +using UnityEngine; +using UnityEditor; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using UnityEditor.Compilation; +#if UNITY_2018_3_OR_NEWER +using UnityEditor.Experimental.SceneManagement; +#endif + +namespace UMotionEditor +{ + public static class EditorVersionCompatibilityUtility + { + //******************************************************************************** + // Public Properties + //******************************************************************************** + + //******************************************************************************** + // Private Properties + //******************************************************************************** + + //---------------------- + // Inspector + //---------------------- + + //---------------------- + // Internal + //---------------------- + + //******************************************************************************** + // Public Methods + //******************************************************************************** + + public static bool IsModelPrefab(GameObject gameObject) + { + #if UNITY_2018_3_OR_NEWER + return (PrefabUtility.GetPrefabAssetType(gameObject) == PrefabAssetType.Model); + #else + return (PrefabUtility.GetPrefabType(gameObject) == PrefabType.ModelPrefab); + #endif + } + + public static bool IsPrefab(GameObject gameObject) + { + #if UNITY_2018_3_OR_NEWER + return (PrefabUtility.GetPrefabAssetType(gameObject) != PrefabAssetType.NotAPrefab); + #else + return (PrefabUtility.GetPrefabType(gameObject) != PrefabType.None); + #endif + } + + public static bool IsInPrefabStage() + { + #if UNITY_2018_3_OR_NEWER + return (PrefabStageUtility.GetCurrentPrefabStage() != null); + #else + return false; + #endif + } + + //******************************************************************************** + // Private Methods + //******************************************************************************** + + } +} diff --git a/Assets/ThirdParty/UMotion/UMotionEditor/Scripts/Editor/GUICompatibilityUtility.cs b/Assets/ThirdParty/UMotion/UMotionEditor/Scripts/Editor/GUICompatibilityUtility.cs index 73a44bd4..2b9c1775 100644 --- a/Assets/ThirdParty/UMotion/UMotionEditor/Scripts/Editor/GUICompatibilityUtility.cs +++ b/Assets/ThirdParty/UMotion/UMotionEditor/Scripts/Editor/GUICompatibilityUtility.cs @@ -1,102 +1,102 @@ -using System; -using System.Reflection; -using UnityEngine; -using UnityEditor; - -namespace UMotionEditor -{ - public static class GUICompatibilityUtility - { - //******************************************************************************** - // Public Properties - //******************************************************************************** - - public static event System.Action OnSceneGui - { - add - { - #if UNITY_2019_1_OR_NEWER - SceneView.duringSceneGui += value; - #else - legacySceneViewGUI += value; - if (!initialized) - { - // Doing this in a static constructor instead caused an exception in Unity 2017.4 - SceneView.onSceneGUIDelegate += delegate(SceneView sceneView) { legacySceneViewGUI(sceneView); }; - initialized = true; - } - #endif - } - remove - { - #if UNITY_2019_1_OR_NEWER - SceneView.duringSceneGui -= value; - #else - legacySceneViewGUI -= value; - #endif - } - } - - //******************************************************************************** - // Private Properties - //******************************************************************************** - - //---------------------- - // Inspector - //---------------------- - - //---------------------- - // Internal - //---------------------- - #if !UNITY_2019_1_OR_NEWER - private static event System.Action legacySceneViewGUI; - private static bool initialized = false; - #endif - - //******************************************************************************** - // Public Methods - //******************************************************************************** - - [MenuItem("Window/UMotion Editor/Contact Support", true, 1232)] - public static bool UMotionSupportMenuItemValidate() - { - CheckCurrentAssembly(); - return true; - } - - [MenuItem("Window/UMotion Editor/Contact Support", false, 1232)] - public static void UMotionSupportMenuItem() - { - Help.BrowseURL("https://support.soxware.com"); - } - - public static Color ColorField(GUIContent label, Color value, bool showEyedropper, bool showAlpha, bool hdr, params GUILayoutOption[] options) - { - #if UNITY_2018_1_OR_NEWER - return EditorGUILayout.ColorField(label, value, showEyedropper, showAlpha, hdr, options); - #else - return EditorGUILayout.ColorField(label, value, showEyedropper, showAlpha, hdr, null, options); - #endif - } - - //******************************************************************************** - // Private Methods - //******************************************************************************** - - private static bool CheckCurrentAssembly() - { - string applicationAssemblyName = VersionCompatibilityUtility.GetCurrentAssemblyName(); - string editorAssemblyName = Assembly.GetExecutingAssembly().GetName().Name; - - bool assemblyOk = (applicationAssemblyName == "UMotionSourceApplication") && (editorAssemblyName == "UMotionSourceEditor"); - - if (!assemblyOk) - { - string message = string.Format("The UMotion script files are not compiled to the correct assembly:\r\n\r\n\"{0}\"\r\n(should be \"UMotionSourceApplication\")\r\n\r\n\"{1}\"\r\n(should be \"UMotionSourceEditor\")\r\n\r\nMake sure that you haven't deleted or re-named the assembly definition files inside the UMotion folder.", applicationAssemblyName, editorAssemblyName); - EditorUtility.DisplayDialog("UMotion - Invalid Assembly", message, "OK"); - } - - return assemblyOk; - } - } +using System; +using System.Reflection; +using UnityEngine; +using UnityEditor; + +namespace UMotionEditor +{ + public static class GUICompatibilityUtility + { + //******************************************************************************** + // Public Properties + //******************************************************************************** + + public static event System.Action OnSceneGui + { + add + { + #if UNITY_2019_1_OR_NEWER + SceneView.duringSceneGui += value; + #else + legacySceneViewGUI += value; + if (!initialized) + { + // Doing this in a static constructor instead caused an exception in Unity 2017.4 + SceneView.onSceneGUIDelegate += delegate(SceneView sceneView) { legacySceneViewGUI(sceneView); }; + initialized = true; + } + #endif + } + remove + { + #if UNITY_2019_1_OR_NEWER + SceneView.duringSceneGui -= value; + #else + legacySceneViewGUI -= value; + #endif + } + } + + //******************************************************************************** + // Private Properties + //******************************************************************************** + + //---------------------- + // Inspector + //---------------------- + + //---------------------- + // Internal + //---------------------- + #if !UNITY_2019_1_OR_NEWER + private static event System.Action legacySceneViewGUI; + private static bool initialized = false; + #endif + + //******************************************************************************** + // Public Methods + //******************************************************************************** + + [MenuItem("Window/UMotion Editor/Contact Support", true, 1232)] + public static bool UMotionSupportMenuItemValidate() + { + CheckCurrentAssembly(); + return true; + } + + [MenuItem("Window/UMotion Editor/Contact Support", false, 1232)] + public static void UMotionSupportMenuItem() + { + Help.BrowseURL("https://support.soxware.com"); + } + + public static Color ColorField(GUIContent label, Color value, bool showEyedropper, bool showAlpha, bool hdr, params GUILayoutOption[] options) + { + #if UNITY_2018_1_OR_NEWER + return EditorGUILayout.ColorField(label, value, showEyedropper, showAlpha, hdr, options); + #else + return EditorGUILayout.ColorField(label, value, showEyedropper, showAlpha, hdr, null, options); + #endif + } + + //******************************************************************************** + // Private Methods + //******************************************************************************** + + private static bool CheckCurrentAssembly() + { + string applicationAssemblyName = VersionCompatibilityUtility.GetCurrentAssemblyName(); + string editorAssemblyName = Assembly.GetExecutingAssembly().GetName().Name; + + bool assemblyOk = (applicationAssemblyName == "UMotionSourceApplication") && (editorAssemblyName == "UMotionSourceEditor"); + + if (!assemblyOk) + { + string message = string.Format("The UMotion script files are not compiled to the correct assembly:\r\n\r\n\"{0}\"\r\n(should be \"UMotionSourceApplication\")\r\n\r\n\"{1}\"\r\n(should be \"UMotionSourceEditor\")\r\n\r\nMake sure that you haven't deleted or re-named the assembly definition files inside the UMotion folder.", applicationAssemblyName, editorAssemblyName); + EditorUtility.DisplayDialog("UMotion - Invalid Assembly", message, "OK"); + } + + return assemblyOk; + } + } } \ No newline at end of file -- cgit v1.1-26-g67d0