[feature][datazoom] 增加DataZoomMarqueeStyle支持框选区域

This commit is contained in:
monitor1394
2022-11-12 21:32:08 +08:00
parent 5e234dc408
commit 8c0eb970d3
3 changed files with 13 additions and 12 deletions

View File

@@ -10,7 +10,7 @@ namespace XCharts.Editor
{ {
var m_SupportInside = baseProperty.FindPropertyRelative("m_SupportInside"); var m_SupportInside = baseProperty.FindPropertyRelative("m_SupportInside");
var m_SupportSlider = baseProperty.FindPropertyRelative("m_SupportSlider"); var m_SupportSlider = baseProperty.FindPropertyRelative("m_SupportSlider");
var m_SupportSelect = baseProperty.FindPropertyRelative("m_SupportSelect"); var m_SupportMarquee = baseProperty.FindPropertyRelative("m_SupportMarquee");
var m_Start = baseProperty.FindPropertyRelative("m_Start"); var m_Start = baseProperty.FindPropertyRelative("m_Start");
var m_End = baseProperty.FindPropertyRelative("m_End"); var m_End = baseProperty.FindPropertyRelative("m_End");
var m_MinShowNum = baseProperty.FindPropertyRelative("m_MinShowNum"); var m_MinShowNum = baseProperty.FindPropertyRelative("m_MinShowNum");
@@ -23,7 +23,7 @@ namespace XCharts.Editor
PropertyField("m_SupportInsideDrag"); PropertyField("m_SupportInsideDrag");
} }
PropertyField(m_SupportSlider); PropertyField(m_SupportSlider);
PropertyField(m_SupportSelect); PropertyField(m_SupportMarquee);
PropertyField("m_ZoomLock"); PropertyField("m_ZoomLock");
PropertyField("m_ScrollSensitivity"); PropertyField("m_ScrollSensitivity");
PropertyField("m_RangeMode"); PropertyField("m_RangeMode");

View File

@@ -65,7 +65,7 @@ namespace XCharts.Runtime
[SerializeField] private bool m_SupportInsideScroll = true; [SerializeField] private bool m_SupportInsideScroll = true;
[SerializeField] private bool m_SupportInsideDrag = true; [SerializeField] private bool m_SupportInsideDrag = true;
[SerializeField] private bool m_SupportSlider; [SerializeField] private bool m_SupportSlider;
[SerializeField] private bool m_SupportSelect; [SerializeField] private bool m_SupportMarquee;
[SerializeField] private bool m_ShowDataShadow; [SerializeField] private bool m_ShowDataShadow;
[SerializeField] private bool m_ShowDetail; [SerializeField] private bool m_ShowDetail;
[SerializeField] private bool m_ZoomLock; [SerializeField] private bool m_ZoomLock;
@@ -169,12 +169,13 @@ namespace XCharts.Runtime
set { if (PropertyUtil.SetStruct(ref m_SupportSlider, value)) SetVerticesDirty(); } set { if (PropertyUtil.SetStruct(ref m_SupportSlider, value)) SetVerticesDirty(); }
} }
/// <summary> /// <summary>
/// 是否支持框选。提供一个选框进行数据区域缩放。 /// Supported Box Selected. Provides a marquee for scaling the data area.
/// |是否支持框选。提供一个选框进行数据区域缩放。
/// </summary> /// </summary>
public bool supportSelect public bool supportMarquee
{ {
get { return m_SupportSelect; } get { return m_SupportMarquee; }
set { if (PropertyUtil.SetStruct(ref m_SupportSelect, value)) SetVerticesDirty(); } set { if (PropertyUtil.SetStruct(ref m_SupportMarquee, value)) SetVerticesDirty(); }
} }
/// <summary> /// <summary>
/// Whether to show data shadow, to indicate the data tendency in brief. /// Whether to show data shadow, to indicate the data tendency in brief.
@@ -534,7 +535,7 @@ namespace XCharts.Runtime
public bool IsInMarqueeArea(Vector2 pos) public bool IsInMarqueeArea(Vector2 pos)
{ {
if (!supportSelect) return false; if (!supportMarquee) return false;
return context.marqueeRect.Contains(pos); return context.marqueeRect.Contains(pos);
} }

View File

@@ -105,7 +105,7 @@ namespace XCharts.Runtime
dataZoom.context.isCoordinateDrag = true; dataZoom.context.isCoordinateDrag = true;
} }
} }
if (dataZoom.supportSelect) if (dataZoom.supportMarquee)
{ {
dataZoom.context.isMarqueeDrag = true; dataZoom.context.isMarqueeDrag = true;
dataZoom.context.marqueeStartPos = pos; dataZoom.context.marqueeStartPos = pos;
@@ -155,7 +155,7 @@ namespace XCharts.Runtime
var dataZoom = component; var dataZoom = component;
var grid = chart.GetGridOfDataZoom(dataZoom); var grid = chart.GetGridOfDataZoom(dataZoom);
if (dataZoom.supportSelect) if (dataZoom.supportMarquee)
{ {
Vector2 pos; Vector2 pos;
if (!chart.ScreenPointToChartPoint(eventData.position, out pos)) if (!chart.ScreenPointToChartPoint(eventData.position, out pos))
@@ -199,7 +199,7 @@ namespace XCharts.Runtime
var dataZoom = component; var dataZoom = component;
if (dataZoom.supportSelect) if (dataZoom.supportMarquee)
{ {
dataZoom.context.isMarqueeDrag = false; dataZoom.context.isMarqueeDrag = false;
if (dataZoom.marqueeStyle.apply) if (dataZoom.marqueeStyle.apply)
@@ -676,7 +676,7 @@ namespace XCharts.Runtime
private void DrawMarquee(VertexHelper vh, DataZoom dataZoom) private void DrawMarquee(VertexHelper vh, DataZoom dataZoom)
{ {
if (!dataZoom.enable || !dataZoom.supportSelect) if (!dataZoom.enable || !dataZoom.supportMarquee)
return; return;
var areaColor = dataZoom.marqueeStyle.areaStyle.GetColor(chart.theme.dataZoom.dataAreaColor); var areaColor = dataZoom.marqueeStyle.areaStyle.GetColor(chart.theme.dataZoom.dataAreaColor);
UGL.DrawRectangle(vh, dataZoom.context.marqueeRect, areaColor); UGL.DrawRectangle(vh, dataZoom.context.marqueeRect, areaColor);