Files
XCharts/Editor/MainComponents/VisualMapEditor.cs

63 lines
2.2 KiB
C#
Raw Normal View History

2021-11-23 13:20:07 +08:00
using UnityEditor;
using UnityEngine;
2022-02-19 22:37:57 +08:00
using XCharts.Runtime;
2021-11-23 13:20:07 +08:00
2021-12-24 13:33:09 +08:00
namespace XCharts.Editor
2021-11-23 13:20:07 +08:00
{
[ComponentEditor(typeof(VisualMap))]
public class VisualMapEditor : MainComponentEditor<VisualMap>
{
public override void OnInspectorGUI()
{
++EditorGUI.indentLevel;
var type = (VisualMap.Type)baseProperty.FindPropertyRelative("m_Type").enumValueIndex;
var isPiece = type == VisualMap.Type.Piecewise;
PropertyField("m_Type");
PropertyField("m_SerieIndex");
PropertyField("m_AutoMinMax");
PropertyField("m_Min");
PropertyField("m_Max");
PropertyField("m_SplitNumber");
PropertyField("m_Dimension");
2022-04-09 21:30:28 +08:00
PropertyField("m_ShowUI");
if (baseProperty.FindPropertyRelative("m_ShowUI").boolValue)
2021-11-23 13:20:07 +08:00
{
PropertyField("m_SelectedMode");
PropertyTwoFiled("m_Range");
PropertyTwoFiled("m_Text");
PropertyTwoFiled("m_TextGap");
PropertyField("m_HoverLink");
PropertyField("m_Calculable");
PropertyField("m_ItemWidth");
PropertyField("m_ItemHeight");
if (isPiece) PropertyField("m_ItemGap");
PropertyField("m_BorderWidth");
PropertyField("m_Orient");
PropertyField("m_Location");
}
PropertyListField("m_OutOfRange");
PropertyListField(isPiece ? "m_Pieces" : "m_InRange");
--EditorGUI.indentLevel;
}
}
2022-03-24 08:37:06 +08:00
[CustomPropertyDrawer(typeof(VisualMapPieces), true)]
2021-11-23 13:20:07 +08:00
public class PiecesDrawer : BasePropertyDrawer
{
public override string ClassName { get { return "Pieces"; } }
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
base.OnGUI(pos, prop, label);
if (MakeFoldout(prop, ""))
{
++EditorGUI.indentLevel;
PropertyField(prop, "m_Min");
PropertyField(prop, "m_Max");
PropertyField(prop, "m_Label");
PropertyField(prop, "m_Color");
--EditorGUI.indentLevel;
}
}
}
}