Нет описания
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

StateStyle.cs 3.8KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. using UnityEngine;
  2. namespace XCharts.Runtime
  3. {
  4. /// <summary>
  5. /// the state style of serie.
  6. /// |Serie的状态样式。Serie的状态有正常,高亮,淡出,选中四种状态。
  7. /// </summary>
  8. [System.Serializable]
  9. [Since("v3.2.0")]
  10. public class StateStyle : ChildComponent
  11. {
  12. [SerializeField] private bool m_Show = true;
  13. [SerializeField] private LabelStyle m_Label = new LabelStyle();
  14. [SerializeField] private LabelLine m_LabelLine = new LabelLine();
  15. [SerializeField] private ItemStyle m_ItemStyle = new ItemStyle();
  16. [SerializeField] private LineStyle m_LineStyle = new LineStyle();
  17. [SerializeField] private AreaStyle m_AreaStyle = new AreaStyle();
  18. [SerializeField] private SerieSymbol m_Symbol = new SerieSymbol();
  19. public void Reset()
  20. {
  21. m_Show = false;
  22. m_Label.Reset();
  23. m_LabelLine.Reset();
  24. m_ItemStyle.Reset();
  25. m_Symbol.Reset();
  26. }
  27. /// <summary>
  28. /// 是否启用高亮样式。
  29. /// </summary>
  30. public bool show
  31. {
  32. get { return m_Show; }
  33. set { m_Show = value; }
  34. }
  35. /// <summary>
  36. /// 图形文本标签。
  37. /// </summary>
  38. public LabelStyle label
  39. {
  40. get { return m_Label; }
  41. set { if (PropertyUtil.SetClass(ref m_Label, value, true)) SetAllDirty(); }
  42. }
  43. /// <summary>
  44. /// 图形文本引导线样式。
  45. /// </summary>
  46. public LabelLine labelLine
  47. {
  48. get { return m_LabelLine; }
  49. set { if (PropertyUtil.SetClass(ref m_LabelLine, value, true)) SetAllDirty(); }
  50. }
  51. /// <summary>
  52. /// 图形样式。
  53. /// </summary>
  54. public ItemStyle itemStyle
  55. {
  56. get { return m_ItemStyle; }
  57. set { if (PropertyUtil.SetClass(ref m_ItemStyle, value, true)) SetVerticesDirty(); }
  58. }
  59. /// <summary>
  60. /// 折线样式。
  61. /// </summary>
  62. public LineStyle lineStyle
  63. {
  64. get { return m_LineStyle; }
  65. set { if (PropertyUtil.SetClass(ref m_LineStyle, value, true)) SetVerticesDirty(); }
  66. }
  67. /// <summary>
  68. /// 区域样式。
  69. /// </summary>
  70. public AreaStyle areaStyle
  71. {
  72. get { return m_AreaStyle; }
  73. set { if (PropertyUtil.SetClass(ref m_AreaStyle, value, true)) SetVerticesDirty(); }
  74. }
  75. /// <summary>
  76. /// 标记样式。
  77. /// </summary>
  78. public SerieSymbol symbol
  79. {
  80. get { return m_Symbol; }
  81. set { if (PropertyUtil.SetClass(ref m_Symbol, value, true)) SetVerticesDirty(); }
  82. }
  83. public override bool vertsDirty
  84. {
  85. get
  86. {
  87. return m_VertsDirty ||
  88. m_Label.vertsDirty ||
  89. m_ItemStyle.vertsDirty ||
  90. m_LineStyle.vertsDirty ||
  91. m_AreaStyle.vertsDirty ||
  92. m_Symbol.vertsDirty;
  93. }
  94. }
  95. public override bool componentDirty
  96. {
  97. get
  98. {
  99. return m_ComponentDirty ||
  100. m_Label.componentDirty;
  101. }
  102. }
  103. public override void ClearVerticesDirty()
  104. {
  105. base.ClearVerticesDirty();
  106. m_Label.ClearVerticesDirty();
  107. m_ItemStyle.ClearVerticesDirty();
  108. m_LineStyle.ClearVerticesDirty();
  109. m_AreaStyle.ClearVerticesDirty();
  110. m_Symbol.ClearVerticesDirty();
  111. }
  112. public override void ClearComponentDirty()
  113. {
  114. base.ClearComponentDirty();
  115. m_Label.ClearComponentDirty();
  116. m_Symbol.ClearComponentDirty();
  117. }
  118. }
  119. }