From f049177e20a276049c61edbad631c1b2bbdd5706 Mon Sep 17 00:00:00 2001 From: chai Date: Thu, 15 Oct 2020 19:05:22 +0800 Subject: -advanced inspector +odin --- .../AdvancedInspector/FieldEditors/RangeEditor.cs | 109 --------------------- 1 file changed, 109 deletions(-) delete mode 100644 Assets/Plugins/Editor/AdvancedInspector/FieldEditors/RangeEditor.cs (limited to 'Assets/Plugins/Editor/AdvancedInspector/FieldEditors/RangeEditor.cs') diff --git a/Assets/Plugins/Editor/AdvancedInspector/FieldEditors/RangeEditor.cs b/Assets/Plugins/Editor/AdvancedInspector/FieldEditors/RangeEditor.cs deleted file mode 100644 index 0f540c19..00000000 --- a/Assets/Plugins/Editor/AdvancedInspector/FieldEditors/RangeEditor.cs +++ /dev/null @@ -1,109 +0,0 @@ -using UnityEngine; -using UnityEditor; -using System; -using System.Collections; - -namespace AdvancedInspector -{ - public class RangeIntEditor : FieldEditor - { - public override Type[] EditedTypes - { - get { return new Type[] { typeof(RangeInt) }; } - } - - public override void Draw(InspectorField field, GUIStyle style) - { - RangeValueAttribute range = field.GetAttribute(); - if (range == null) - return; - - EditorGUILayout.BeginHorizontal(); - - RangeInt[] ranges = field.GetValues(); - - int[] mins = new int[ranges.Length]; - int[] maxs = new int[ranges.Length]; - int min = ranges[0].min; - int max = ranges[0].max; - bool different = false; - - for (int i = 0; i < ranges.Length; i++) - { - mins[i] = ranges[i].min; - maxs[i] = ranges[i].max; - if (ranges[i].min != min || ranges[0].max != max) - different = true; - } - - if (IntegerEditor.DrawInt("", mins, out min, GUILayout.Width(64))) - for (int i = 0; i < field.Instances.Length; i++) - field.SetValue(field.Instances[i], new RangeInt(min, ranges[i].max)); - - EditorGUI.BeginChangeCheck(); - float fMin = min; - float fMax = max; - EditorGUI.showMixedValue = different; - EditorGUILayout.MinMaxSlider(ref fMin, ref fMax, range.Min, range.Max); - if (EditorGUI.EndChangeCheck() && min < max) - for (int i = 0; i < field.Instances.Length; i++) - field.SetValue(field.Instances[i], new RangeInt((int)fMin, (int)fMax)); - - if (IntegerEditor.DrawInt("", maxs, out max, GUILayout.Width(64))) - for (int i = 0; i < field.Instances.Length; i++) - field.SetValue(field.Instances[i], new RangeInt(ranges[i].min, max)); - - EditorGUILayout.EndHorizontal(); - } - } - - public class RangeFloatEditor : FieldEditor - { - public override Type[] EditedTypes - { - get { return new Type[] { typeof(RangeFloat) }; } - } - - public override void Draw(InspectorField field, GUIStyle style) - { - RangeValueAttribute range = field.GetAttribute(); - if (range == null) - return; - - EditorGUILayout.BeginHorizontal(); - - RangeFloat[] ranges = field.GetValues(); - - float[] mins = new float[ranges.Length]; - float[] maxs = new float[ranges.Length]; - float min = ranges[0].min; - float max = ranges[0].max; - bool different = false; - - for (int i = 0; i < ranges.Length; i++) - { - mins[i] = ranges[i].min; - maxs[i] = ranges[i].max; - if (ranges[i].min != min || ranges[0].max != max) - different = true; - } - - if (FloatEditor.DrawFloat("", mins, out min, GUILayout.Width(64))) - for (int i = 0; i < field.Instances.Length; i++) - field.SetValue(field.Instances[i], new RangeFloat(min, ranges[i].max)); - - EditorGUI.BeginChangeCheck(); - EditorGUI.showMixedValue = different; - EditorGUILayout.MinMaxSlider(ref min, ref max, range.Min, range.Max); - if (EditorGUI.EndChangeCheck() && min < max) - for (int i = 0; i < field.Instances.Length; i++) - field.SetValue(field.Instances[i], new RangeFloat(min, max)); - - if (FloatEditor.DrawFloat("", maxs, out max, GUILayout.Width(64))) - for (int i = 0; i < field.Instances.Length; i++) - field.SetValue(field.Instances[i], new RangeFloat(ranges[i].min, max)); - - EditorGUILayout.EndHorizontal(); - } - } -} \ No newline at end of file -- cgit v1.1-26-g67d0