diff options
| author | chai <chaifix@163.com> | 2020-11-26 20:52:34 +0800 |
|---|---|---|
| committer | chai <chaifix@163.com> | 2020-11-26 20:52:34 +0800 |
| commit | 5b158af90739dcbb89c1538a6cb8c65a875dce80 (patch) | |
| tree | f0437fff6efaab91ac850152a08aef288d572aab /Assets/BOXOPHOBIC/Utils/Editor/StyledMaterial/StyledToggleDrawer.cs | |
| parent | bc4d5201fc537f70cdcb576b57aaeb5d96527112 (diff) | |
*misc
Diffstat (limited to 'Assets/BOXOPHOBIC/Utils/Editor/StyledMaterial/StyledToggleDrawer.cs')
| -rw-r--r-- | Assets/BOXOPHOBIC/Utils/Editor/StyledMaterial/StyledToggleDrawer.cs | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/Assets/BOXOPHOBIC/Utils/Editor/StyledMaterial/StyledToggleDrawer.cs b/Assets/BOXOPHOBIC/Utils/Editor/StyledMaterial/StyledToggleDrawer.cs new file mode 100644 index 00000000..79fb4543 --- /dev/null +++ b/Assets/BOXOPHOBIC/Utils/Editor/StyledMaterial/StyledToggleDrawer.cs @@ -0,0 +1,80 @@ +// Cristian Pop - https://boxophobic.com/
+
+using UnityEngine;
+using UnityEditor;
+using System;
+
+namespace Boxophobic.StyledGUI
+{
+ public class StyledToggleDrawer : MaterialPropertyDrawer
+ {
+ public float width = 0;
+
+ public StyledToggleDrawer()
+ {
+
+ }
+
+ public StyledToggleDrawer(float width)
+ {
+ this.width = width;
+ }
+
+ public override void OnGUI(Rect position, MaterialProperty prop, String label, MaterialEditor materialEditor)
+ {
+ Material material = materialEditor.target as Material;
+
+ if (width == 0)
+ {
+ bool toggle = false;
+
+ if (prop.floatValue > 0.5f)
+ {
+ toggle = true;
+ }
+
+ toggle = EditorGUILayout.Toggle(label, toggle);
+
+ if (toggle)
+ {
+ prop.floatValue = 1;
+ }
+ else
+ {
+ prop.floatValue = 0;
+ }
+ }
+ else
+ {
+ GUILayout.BeginHorizontal();
+
+ GUILayout.Label(label);
+
+ bool toggle = false;
+
+ if (prop.floatValue > 0.5f)
+ {
+ toggle = true;
+ }
+
+ toggle = GUILayout.Toggle(toggle, "", GUILayout.Width(width));
+
+ if (toggle)
+ {
+ prop.floatValue = 1;
+ }
+ else
+ {
+ prop.floatValue = 0;
+ }
+
+ GUILayout.EndHorizontal();
+ }
+ }
+
+ public override float GetPropertyHeight(MaterialProperty prop, string label, MaterialEditor editor)
+ {
+ return -2;
+ }
+ }
+}
|
