private void ShowThisMonth(object sender, RoutedEventArgs e)
        {
            var date = AllSeriesUnited.DiagramData.Last().Key;

            DiagramDataExtremums.MinDate = new DateTime(date.Year, date.Month, 1);
            DiagramDataExtremums.MaxDate = date;
            ExtractDataBetweenLimits();
            DiagramDataExtremums = CurrentSeriesUnited.FindDataExtremums(DiagramMode);
            Draw();
        }
        private void ChangeDiagramForNewStyle(DiagramMode newDiagramMode)
        {
            DiagramMode     = newDiagramMode;
            AllSeriesUnited = new DiagramDataSeriesUnited(AllDiagramData);
            AllSeriesUnited.StackAllData(newDiagramMode, GroupInterval);

            ExtractDataBetweenLimits();
            DiagramDataExtremums = CurrentSeriesUnited.FindDataExtremums(DiagramMode);
            Draw();
        }
 public void MoveDiagramData(int horizontalPoints, int verticalPoints)
 {
     if (!_diagramDataPanAndZoomer.MoveLimits(AllSeriesUnited, Calculator, horizontalPoints, verticalPoints, ref DiagramDataExtremums))
     {
         return;
     }
     ExtractDataBetweenLimits();
     DiagramDataExtremums = CurrentSeriesUnited.FindDataExtremums(DiagramMode);
     Draw();
 }
 public void ZoomDiagram(int delta)
 {
     if (!_diagramDataPanAndZoomer.ZoomLimits(CurrentSeriesUnited, GroupInterval, delta, ref DiagramDataExtremums))
     {
         return;
     }
     ExtractDataBetweenLimits();
     DiagramDataExtremums = CurrentSeriesUnited.FindDataExtremums(DiagramMode);
     Draw();
 }
 public void ChangeLine()
 {
     if (DiagramMode != DiagramMode.SeparateLines)
     {
         return;
     }
     if (CurrentSeriesUnited.ActiveLine == CurrentSeriesUnited.SeriesCount - 1)
     {
         CurrentSeriesUnited.ActiveLine = 0;
     }
     else
     {
         CurrentSeriesUnited.ActiveLine++;
     }
     DiagramDataExtremums = CurrentSeriesUnited.FindDataExtremums(DiagramMode);
     Draw();
 }
        private void ChangeDiagramForNewGrouping(Every groupPeriod)
        {
            GroupInterval   = groupPeriod;
            AllSeriesUnited = new DiagramDataSeriesUnited(AllDiagramData);
            AllSeriesUnited.GroupAllData(groupPeriod, DiagramMode);

            if (groupPeriod == Every.Year)
            {
                DefineYearsLimits();
            }
            else
            {
                DiagramDataExtremums.MaxDate = new DateTime(DiagramDataExtremums.MaxDate.Year, 12, 31);
            }

            ExtractDataBetweenLimits();
            DiagramDataExtremums = CurrentSeriesUnited.FindDataExtremums(DiagramMode);
            Draw();
        }
 public void ShowAll()
 {
     CurrentSeriesUnited.DiagramData = new SortedList <DateTime, List <double> >(AllSeriesUnited.DiagramData);
     DiagramDataExtremums            = CurrentSeriesUnited.FindDataExtremums(DiagramMode);
     Draw();
 }
 public void ZoomRectFromDiagramData(Point leftTop, Point rightBottom)
 {
     CurrentSeriesUnited.DiagramData = _diagramDataPanAndZoomer.FindLimitsForRect(CurrentSeriesUnited.DiagramData, Calculator, leftTop, rightBottom);
     DiagramDataExtremums            = CurrentSeriesUnited.FindDataExtremums(DiagramMode);
     Draw();
 }