Ejemplo n.º 1
0
        private void AddBlock(Token block)
        {
            // Смотрим длительность
            double duration = (block.ProcessEndTime - block.ProcessStartTime);

            if (duration == 0)
            {
                duration = 1;
            }

            if (MinDuration == 0)
            {
                MinDuration = 1;
            }
            int count = Convert.ToInt32(duration / MinDuration); // Количество блоков, которые создадим (чтобы отобразить длительность)

            if (count > 5)
            {
                count = 5;            // Чтобы не выводить миллиард блоков
            }
            for (int i = 0; i < count; i++)
            {
                //Создаём блок
                ProcedureWPF wpf = new ProcedureWPF(new Point(this.baseX + i * ProcedureWPF.DEFAULT_WIDTH, this.baseY), block.ProcessedByBlock)
                {
                    IsSelectable = false
                };
                wpf.Freeze();
                // Добавляем на рабочую область
                MainWindow.Children.Add(wpf);
                wpf.IsSelectable = false;
            }

            // Передвигаем следующий
            baseX += count * ProcedureWPF.DEFAULT_WIDTH + 15;
            baseY += ProcedureWPF.DEFAULT_HEIGHT + 15;
        }