private void Remove(ViewItemSchedule schedule) { if (Schedules != null) { Schedules.Remove(schedule); } }
private void Add(ViewItemSchedule schedule) { schedule.Class = this; if (Schedules != null) { Schedules.InsertSorted(schedule); } }
public List <ViewItemSchedule[]> GetSchedulesGroupedBySharedEditingValues() { List <ViewItemSchedule[]> answer = new List <ViewItemSchedule[]>(); List <ViewItemSchedule> copiedSchedules = Schedules.ToList(); while (copiedSchedules.Count > 0) { ViewItemSchedule s = copiedSchedules[0]; List <ViewItemSchedule> group = new List <ViewItemSchedule>() { s }; copiedSchedules.RemoveAt(0); for (int i = 0; i < copiedSchedules.Count; i++) { if (ScheduleCreator.SharesSameEditingValues(s, copiedSchedules[i])) { // Make sure we don't add duplicates if (!group.Exists(gItem => gItem.Identifier == copiedSchedules[i].Identifier)) { group.Add(copiedSchedules[i]); } // Remove regardless if there was a duplicate for some reason copiedSchedules.RemoveAt(i); i--; } } answer.Add(group.ToArray()); } return(answer); }
private void SingleDayControl_ScheduleItemClick(object sender, PowerPlannerAppDataLibrary.ViewItems.ViewItemSchedule e) { ScheduleItemClick?.Invoke(this, e); }
private void _dayPagerControl_ScheduleItemClick(object sender, PowerPlannerAppDataLibrary.ViewItems.ViewItemSchedule e) { ViewModel.ViewClass(e.Class); }
public ViewItemSchedule[] GetGroupOfSchedulesWithSharedEditingValues(ViewItemSchedule scheduleToGroupFrom) { var allGroups = GetSchedulesGroupedBySharedEditingValues(); return(allGroups.FirstOrDefault(i => i.Contains(scheduleToGroupFrom))); }