SmartQuant.FinChart.Pad.PrepareForUpdate C# (CSharp) Method

PrepareForUpdate() private method

private PrepareForUpdate ( ) : void
return void
        internal void PrepareForUpdate()
        {
            if (this.chart.MainSeries == null || this.chart.MainSeries.Count == 0)
                return;
            MaxValue = double.MinValue;
            MinValue = double.MaxValue;
            ArrayList primitives;
            lock (Primitives.SyncRoot)
                primitives = new ArrayList(Primitives);
            foreach (IChartDrawable drawable in primitives)
            {
                if ((DrawItems || drawable is SeriesView) && drawable is IZoomable)
                {
                    var range = (drawable as IZoomable).GetPadRangeY(this);
                    if (range.IsValid)
                    {
                        MaxValue = Math.Max(MaxValue, range.Max);
                        MinValue = Math.Min(MinValue, range.Min);
                    }
                }
            }
            if (MinValue != double.MaxValue && MaxValue != double.MinValue)
            {
                var offset = (MaxValue - MinValue) / 10;
                MinValue -= offset;
                MaxValue += offset;
                AxisGap = Axis.GetAxisGap();
            }
            else
                AxisGap = -1;
        }