Açıklama Yok
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

MarkAreaEditor.cs 1.9KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. using UnityEditor;
  2. using UnityEngine;
  3. using XCharts.Runtime;
  4. namespace XCharts.Editor
  5. {
  6. [ComponentEditor(typeof(MarkArea))]
  7. public class MarkAreaEditor : MainComponentEditor<MarkArea>
  8. {
  9. public override void OnInspectorGUI()
  10. {
  11. ++EditorGUI.indentLevel;
  12. PropertyField("m_SerieIndex");
  13. PropertyField("m_Text");
  14. PropertyField("m_ItemStyle");
  15. PropertyField("m_Label");
  16. PropertyField("m_Start");
  17. PropertyField("m_End");
  18. --EditorGUI.indentLevel;
  19. }
  20. }
  21. [CustomPropertyDrawer(typeof(MarkAreaData), true)]
  22. public class MarkAreaDataDrawer : BasePropertyDrawer
  23. {
  24. public override string ClassName { get { return "MarkAreaData"; } }
  25. public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
  26. {
  27. base.OnGUI(pos, prop, label);
  28. if (MakeComponentFoldout(prop, "", true))
  29. {
  30. ++EditorGUI.indentLevel;
  31. var type = (MarkAreaType) (prop.FindPropertyRelative("m_Type")).enumValueIndex;
  32. PropertyField(prop, "m_Type");
  33. PropertyField(prop, "m_Name");
  34. switch (type)
  35. {
  36. case MarkAreaType.None:
  37. PropertyField(prop, "m_XPosition");
  38. PropertyField(prop, "m_YPosition");
  39. PropertyField(prop, "m_XValue");
  40. PropertyField(prop, "m_YValue");
  41. break;
  42. case MarkAreaType.Min:
  43. case MarkAreaType.Max:
  44. case MarkAreaType.Average:
  45. case MarkAreaType.Median:
  46. PropertyField(prop, "m_Dimension");
  47. break;
  48. }
  49. --EditorGUI.indentLevel;
  50. }
  51. }
  52. }
  53. }