studycase2

This commit is contained in:
2025-11-24 21:29:46 +08:00
parent 749719e862
commit 173fe7574b
608 changed files with 52537 additions and 39 deletions

View File

@@ -0,0 +1,94 @@
// 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;
EditorGUI.BeginChangeCheck();
EditorGUI.showMixedValue = prop.hasMixedValue;
if (width == 0)
{
bool toggle = false;
if (prop.floatValue > 0.5f)
{
toggle = true;
}
toggle = EditorGUILayout.Toggle(label, toggle);
EditorGUI.showMixedValue = false;
if (EditorGUI.EndChangeCheck())
{
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));
EditorGUI.showMixedValue = false;
if (EditorGUI.EndChangeCheck())
{
if (toggle)
{
prop.floatValue = 1;
}
else
{
prop.floatValue = 0;
}
}
GUILayout.EndHorizontal();
}
}
public override float GetPropertyHeight(MaterialProperty prop, string label, MaterialEditor editor)
{
return -2;
}
}
}