Aimbot-ParallelEnv/Assets/XCharts/Runtime/Theme/DataZoomTheme.cs
Koha9 6bc1456e4b Fist Sub
based on aimbot multi seane
2022-10-26 04:07:39 +09:00

125 lines
4.6 KiB
C#

using System;
using UnityEngine;
namespace XCharts.Runtime
{
[Serializable]
public class DataZoomTheme : ComponentTheme
{
[SerializeField] protected float m_BorderWidth;
[SerializeField] protected float m_DataLineWidth;
[SerializeField] protected Color32 m_FillerColor;
[SerializeField] protected Color32 m_BorderColor;
[SerializeField] protected Color32 m_DataLineColor;
[SerializeField] protected Color32 m_DataAreaColor;
[SerializeField] protected Color32 m_BackgroundColor;
/// <summary>
/// the width of border line.
/// |边框线宽。
/// </summary>
public float borderWidth
{
get { return m_BorderWidth; }
set { if (PropertyUtil.SetStruct(ref m_BorderWidth, value)) SetVerticesDirty(); }
}
/// <summary>
/// the width of data line.
/// |数据阴影线宽。
/// </summary>
public float dataLineWidth
{
get { return m_DataLineWidth; }
set { if (PropertyUtil.SetStruct(ref m_DataLineWidth, value)) SetVerticesDirty(); }
}
/// <summary>
/// the color of dataZoom data area.
/// |数据区域颜色。
/// </summary>
public Color32 fillerColor
{
get { return m_FillerColor; }
set { if (PropertyUtil.SetColor(ref m_FillerColor, value)) SetVerticesDirty(); }
}
/// <summary>
/// the color of dataZoom border.
/// |边框颜色。
/// </summary>
public Color32 borderColor
{
get { return m_BorderColor; }
set { if (PropertyUtil.SetColor(ref m_BorderColor, value)) SetComponentDirty(); }
}
/// <summary>
/// the color of data area line.
/// |数据阴影的线条颜色。
/// </summary>
public Color32 dataLineColor
{
get { return m_DataLineColor; }
set { if (PropertyUtil.SetColor(ref m_DataLineColor, value)) SetComponentDirty(); }
}
/// <summary>
/// the color of data area line.
/// |数据阴影的填充颜色。
/// </summary>
public Color32 dataAreaColor
{
get { return m_DataAreaColor; }
set { if (PropertyUtil.SetColor(ref m_DataAreaColor, value)) SetComponentDirty(); }
}
/// <summary>
/// the background color of datazoom.
/// |背景颜色。
/// </summary>
public Color32 backgroundColor
{
get { return m_BackgroundColor; }
set { if (PropertyUtil.SetColor(ref m_BackgroundColor, value)) SetComponentDirty(); }
}
public DataZoomTheme(ThemeType theme) : base(theme)
{
m_BorderWidth = XCSettings.dataZoomBorderWidth;
m_DataLineWidth = XCSettings.dataZoomDataLineWidth;
m_BackgroundColor = Color.clear;
switch (theme)
{
case ThemeType.Default:
m_TextColor = ColorUtil.GetColor("#333");
m_FillerColor = new Color32(167, 183, 204, 110);
m_BorderColor = ColorUtil.GetColor("#ddd");
m_DataLineColor = ColorUtil.GetColor("#2f4554");
m_DataAreaColor = new Color32(47, 69, 84, 85);
break;
case ThemeType.Light:
m_TextColor = ColorUtil.GetColor("#333");
m_FillerColor = new Color32(167, 183, 204, 110);
m_BorderColor = ColorUtil.GetColor("#ddd");
m_DataLineColor = ColorUtil.GetColor("#2f4554");
m_DataAreaColor = new Color32(47, 69, 84, 85);
break;
case ThemeType.Dark:
m_TextColor = ColorUtil.GetColor("#B9B8CE");
m_FillerColor = new Color32(135, 163, 206, (byte) (0.2f * 255));
m_BorderColor = ColorUtil.GetColor("#71708A");
m_DataLineColor = ColorUtil.GetColor("#71708A");
m_DataAreaColor = ColorUtil.GetColor("#71708A");
break;
}
}
public void Copy(DataZoomTheme theme)
{
base.Copy(theme);
m_BorderWidth = theme.borderWidth;
m_DataLineWidth = theme.dataLineWidth;
m_FillerColor = theme.fillerColor;
m_BorderColor = theme.borderColor;
m_DataLineColor = theme.dataLineColor;
m_DataAreaColor = theme.dataAreaColor;
m_BackgroundColor = theme.backgroundColor;
}
}
}