暂无描述
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

SerieSymbolDrawer.cs 2.1KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. using System.Collections.Generic;
  2. using UnityEditor;
  3. using UnityEngine;
  4. using XCharts.Runtime;
  5. namespace XCharts.Editor
  6. {
  7. [CustomPropertyDrawer(typeof(SerieSymbol), true)]
  8. public class SerieSymbolDrawer : BasePropertyDrawer
  9. {
  10. public override string ClassName { get { return "Symbol"; } }
  11. public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
  12. {
  13. base.OnGUI(pos, prop, label);
  14. if (MakeComponentFoldout(prop, "m_Show", true))
  15. {
  16. ++EditorGUI.indentLevel;
  17. var type = (SymbolType) prop.FindPropertyRelative("m_Type").enumValueIndex;
  18. PropertyField(prop, "m_Type");
  19. if (type == SymbolType.Custom)
  20. {
  21. PropertyField(prop, "m_Image");
  22. PropertyField(prop, "m_ImageType");
  23. PropertyField(prop, "m_Width");
  24. // PropertyField(prop, "m_Height");
  25. // PropertyField(prop, "m_Offset");
  26. }
  27. PropertyField(prop, "m_Gap");
  28. PropertyField(prop, "m_SizeType");
  29. switch ((SymbolSizeType) prop.FindPropertyRelative("m_SizeType").enumValueIndex)
  30. {
  31. case SymbolSizeType.Custom:
  32. PropertyField(prop, "m_Size");
  33. break;
  34. case SymbolSizeType.FromData:
  35. PropertyField(prop, "m_DataIndex");
  36. PropertyField(prop, "m_DataScale");
  37. PropertyField(prop, "m_MinSize");
  38. PropertyField(prop, "m_MaxSize");
  39. break;
  40. case SymbolSizeType.Function:
  41. break;
  42. }
  43. PropertyField(prop, "m_StartIndex");
  44. PropertyField(prop, "m_Interval");
  45. PropertyField(prop, "m_ForceShowLast");
  46. PropertyField(prop, "m_Repeat");
  47. --EditorGUI.indentLevel;
  48. }
  49. }
  50. }
  51. }