Files
XCharts/Runtime/Component/Emphasis/Emphasis.cs

71 lines
2.1 KiB
C#
Raw Normal View History

2019-10-14 07:45:56 +08:00
using UnityEngine;
2022-02-19 22:37:57 +08:00
namespace XCharts.Runtime
2019-10-14 07:45:56 +08:00
{
/// <summary>
/// 高亮的图形样式和文本标签样式。
/// </summary>
[System.Serializable]
2021-12-28 08:18:24 +08:00
public class Emphasis : ChildComponent, ISerieExtraComponent, ISerieDataComponent
2019-10-14 07:45:56 +08:00
{
[SerializeField] private bool m_Show;
2021-11-23 13:20:07 +08:00
[SerializeField] private LabelStyle m_Label = new LabelStyle();
[SerializeField] private LabelLine m_LabelLine = new LabelLine();
2019-10-14 07:45:56 +08:00
[SerializeField] private ItemStyle m_ItemStyle = new ItemStyle();
public void Reset()
{
m_Show = false;
m_Label.Reset();
2021-11-23 13:20:07 +08:00
m_LabelLine.Reset();
m_ItemStyle.Reset();
}
2019-10-14 07:45:56 +08:00
/// <summary>
/// 是否启用高亮样式。
/// </summary>
public bool show
{
get { return m_Show; }
set { m_Show = value; }
}
2019-10-14 07:45:56 +08:00
/// <summary>
/// 图形文本标签。
/// </summary>
2021-11-23 13:20:07 +08:00
public LabelStyle label
{
get { return m_Label; }
2021-01-11 08:54:28 +08:00
set { if (PropertyUtil.SetClass(ref m_Label, value, true)) SetAllDirty(); }
}
2021-11-23 13:20:07 +08:00
public LabelLine labelLine
{
get { return m_LabelLine; }
set { if (PropertyUtil.SetClass(ref m_LabelLine, value, true)) SetAllDirty(); }
}
2019-10-14 07:45:56 +08:00
/// <summary>
/// 图形样式。
/// </summary>
public ItemStyle itemStyle
{
get { return m_ItemStyle; }
2021-01-11 08:54:28 +08:00
set { if (PropertyUtil.SetClass(ref m_ItemStyle, value, true)) SetVerticesDirty(); }
}
public override bool vertsDirty { get { return m_VertsDirty || label.vertsDirty || itemStyle.vertsDirty; } }
public override bool componentDirty { get { return m_ComponentDirty || label.componentDirty; } }
2021-05-16 23:38:06 +08:00
public override void ClearVerticesDirty()
{
base.ClearVerticesDirty();
label.ClearVerticesDirty();
itemStyle.ClearVerticesDirty();
}
2021-05-16 23:38:06 +08:00
public override void ClearComponentDirty()
{
base.ClearComponentDirty();
label.ClearComponentDirty();
}
2019-10-14 07:45:56 +08:00
}
}