/// <summary>
 ///     Initializes a new instance of the DataPointSeriesWithAxes class.
 /// </summary>
 protected DataPointSeriesWithAxes()
 {
     DataPointsByActualDependentValue =
         new OrderedMultipleDictionary <IComparable, DataPoint>(
             false,
             (left, right) =>
             left.CompareTo(right),
             (leftDataPoint, rightDataPoint) =>
             RuntimeHelpers.GetHashCode(leftDataPoint).CompareTo(RuntimeHelpers.GetHashCode(rightDataPoint)));
 }
Example #2
0
        private void AddDataPointsByXValue(IEnumerable <DataPoint> dataPoints)
        {
            if (this._dataPointsByXValue == null)
            {
                this._dataPointsByXValue = new OrderedMultipleDictionary <object, DataPoint>(this.GetXValueKeyComparison());
            }
            DataValueType actualXvalueType = this.ActualXValueType;

            foreach (XYDataPoint xyDataPoint in dataPoints)
            {
                this._dataPointsByXValue.Add(ValueHelper.ConvertValue(xyDataPoint.XValue, actualXvalueType), (DataPoint)xyDataPoint);
            }
        }
Example #3
0
        internal override void RemoveAllDataPoints()
        {
            IEnumerable <DataPoint> that = (IEnumerable <DataPoint>) this._dataPointsCollectionShadow;

            this._dataPointsByXValue = (OrderedMultipleDictionary <object, DataPoint>)null;
            if (that == null)
            {
                return;
            }
            if (this.ChartArea != null && this.ChartArea.IsTemplateApplied)
            {
                EnumerableFunctions.ForEach <DataPoint>(that, (Action <DataPoint>)(item => item.ViewState = DataPointViewState.Hiding));
            }
            else
            {
                EnumerableFunctions.ForEach <DataPoint>(that, (Action <DataPoint>)(item => this.UninitializeDataPoint(item)));
            }
        }
Example #4
0
 private void InvalidateDataPointsByXValue()
 {
     this._dataPointsByXValue = (OrderedMultipleDictionary<object, DataPoint>)null;
 }
Example #5
0
 private void AddDataPointsByXValue(IEnumerable<DataPoint> dataPoints)
 {
     if (this._dataPointsByXValue == null)
         this._dataPointsByXValue = new OrderedMultipleDictionary<object, DataPoint>(this.GetXValueKeyComparison());
     DataValueType actualXvalueType = this.ActualXValueType;
     foreach (XYDataPoint xyDataPoint in dataPoints)
         this._dataPointsByXValue.Add(ValueHelper.ConvertValue(xyDataPoint.XValue, actualXvalueType), (DataPoint)xyDataPoint);
 }
Example #6
0
 internal override void RemoveAllDataPoints()
 {
     IEnumerable<DataPoint> that = (IEnumerable<DataPoint>)this._dataPointsCollectionShadow;
     this._dataPointsByXValue = (OrderedMultipleDictionary<object, DataPoint>)null;
     if (that == null)
         return;
     if (this.ChartArea != null && this.ChartArea.IsTemplateApplied)
         EnumerableFunctions.ForEach<DataPoint>(that, (Action<DataPoint>)(item => item.ViewState = DataPointViewState.Hiding));
     else
         EnumerableFunctions.ForEach<DataPoint>(that, (Action<DataPoint>)(item => this.UninitializeDataPoint(item)));
 }
