mirror of
https://github.com/XCharts-Team/XCharts.git
synced 2026-05-25 10:20:10 +00:00
[feature][datazoom] 增加DataZoom的MarqueeStyle支持框选区域
This commit is contained in:
@@ -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");
|
||||||
|
|||||||
@@ -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);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -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);
|
||||||
|
|||||||
Reference in New Issue
Block a user