Esempio n. 1
0
        public ExploderViewModel(CalendarGraph CalendarGraph) ///, IEnumerable<Element> Path
        {
            if(CalendarGraph == null)
            {

                return;
            }
            this.CalendarGraph = CalendarGraph;
      
            int i = CalendarGraph.ActiveElement.Depth;
            NavigationMenu.Add(CalendarGraph.ActiveElement);
            var cursor = CalendarGraph.ActiveElement.Parent;

            if(cursor != null)
            {
                while (cursor.Id != -1)
                {

                    NavigationMenu.Add(cursor);

                    cursor = cursor.Parent;
                    if (cursor == null)
                    {
                        break;
                    }
                }

            }
         
            

            SelectedElement = CalendarGraph.ActiveElement;  
        }
Esempio n. 2
0
        public ExploderViewModel(CalendarGraph CalendarGraph) ///, IEnumerable<Element> Path
        {
            if (CalendarGraph == null)
            {
                return;
            }
            this.CalendarGraph = CalendarGraph;

            int i = CalendarGraph.ActiveElement.Depth;

            NavigationMenu.Add(CalendarGraph.ActiveElement);
            var cursor = CalendarGraph.ActiveElement.Parent;

            if (cursor != null)
            {
                while (cursor.Id != -1)
                {
                    NavigationMenu.Add(cursor);

                    cursor = cursor.Parent;
                    if (cursor == null)
                    {
                        break;
                    }
                }
            }



            SelectedElement = CalendarGraph.ActiveElement;
        }
Esempio n. 3
0
        private void UpdateCalendarGraph()
        {
            if (Model == null)
            {
                return;
            }

            CalendarGraph.ColorTable = Model.DailyStatuses.ToDictionary(
                (a) => a.Key, (b) =>
            {
                var rate = Record.TestStatus.GetCorrectRate(b.Value.AnswerCountCorrect, b.Value.AnswerCountTotal);
                return(new SkiaSharp.SKColor((byte)(255 * (1 - rate)), (byte)(255 * rate), 0
                                             , (byte)(255 * Math.Min((float)ConfigStorage.Content.MaxDailyTestCount, b.Value.AnswerCountTotal) / Math.Max(ConfigStorage.Content.MaxDailyTestCount, 1))));
            }
                );
#if DEBUG
            if (ConfigStorage.Content.DemoModeCalendar)
            {
                var rand = new Random();
                CalendarGraph.ColorTable = Enumerable.Range(0, 365).Select(a => DateTime.Now.AddDays(-a).Date).ToDictionary(a => a, a =>
                {
                    var rate  = 0.5 + rand.NextDouble() / 2.0;
                    var rates = rand.NextDouble();
                    return(new SkiaSharp.SKColor((byte)(255 * (1 - rate)), (byte)(255 * rate), 0
                                                 , (byte)(255 * rates)));
                });
            }
#endif
            CalendarGraph.InvalidateSurface();
        }
Esempio n. 4
0
        /// <summary>
        /// Initialize CalendarGraph layout based on requested order code
        /// </summary>
        public void Load()
        {
            if (String.IsNullOrWhiteSpace(RequestedOrderCode))
            {
                RequestedOrderCode = "203467";
            }
            this.Order = GetOrder(RequestedOrderCode);
            if (Order == null)
            {
                return;
            }
            CalendarGraph = new CalendarGraph(Order);

            this.Departments      = GetDivisions();
            this.StandartWorks    = GetStandartWorks();
            this.PreparationWorks = GetPreparationWorks();
            this.MainWorks        = GetMainWorks();
        }
Esempio n. 5
0
        /// <summary>
        /// Initialize CalendarGraph layout based on requested order code
        /// </summary>
        public void Load()
        {
            if (String.IsNullOrWhiteSpace(RequestedOrderCode))
            {
                RequestedOrderCode = "203467";

            }
            this.Order = GetOrder(RequestedOrderCode);
            if(Order == null)
            {
                return;
            } 
            CalendarGraph = new CalendarGraph(Order);  

            this.Departments = GetDivisions();
            this.StandartWorks = GetStandartWorks();
            this.PreparationWorks = GetPreparationWorks();
            this.MainWorks = GetMainWorks();
        }