internal override void UpdateDataPointVisibility() { int index1 = 0; DataPointViewState[] dataPointViewStateArray = new DataPointViewState[this.Series.DataPoints.Count]; foreach (DataPoint dataPoint in (Collection <DataPoint>) this.Series.DataPoints) { DataPointViewState dataPointViewState = DataPointViewState.Hidden; dataPoint.IsVisible = false; XYDataPoint dataPointXY = dataPoint as XYDataPoint; if (dataPointXY != null && this.ChartArea != null && (this.ChartArea.IsTemplateApplied && this.CanGraph(dataPointXY)) && this.Series.Visibility == Visibility.Visible) { dataPoint.IsVisible = true; dataPointViewState = dataPoint.IsNewlyAdded ? DataPointViewState.Showing : DataPointViewState.Normal; this.ChartArea.UpdateSession.Update((IUpdatable)dataPoint); } dataPointViewStateArray[index1] = dataPointViewState; ++index1; } this.CheckSimplifiedRenderingMode(); int index2 = 0; foreach (DataPoint dataPoint in (Collection <DataPoint>) this.Series.DataPoints) { this.SetDataPointViewState(dataPoint, dataPointViewStateArray[index2]); dataPoint.IsNewlyAdded = false; ++index2; } }
internal void SetDataPointViewState(DataPoint dataPoint, DataPointViewState newViewState) { if (newViewState == DataPointViewState.Normal || newViewState == DataPointViewState.Showing) { if (dataPoint.ViewState != DataPointViewState.Hidden) { return; } dataPoint.ViewState = newViewState; } else { if (newViewState != DataPointViewState.Hidden && newViewState != DataPointViewState.Hiding || (dataPoint.ViewState == DataPointViewState.Hidden || dataPoint.ViewState == DataPointViewState.Hiding)) { return; } dataPoint.ViewState = newViewState; } }
internal virtual void OnDataPointViewStateChanged(DataPoint dataPoint, DataPointViewState oldValue, DataPointViewState newValue) { if (newValue == DataPointViewState.Showing) { this.CreateView(dataPoint); if (this.StartDataPointShowingAnimation(dataPoint)) { return; } dataPoint.ViewState = DataPointViewState.Normal; } else if (newValue == DataPointViewState.Normal) { if (oldValue != DataPointViewState.Hidden) { return; } this.CreateView(dataPoint); } else if (newValue == DataPointViewState.Hiding) { if (this.StartDataPointHidingAnimation(dataPoint)) { return; } dataPoint.ViewState = DataPointViewState.Hidden; } else { if (newValue != DataPointViewState.Hidden) { return; } this.RemoveView(dataPoint); if (this.Series.DataPoints.Contains(dataPoint)) { return; } this.Series.UninitializeDataPoint(dataPoint); } }
internal override void UpdateDataPointVisibility() { int index1 = 0; bool flag1 = true; bool flag2 = true; DataPointViewState[] dataPointViewStateArray = new DataPointViewState[this.Series.DataPoints.Count]; foreach (DataPoint dataPoint1 in (Collection <DataPoint>) this.Series.DataPoints) { DataPointViewState dataPointViewState = DataPointViewState.Hidden; dataPoint1.IsVisible = false; XYDataPoint xyDataPoint = dataPoint1 as XYDataPoint; if (xyDataPoint != null && this.ChartArea != null && (this.ChartArea.IsTemplateApplied && ValueHelper.CanGraph(xyDataPoint.XValueInScaleUnits)) && ValueHelper.CanGraph(xyDataPoint.YValueInScaleUnits)) { if (DoubleHelper.GreaterOrEqualWithPrecision(xyDataPoint.XValueInScaleUnits, 0.0) && DoubleHelper.LessOrEqualWithPrecision(xyDataPoint.XValueInScaleUnits, 1.0) && (DoubleHelper.GreaterOrEqualWithPrecision(xyDataPoint.YValueInScaleUnits, 0.0) && DoubleHelper.LessOrEqualWithPrecision(xyDataPoint.YValueInScaleUnits, 1.0))) { if (this.Series.Visibility == Visibility.Visible) { flag1 = false; dataPoint1.IsVisible = true; if (!dataPoint1.IsNewlyAdded) { flag2 = false; } dataPointViewState = dataPoint1.IsNewlyAdded ? DataPointViewState.Showing : DataPointViewState.Normal; if (index1 > 0) { DataPoint dataPoint2 = this.Series.DataPoints[index1 - 1]; if (dataPointViewStateArray[index1 - 1] == DataPointViewState.Hidden || dataPointViewStateArray[index1 - 1] == DataPointViewState.Hiding) { dataPoint2.IsVisible = true; dataPointViewStateArray[index1 - 1] = dataPointViewState; this.ChartArea.UpdateSession.Update((IUpdatable)dataPoint2); } } if (index1 < this.Series.DataPoints.Count - 1) { DataPoint dataPoint2 = this.Series.DataPoints[index1 + 1]; if (!this._dataPointsToForceVisibility.Contains(dataPoint2)) { this._dataPointsToForceVisibility.Add(dataPoint2); } } this.ChartArea.UpdateSession.Update((IUpdatable)dataPoint1); } } else if (this._dataPointsToForceVisibility.Contains(dataPoint1)) { dataPoint1.IsVisible = true; dataPointViewState = dataPoint1.IsNewlyAdded ? DataPointViewState.Showing : DataPointViewState.Normal; } } if (this._dataPointsToForceVisibility.Contains(dataPoint1)) { this._dataPointsToForceVisibility.Remove(dataPoint1); } dataPointViewStateArray[index1] = dataPointViewState; ++index1; } this.IsSimplifiedRenderingModeCheckRequired = true; this.CheckSimplifiedRenderingMode(); if (!flag2) { for (int index2 = 0; index2 < EnumerableFunctions.FastCount((IEnumerable)dataPointViewStateArray); ++index2) { if (dataPointViewStateArray[index2] == DataPointViewState.Showing) { dataPointViewStateArray[index2] = DataPointViewState.Normal; } } } if (flag1 && this.Series.DataPoints.Count > 0 && (this.ChartArea != null && this.ChartArea.IsTemplateApplied) && (DoubleHelper.LessWithPrecision(((XYDataPoint)this.Series.DataPoints[0]).XValueInScaleUnits, 0.0) && DoubleHelper.GreaterWithPrecision(((XYDataPoint)this.Series.DataPoints[this.Series.DataPoints.Count - 1]).XValueInScaleUnits, 1.0))) { int index2; for (index2 = 1; index2 < this.Series.DataPoints.Count - 2; ++index2) { if (DoubleHelper.GreaterOrEqualWithPrecision((this.Series.DataPoints[index2] as XYDataPoint).XValueInScaleUnits, 0.0)) { --index2; break; } } XYDataPoint xyDataPoint1 = this.Series.DataPoints[index2] as XYDataPoint; xyDataPoint1.IsVisible = true; dataPointViewStateArray[index2] = xyDataPoint1.IsNewlyAdded ? DataPointViewState.Showing : DataPointViewState.Normal; this.ChartArea.UpdateSession.Update((IUpdatable)xyDataPoint1); XYDataPoint xyDataPoint2 = this.Series.DataPoints[index2 + 1] as XYDataPoint; xyDataPoint2.IsVisible = true; dataPointViewStateArray[index2 + 1] = xyDataPoint2.IsNewlyAdded ? DataPointViewState.Showing : DataPointViewState.Normal; this.ChartArea.UpdateSession.Update((IUpdatable)xyDataPoint2); } int index3 = 0; foreach (DataPoint dataPoint in (Collection <DataPoint>) this.Series.DataPoints) { this.SetDataPointViewState(dataPoint, dataPointViewStateArray[index3]); dataPoint.IsNewlyAdded = false; ++index3; } }
internal override void UpdateDataPointVisibility() { int index1 = 0; DataPointViewState[] dataPointViewStateArray = new DataPointViewState[this.Series.DataPoints.Count]; foreach (DataPoint dataPoint in (Collection<DataPoint>)this.Series.DataPoints) { DataPointViewState dataPointViewState = DataPointViewState.Hidden; dataPoint.IsVisible = false; XYDataPoint dataPointXY = dataPoint as XYDataPoint; if (dataPointXY != null && this.ChartArea != null && (this.ChartArea.IsTemplateApplied && this.CanGraph(dataPointXY)) && this.Series.Visibility == Visibility.Visible) { dataPoint.IsVisible = true; dataPointViewState = dataPoint.IsNewlyAdded ? DataPointViewState.Showing : DataPointViewState.Normal; this.ChartArea.UpdateSession.Update((IUpdatable)dataPoint); } dataPointViewStateArray[index1] = dataPointViewState; ++index1; } this.CheckSimplifiedRenderingMode(); int index2 = 0; foreach (DataPoint dataPoint in (Collection<DataPoint>)this.Series.DataPoints) { this.SetDataPointViewState(dataPoint, dataPointViewStateArray[index2]); dataPoint.IsNewlyAdded = false; ++index2; } }
internal void SetDataPointViewState(DataPoint dataPoint, DataPointViewState newViewState) { if (newViewState == DataPointViewState.Normal || newViewState == DataPointViewState.Showing) { if (dataPoint.ViewState != DataPointViewState.Hidden) return; dataPoint.ViewState = newViewState; } else { if (newViewState != DataPointViewState.Hidden && newViewState != DataPointViewState.Hiding || (dataPoint.ViewState == DataPointViewState.Hidden || dataPoint.ViewState == DataPointViewState.Hiding)) return; dataPoint.ViewState = newViewState; } }