Example #1
0
        static private clsTaskManager UpdateInfo(ListBox LB, ComboBox CB_Art, ref clsTaskManager.stcTaskManagerEx TaskManagerEx)
        {
            clsTaskManager TaskManager = TaskManagerExToTaskManager(TaskManagerEx); //Создаём исходное положение

            for (int i = TaskManager.Arts.Count() - 1; i < CB_Art.SelectedIndex; i++)
            {
                Array.Resize(ref TaskManager.Arts, TaskManager.Arts.Count() + 1);
                TaskManager.Arts[TaskManager.Arts.Count() - 1] = new clsTManagerArt {
                    Tasks = new clsMTask[0]
                };
            }
            clsMTask[] Tasks = new clsMTask[LB.Items.Count]; //Временный массив для хранения данных
            LB.Items.CopyTo(Tasks, 0);                       //Переносим данные во временный массив
            TaskManager.Arts[CB_Art.SelectedIndex] = new clsTManagerArt {
                Tasks = Tasks
            };                                                       //Перезаписываю установленные таски

            TaskManagerEx = TaskManagerToTaskmanagerEx(TaskManager); //Обновляю список
            return(TaskManager);
        }
Example #2
0
        static private clsTaskManager TaskManagerExToTaskManager(clsTaskManager.stcTaskManagerEx TaskManagerEx)
        {
            if (TaskManagerEx.Arts == null)
            {
                return new clsTaskManager {
                           Arts = new clsTManagerArt[0]
                }
            }
            ;
            clsMTask[]     Task;
            clsTaskManager TaskManager = new clsTaskManager {
                Arts = new clsTManagerArt[TaskManagerEx.Arts.Count()]
            };

            for (int i = 0; i < TaskManagerEx.Arts.Count(); i++)
            {
                Task = new clsMTask[0];
                for (int k = 0; k < TaskManagerEx.Arts[i].Tasks.Count(); k++)
                {
                    Array.Resize(ref Task, Task.Count() + 1);
                    Task[Task.Count() - 1]      = new clsMTask();
                    Task[Task.Count() - 1].Grp  = 1;
                    Task[Task.Count() - 1].Item = (int)TaskManagerEx.Arts[i].Tasks[k].DoW;
                    Task[Task.Count() - 1].Text = "* " + Regex.Replace(CultureInfo.CreateSpecificCulture("ru-RU").DateTimeFormat.GetDayName(TaskManagerEx.Arts[i].Tasks[k].DoW), "^[\\w]", m => m.Value.ToUpper());

                    for (int x = 0; x < TaskManagerEx.Arts[i].Tasks[k].StartTS.Count(); x++)
                    {
                        Array.Resize(ref Task, Task.Count() + 1);
                        Task[Task.Count() - 1]      = new clsMTask();
                        Task[Task.Count() - 1].Grp  = 2;
                        Task[Task.Count() - 1].Item = (int)(TaskManagerEx.Arts[i].Tasks[k].StartTS[x] == new TimeSpan() && TaskManagerEx.Arts[i].Tasks[k].StopTS[x] == new TimeSpan() ? clsTaskManager.TaskEvent.NotToday : clsTaskManager.TaskEvent.Time);
                        Task[Task.Count() - 1].Text = "- " + (Task[Task.Count() - 1].Item == 0 ? "Не ходить" : "Участвовать с " + TaskManagerEx.Arts[i].Tasks[k].StartTS[x].ToString("%h\\:%m") + " до " + TaskManagerEx.Arts[i].Tasks[k].StopTS[x].ToString("%h\\:%m"));
                    }
                }
                TaskManager.Arts[i] = new clsTManagerArt {
                    Tasks = Task
                };
            }
            return(TaskManager);
        }