| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157 | 
							- using UnityEngine;
 
- using UnityEngine.UI;
 
- namespace XCharts.Runtime
 
- {
 
-     [UnityEngine.Scripting.Preserve]
 
-     internal sealed class YAxisHander : AxisHandler<YAxis>
 
-     {
 
-         protected override Orient orient { get { return Orient.Vertical; } }
 
-         public override void InitComponent()
 
-         {
 
-             InitYAxis(component);
 
-         }
 
-         public override void Update()
 
-         {
 
-             UpdateAxisMinMaxValue(component.index, component);
 
-             UpdatePointerValue(component);
 
-         }
 
-         public override void DrawBase(VertexHelper vh)
 
-         {
 
-             UpdatePosition(component);
 
-             DrawYAxisSplit(vh, component.index, component);
 
-             DrawYAxisLine(vh, component.index, component);
 
-             DrawYAxisTick(vh, component.index, component);
 
-         }
 
-         private void UpdatePosition(YAxis axis)
 
-         {
 
-             var grid = chart.GetChartComponent<GridCoord>(axis.gridIndex);
 
-             if (grid != null)
 
-             {
 
-                 var relativedAxis = chart.GetChartComponent<XAxis>(axis.gridIndex);
 
-                 axis.context.x = AxisHelper.GetYAxisXOrY(grid, axis, relativedAxis);
 
-                 axis.context.y = grid.context.y;
 
-                 axis.context.zeroX = axis.context.x;
 
-                 axis.context.zeroY = axis.context.y + axis.context.offset;
 
-             }
 
-         }
 
-         private void InitYAxis(YAxis yAxis)
 
-         {
 
-             var theme = chart.theme;
 
-             var yAxisIndex = yAxis.index;
 
-             yAxis.painter = chart.painter;
 
-             yAxis.refreshComponent = delegate()
 
-             {
 
-                 var grid = chart.GetChartComponent<GridCoord>(yAxis.gridIndex);
 
-                 if (grid != null)
 
-                 {
 
-                     var xAxis = chart.GetChartComponent<YAxis>(yAxis.index);
 
-                     InitAxis(xAxis,
 
-                         orient,
 
-                         grid.context.x,
 
-                         grid.context.y,
 
-                         grid.context.height,
 
-                         grid.context.width);
 
-                 }
 
-             };
 
-             yAxis.refreshComponent();
 
-         }
 
-         internal override void UpdateAxisLabelText(Axis axis)
 
-         {
 
-             base.UpdateAxisLabelText(axis);
 
-             if (axis.IsTime() || axis.IsValue())
 
-             {
 
-                 for (int i = 0; i < axis.context.labelObjectList.Count; i++)
 
-                 {
 
-                     var label = axis.context.labelObjectList[i];
 
-                     if (label != null)
 
-                     {
 
-                         var pos = GetLabelPosition(0, i);
 
-                         label.SetPosition(pos);
 
-                         CheckValueLabelActive(axis, i, label, pos);
 
-                     }
 
-                 }
 
-             }
 
-         }
 
-         protected override Vector3 GetLabelPosition(float scaleWid, int i)
 
-         {
 
-             var grid = chart.GetChartComponent<GridCoord>(component.gridIndex);
 
-             if (grid == null)
 
-                 return Vector3.zero;
 
-             var xAxis = chart.GetChartComponent<XAxis>(component.index);
 
-             return GetLabelPosition(i, Orient.Vertical, component, xAxis,
 
-                 chart.theme.axis,
 
-                 scaleWid,
 
-                 grid.context.x,
 
-                 grid.context.y,
 
-                 grid.context.height,
 
-                 grid.context.width);
 
-         }
 
-         private void DrawYAxisSplit(VertexHelper vh, int yAxisIndex, YAxis yAxis)
 
-         {
 
-             if (AxisHelper.NeedShowSplit(yAxis))
 
-             {
 
-                 var grid = chart.GetChartComponent<GridCoord>(yAxis.gridIndex);
 
-                 if (grid == null)
 
-                     return;
 
-                 var relativedAxis = chart.GetChartComponent<XAxis>(yAxis.gridIndex);
 
-                 var dataZoom = chart.GetDataZoomOfAxis(yAxis);
 
-                 DrawAxisSplit(vh, chart.theme.axis, dataZoom,
 
-                     Orient.Vertical,
 
-                     grid.context.x,
 
-                     grid.context.y,
 
-                     grid.context.height,
 
-                     grid.context.width,
 
-                     relativedAxis);
 
-             }
 
-         }
 
-         private void DrawYAxisTick(VertexHelper vh, int yAxisIndex, YAxis yAxis)
 
-         {
 
-             if (AxisHelper.NeedShowSplit(yAxis))
 
-             {
 
-                 var grid = chart.GetChartComponent<GridCoord>(yAxis.gridIndex);
 
-                 if (grid == null)
 
-                     return;
 
-                 var dataZoom = chart.GetDataZoomOfAxis(yAxis);
 
-                 DrawAxisTick(vh, yAxis, chart.theme.axis, dataZoom,
 
-                     Orient.Vertical,
 
-                     GetAxisLineXOrY(),
 
-                     grid.context.y,
 
-                     grid.context.height);
 
-             }
 
-         }
 
-         private void DrawYAxisLine(VertexHelper vh, int yAxisIndex, YAxis yAxis)
 
-         {
 
-             if (yAxis.show && yAxis.axisLine.show)
 
-             {
 
-                 var grid = chart.GetChartComponent<GridCoord>(yAxis.gridIndex);
 
-                 if (grid == null)
 
-                     return;
 
-                 DrawAxisLine(vh, yAxis, chart.theme.axis,
 
-                     Orient.Vertical,
 
-                     GetAxisLineXOrY(),
 
-                     grid.context.y,
 
-                     grid.context.height);
 
-             }
 
-         }
 
-         internal override float GetAxisLineXOrY()
 
-         {
 
-             return component.context.x;
 
-         }
 
-     }
 
- }
 
 
  |