using UnityEditor;
using UnityEngine;
#if dUI_TextMeshPro
using TMPro;
#endif
using XCharts.Runtime;

namespace XCharts.Editor
{
    [CustomPropertyDrawer(typeof(TextStyle), true)]
    public class TextStyleDrawer : BasePropertyDrawer
    {
        public override string ClassName { get { return "TextStyle"; } }
        public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
        {
            base.OnGUI(pos, prop, label);
            if (MakeComponentFoldout(prop, "m_Show", true))
            {
                ++EditorGUI.indentLevel;
#if dUI_TextMeshPro
                PropertyField(prop, "m_TMPFont");
#else
                PropertyField(prop, "m_Font");
#endif
                PropertyField(prop, "m_Rotate");
                PropertyField(prop, "m_AutoColor");
                PropertyField(prop, "m_Color");
                PropertyField(prop, "m_FontSize");
                PropertyField(prop, "m_LineSpacing");
#if dUI_TextMeshPro
                PropertyField(prop, "m_TMPFontStyle");
                PropertyField(prop, "m_TMPAlignment");
#else
                PropertyField(prop, "m_FontStyle");
                PropertyField(prop, "m_Alignment");
                PropertyField(prop, "m_AutoAlign");
                PropertyField(prop, "m_AutoWrap");
#endif
                --EditorGUI.indentLevel;
            }
        }
    }
}