Example #7
0
 internal override void OnDataPointsCollectionChanged(IEnumerable<DataPoint> removedDataPoints, IEnumerable<DataPoint> addedDataPoints, bool isResetting)
 {
     if (removedDataPoints != null)
     {
         if (this.DataPoints.Count == 0)
         {
             this.DataPointsByXValue.Clear();
         }
         else
         {
             foreach (DataPoint dataPoint in removedDataPoints)
                 this.DataPointsByXValue.Remove(dataPoint);
         }
     }
     if (isResetting)
     {
         removedDataPoints = (IEnumerable<DataPoint>)this._dataPointsCollectionShadow;
         this._dataPointsByXValue = (OrderedMultipleDictionary<object, DataPoint>)null;
         this.ResetActualValueType();
         this.InvalidateDataPointsByXValue();
         addedDataPoints = (IEnumerable<DataPoint>)this.DataPoints;
     }
     if (addedDataPoints != null && Enumerable.Any<DataPoint>(addedDataPoints))
     {
         foreach (DataPoint dataPoint in addedDataPoints)
             this.InitializeDataPoint(dataPoint);
         DataValueType actualXvalueType = this.ActualXValueType;
         this.UpdateActualXValueType(addedDataPoints);
         if (this.ActualXValueType == actualXvalueType)
             this.AddDataPointsByXValue(addedDataPoints);
         this.UpdateActualYValueType(addedDataPoints);
     }
     this.UpdateActualDataPoints();
     this.UpdateActualDataRange();
     if (this.ChartArea != null && this.ChartArea.IsTemplateApplied)
     {
         if (!this.SeriesPresenter.SeriesCollectionChanging)
         {
             this.ChartArea.UpdateSession.BeginUpdates();
             bool useAnimation = this.ChartArea.IsShowingAnimationEnabled && (this.XAxis.Scale == null || !this.XAxis.Scale.IsScrolling) && (this.YAxis.Scale == null || !this.YAxis.Scale.IsScrolling);
             if (removedDataPoints != null)
                 EnumerableFunctions.ForEach<DataPoint>(removedDataPoints, (Action<DataPoint>)(item => this.SeriesPresenter.OnDataPointRemoved(item, useAnimation)));
             if (addedDataPoints != null)
                 EnumerableFunctions.ForEach<DataPoint>(addedDataPoints, (Action<DataPoint>)(item => this.SeriesPresenter.OnDataPointAdded(item, useAnimation)));
             this.ChartArea.UpdateSession.EndUpdates();
         }
     }
     else if (removedDataPoints != null)
         EnumerableFunctions.ForEach<DataPoint>(removedDataPoints, (Action<DataPoint>)(item => this.UninitializeDataPoint(item)));
     this._dataPointsCollectionShadow = Enumerable.ToArray<DataPoint>((IEnumerable<DataPoint>)this.DataPoints);
 }
Example #8
0
 internal override void OnDataPointsCollectionChanged(IEnumerable <DataPoint> removedDataPoints, IEnumerable <DataPoint> addedDataPoints, bool isResetting)
 {
     if (removedDataPoints != null)
     {
         if (this.DataPoints.Count == 0)
         {
             this.DataPointsByXValue.Clear();
         }
         else
         {
             foreach (DataPoint dataPoint in removedDataPoints)
             {
                 this.DataPointsByXValue.Remove(dataPoint);
             }
         }
     }
     if (isResetting)
     {
         removedDataPoints        = (IEnumerable <DataPoint>) this._dataPointsCollectionShadow;
         this._dataPointsByXValue = (OrderedMultipleDictionary <object, DataPoint>)null;
         this.ResetActualValueType();
         this.InvalidateDataPointsByXValue();
         addedDataPoints = (IEnumerable <DataPoint>) this.DataPoints;
     }
     if (addedDataPoints != null && Enumerable.Any <DataPoint>(addedDataPoints))
     {
         foreach (DataPoint dataPoint in addedDataPoints)
         {
             this.InitializeDataPoint(dataPoint);
         }
         DataValueType actualXvalueType = this.ActualXValueType;
         this.UpdateActualXValueType(addedDataPoints);
         if (this.ActualXValueType == actualXvalueType)
         {
             this.AddDataPointsByXValue(addedDataPoints);
         }
         this.UpdateActualYValueType(addedDataPoints);
     }
     this.UpdateActualDataPoints();
     this.UpdateActualDataRange();
     if (this.ChartArea != null && this.ChartArea.IsTemplateApplied)
     {
         if (!this.SeriesPresenter.SeriesCollectionChanging)
         {
             this.ChartArea.UpdateSession.BeginUpdates();
             bool useAnimation = this.ChartArea.IsShowingAnimationEnabled && (this.XAxis.Scale == null || !this.XAxis.Scale.IsScrolling) && (this.YAxis.Scale == null || !this.YAxis.Scale.IsScrolling);
             if (removedDataPoints != null)
             {
                 EnumerableFunctions.ForEach <DataPoint>(removedDataPoints, (Action <DataPoint>)(item => this.SeriesPresenter.OnDataPointRemoved(item, useAnimation)));
             }
             if (addedDataPoints != null)
             {
                 EnumerableFunctions.ForEach <DataPoint>(addedDataPoints, (Action <DataPoint>)(item => this.SeriesPresenter.OnDataPointAdded(item, useAnimation)));
             }
             this.ChartArea.UpdateSession.EndUpdates();
         }
     }
     else if (removedDataPoints != null)
     {
         EnumerableFunctions.ForEach <DataPoint>(removedDataPoints, (Action <DataPoint>)(item => this.UninitializeDataPoint(item)));
     }
     this._dataPointsCollectionShadow = Enumerable.ToArray <DataPoint>((IEnumerable <DataPoint>) this.DataPoints);
 }
Example #9
0
 private void InvalidateDataPointsByXValue()
 {
     this._dataPointsByXValue = (OrderedMultipleDictionary <object, DataPoint>)null;
 }