public JumpersMenuPresenter(IJumpersMenuView view, CompetitorsRuntime jumpers, FlagsData flagsData) { this.view = view; this.jumpers = jumpers; this.flagsData = flagsData; InitEvents(); SetInitValues(); }
public SavesMenuPresenter(ISavesMenuView view, SavesRuntime saves, CalendarsRuntime calendars, CompetitorsRuntime competitorsRuntime) { this.view = view; this.saves = saves; this.calendars = calendars; this.competitorsRuntime = competitorsRuntime; InitEvents(); SetInitValues(); }
public GameSave(string name, Calendar calendar, CompetitorsRuntime competitorsRuntime) { this.name = name; resultsContainer = new ResultsDatabase(); this.calendar = calendar; resultsContainer.eventResults = new EventResults[calendar.events.Count]; resultsContainer.classificationResults = new ClassificationResults[calendar.classifications.Count]; for (var i = 0; i < resultsContainer.classificationResults.Length; i++) { resultsContainer.classificationResults[i] = new ClassificationResults(); } classificationsData = calendar.classifications.Select((it, ind) => new ClassificationData { useBib = false, calendarId = ind, priority = ind, classification = it }) .ToList(); var teamsDict = calendar.teams.Select((it, ind) => (it.countryCode, ind)) .ToDictionary(it => it.countryCode, it => it.ind); competitors = calendar.competitorsIds.Select((item, index) => new CompetitorData { calendarId = index, registered = true, competitor = competitorsRuntime.GetJumperById(item), teamId = teamsDict[competitorsRuntime.GetJumperById(item).countryCode] }) .ToList(); var competitorsByCountry = competitors.ToLookup(it => it.competitor.countryCode, it => it); teams = calendar.teams.Select((item, index) => new TeamData { calendarId = index, registered = true, team = item, competitors = competitorsByCountry[item.countryCode].Select((it, ind) => new CompetitorData { calendarId = it.calendarId, teamId = ind, competitor = it.competitor, registered = it.registered }) .ToList() }).ToList(); for (int i = 0; i < calendar.classifications.Count; i++) { resultsContainer.classificationResults[i] = new ClassificationResults(); var cnt = calendar.classifications[i].eventType == EventType.Individual ? calendar.competitorsIds.Count : calendar.teams.Count; resultsContainer.classificationResults[i].rank = Enumerable.Repeat(1, cnt).ToList(); resultsContainer.classificationResults[i].totalResults = Enumerable.Repeat(0m, cnt).ToList(); resultsContainer.classificationResults[i].totalSortedResults = Enumerable.Range(0, cnt).ToList(); } }
public CalendarEditorJumpersPresenter(ICalendarEditorJumpersView view, CompetitorsRuntime jumpers, FlagsData flagsData, CalendarFactory calendarFactory) { this.view = view; this.jumpers = jumpers; this.flagsData = flagsData; this.calendarFactory = calendarFactory; InitEvents(); SelectJumpers(); PresentList(); }