public void addToContext(BaseObject obj, GridViewModel r) { int index = checkExists((int)r.ID); if (index == -1) { ProfileViewModel vm = null; if (obj is Player) { vm = new ProfilePlayerViewModel(); Player player = (Player)obj; PlayerGridViewModel _r = (PlayerGridViewModel)r; ((ProfilePlayerViewModel)vm).setProfileViewModel(ref player, ref _r); } else if (obj is Staff) { vm = new ProfileStaffViewModel(); Staff staff = (Staff)obj; StaffGridViewModel _r = (StaffGridViewModel)r; ((ProfileStaffViewModel)vm).setProfileViewModel(ref staff, ref _r); } else if (obj is Team) { vm = new ProfileTeamViewModel(); Team team = (Team)obj; TeamGridViewModel _r = (TeamGridViewModel)r; ((ProfileTeamViewModel)vm).setProfileViewModel(ref team, ref _r); } data.Add(vm); if (data.Count > 12) { data.RemoveAt(0); } } }
public void currentResultWonder(TeamGridViewModel newRow) { if (newRow != null) { dataTable.Add(newRow); } this.vm.results.Text = dataTable.Count + " " + globalFuncs.localization.SearchingResults[ScoutLocalization.SR_WONDERTEAMENTRIESFOUND] + "."; this.windowMain.vm.tabteams.TextBlockText = globalFuncs.localization.WindowMainLabels[2] + " (" + dataTable.Count + ")"; }
private void dataGrid_LoadingRow(object sender, DataGridRowEventArgs e) { TeamGridViewModel item = e.Row.Item as TeamGridViewModel; if (item != null) { if (finishedLoading) { if (item.TeamState == TEAMSTATE.TS_NATIONAL) { e.Row.Foreground = App.Current.Resources["TeamNationalForeground"] as SolidColorBrush; } } } }
private void addToContext(int ID) { if (windowProfile == null) { return; } List <TeamGridViewModel> rows = new List <TeamGridViewModel>(); for (int i = 0; i < this.dataGrid.SelectedItems.Count; ++i) { rows.Add((TeamGridViewModel)this.dataGrid.SelectedItems[i]); } foreach (DictionaryEntry entry in globalFuncs.allClubs) { Club club = (Club)entry.Value; int curTeam = 0; //for (curTeam = 0; curTeam < club.Teams.Count; ++curTeam) //{ // if (club.Teams[curTeam].Type == TeamTypeEnum.First) // break; // else if (club.Teams[curTeam].Type == TeamTypeEnum.Amateur) // break; // //else if (club.Teams[curTeam].Type == TeamTypeEnum.Empty) // // break; //} if (curTeam == club.Teams.Count) { --curTeam; } TeamGridViewModel r = new TeamGridViewModel(); this.addTeamToGrid(club, ref r, curTeam); windowProfile.addToContext(club.Teams[curTeam], r); break; } windowProfile.finishedAdding(); }
private void addToContext() { if (windowProfile == null) { return; } int selectedRows = this.dataGrid.SelectedItems.Count; int curSelectedRows = 0; if (selectedRows > 0) { List <TeamGridViewModel> rows = new List <TeamGridViewModel>(); for (int i = 0; i < this.dataGrid.SelectedItems.Count; ++i) { rows.Add((TeamGridViewModel)this.dataGrid.SelectedItems[i]); } foreach (Team team in context.fm.Teams) { int ID = team.ID; for (int i = 0; i < rows.Count; ++i) { TeamGridViewModel r = rows[i]; if (ID == (int)rows[i].ID) { windowProfile.addToContext(team, r); ++curSelectedRows; break; } } if (curSelectedRows > selectedRows) { break; } } windowProfile.finishedAdding(); } }
public void LoadTeamPage() { ActiveItem = new TeamGridViewModel(); this.SetCreateMode(teamCommand); }
public void addTeamToGrid(Club club, ref TeamGridViewModel newRow, int curTeam) { PreferencesSettings settings = GlobalSettings.getSettings().curPreferencesSettings; newRow.ID = club.ID; newRow.Name = club.Name.ToString(); if (club.Country == null) { newRow.Nation = club.Name; } else { newRow.Nation = club.Country.Name; } newRow.Reputation = club.Teams[curTeam].Reputation; newRow.Status = club.ClubStatus.ToString(); if (club.Teams[curTeam].Stadium != null) { newRow.Stadium = club.Teams[curTeam].Stadium.Name; newRow.Decay = club.Teams[curTeam].Stadium.Decay; newRow.FieldWidth = club.Teams[curTeam].Stadium.FieldWidth; newRow.FieldLength = club.Teams[curTeam].Stadium.FieldLength; newRow.CurrentCapacity = club.Teams[curTeam].Stadium.StadiumCapacity; newRow.SeatingCapacity = club.Teams[curTeam].Stadium.SeatingCapacity; newRow.ExpansionCapacity = club.Teams[curTeam].Stadium.ExpansionCapacity; newRow.UsedCapacity = club.Teams[curTeam].Stadium.UsedCapacity; } else { newRow.Stadium = " None"; newRow.Decay = 0; newRow.FieldWidth = 0; newRow.FieldLength = 0; newRow.CurrentCapacity = 0; newRow.SeatingCapacity = 0; newRow.ExpansionCapacity = 0; newRow.UsedCapacity = 0; } if (club.Finances.RemainingTransferBudget != 29476012) { newRow.TransferBudget = (int)(club.Finances.SeasonTransferBudget * settings.currencyMultiplier.multiplier); newRow.RemainingBudget = (int)(club.Finances.RemainingTransferBudget * settings.currencyMultiplier.multiplier); newRow.WageBudget = (int)(club.Finances.WageBudget * settings.currencyMultiplier.multiplier); newRow.WageUsed = (int)(club.Finances.UsedWage * settings.currencyMultiplier.multiplier); } else { newRow.TransferBudget = 0; newRow.RemainingBudget = 0; newRow.WageBudget = 0; newRow.WageUsed = 0; } newRow.BudgetBalance = (int)(club.Finances.Balance * settings.currencyMultiplier.multiplier); newRow.TransferRevenueAvailable = (int)(club.Finances.TransferRevenueMadeAvailable * 0.01f); newRow.CurrentAffiliatedClubs = club.TeamNumber; newRow.MaxAffiliatedClubs = club.MaxAffiliatedClubNumber; newRow.TrainingFacilities = club.TrainingFacilities; newRow.YouthFacilities = club.YouthFacilities; newRow.MaximumAttendance = club.MaximumAttendance; newRow.AverageAttendance = club.AverageAttendance; newRow.MinimumAttendance = club.MinimumAttendance; }
public void retrieveFieldsWonder() { CurrentResultDelegate currentResultDelegate = new CurrentResultDelegate(currentResultWonder); FinalResultDelegate finalResultDelegate = new FinalResultDelegate(finalResultWonder); PreferencesSettings settings = GlobalSettings.getSettings().curPreferencesSettings; TEAMSTATE teamState = TEAMSTATE.TS_NONNATIONAL; TeamGridViewModel newRow; DateTime timerStart = DateTime.Now; double counter = 0; double total = 100.0 / (double)globalFuncs.allClubs.Count; foreach (DictionaryEntry entry in globalFuncs.allClubs) { progressBarValue = counter * total; ++counter; if (stopSearching) { searching = false; stopSearching = false; break; } Club club = (Club)entry.Value; // check empty name if (club.Name.Length == 0) { continue; } int curTeam = 0; //for (curTeam = 0; curTeam < club.Teams.Count; ++curTeam) //{ // if (club.Teams[curTeam].Type == TeamTypeEnum.First) // break; // else if (club.Teams[curTeam].Type == TeamTypeEnum.Amateur) // break; // //else if (club.Teams[curTeam].Type == TeamTypeEnum.Empty) // // break; //} if (curTeam == club.Teams.Count) { --curTeam; } teamState = TEAMSTATE.TS_NONNATIONAL; if (club.Country != null) { if (globalFuncs.localization.regionsNative.Contains(club.Country.Name)) { teamState = TEAMSTATE.TS_NATIONAL; } } // check reputation if (club.Teams[curTeam].Reputation <= settings.wonderteamsMinRep) { continue; } newRow = new TeamGridViewModel(); newRow.TeamState = teamState; addTeamToGrid(club, ref newRow, curTeam); //dataTable.Add(newRow); this.Dispatcher.BeginInvoke( System.Windows.Threading.DispatcherPriority.Normal, currentResultDelegate, newRow); } this.Dispatcher.BeginInvoke( System.Windows.Threading.DispatcherPriority.Normal, finalResultDelegate); }
public void retrieveFields() { CurrentResultDelegate currentResultDelegate = new CurrentResultDelegate(currentResult); FinalResultDelegate finalResultDelegate = new FinalResultDelegate(finalResult); PreferencesSettings settings = GlobalSettings.getSettings().curPreferencesSettings; List <string> name_substrings = new List <string>(); bool empty_name = globalFuncs.multiEntryTextBox(ref name_substrings, searchUI.name); List <string> nationality_substrings = new List <string>(); bool empty_nationality = globalFuncs.multiEntryTextBox(ref nationality_substrings, searchUI.nation); List <string> stadium_substrings = new List <string>(); bool empty_stadium = globalFuncs.multiEntryTextBox(ref stadium_substrings, searchUI.stadium); TEAMSTATE teamState = TEAMSTATE.TS_NONNATIONAL; TeamGridViewModel newRow; DateTime timerStart = DateTime.Now; Club club = null; string clubName = ""; string clubNationality = ""; string clubStadium = ""; double counter = 0; double total = 100.0 / (double)globalFuncs.allClubs.Count; foreach (DictionaryEntry entry in globalFuncs.allClubs) { progressBarValue = counter * total; ++counter; if (stopSearching) { searching = false; stopSearching = false; break; } club = (Club)entry.Value; // check empty name if (club.Name.Length == 0 && club.Country != null) { System.Diagnostics.Debug.WriteLine(club.Name); } if (club.Name.Length == 0 && club.Country != null) { continue; } // check name if (!empty_name) { clubName = club.Name.ToLower(); globalFuncs.specialCharactersReplacement(ref clubName); int no_of_successes = 0; foreach (string str in name_substrings) { if (clubName.Contains(str)) { ++no_of_successes; } } if (no_of_successes != name_substrings.Count) { continue; } } teamState = TEAMSTATE.TS_NONNATIONAL; if (club.Country != null) { if (globalFuncs.localization.regionsNative.Contains(club.Country.Name)) { teamState = TEAMSTATE.TS_NATIONAL; } } // check nationality if (!empty_nationality) { if (club.Country != null) { if (teamState == TEAMSTATE.TS_NONNATIONAL) { clubNationality = club.Country.Name.ToLower(); } else { clubNationality = club.Name.ToLower(); } int no_of_successes = 0; foreach (string str in nationality_substrings) { if (clubNationality.Contains(str)) { ++no_of_successes; } } if (no_of_successes != nationality_substrings.Count) { continue; } if (teamState == TEAMSTATE.TS_NATIONAL) { clubNationality = club.Country.Name.ToLower(); } } else { globalFuncs.logging.update("Error: Not added " + club.Name + ". Reason: Country null"); } } // check type if (searchUI.teamtypeIndex > 0) { if (searchUI.teamtypeIndex == 1 && teamState == TEAMSTATE.TS_NONNATIONAL) { continue; } else if (searchUI.teamtypeIndex == 2 && teamState == TEAMSTATE.TS_NATIONAL) { continue; } } int curTeam = 0; //for (curTeam = 0; curTeam < club.Teams.Count; ++curTeam) //{ // if (club.Teams[curTeam].Type == TeamTypeEnum.First) // break; // else if (club.Teams[curTeam].Type == TeamTypeEnum.Amateur) // break; // //else if (club.Teams[curTeam].Type == TeamTypeEnum.Empty) // // break; //} if (curTeam == club.Teams.Count) { --curTeam; } if (curTeam < 0) { continue; } // check reputation if (searchUI.reputationIndex > 0) { if (searchUI.reputationIndex == 1 && club.Teams[curTeam].Reputation < 8000) { continue; } else if (searchUI.reputationIndex == 2 && (!(club.Teams[curTeam].Reputation > 5000 && club.Teams[curTeam].Reputation <= 8000))) { continue; } else if (searchUI.reputationIndex == 3 && (!(club.Teams[curTeam].Reputation > 3000 && club.Teams[curTeam].Reputation <= 5000))) { continue; } else if (searchUI.reputationIndex == 4 && (!(club.Teams[curTeam].Reputation > 0 && club.Teams[curTeam].Reputation <= 3000))) { continue; } } // check region if (searchUI.regionIndex > 0 && club.Country != null) { if (teamState == TEAMSTATE.TS_NONNATIONAL) { if (!searchUI.regionItem.Contains(club.Country.Continent.Name)) { continue; } } else { if (!searchUI.regionItem.Contains(club.Country.Name)) { continue; } } } // check stadium if (!empty_stadium) { if (club.Teams[curTeam].Stadium != null) { clubStadium = club.Teams[curTeam].Stadium.Name.ToLower(); globalFuncs.specialCharactersReplacement(ref clubStadium); int no_of_successes = 0; foreach (string str in stadium_substrings) { if (clubStadium.Contains(str)) { ++no_of_successes; } } if (no_of_successes != stadium_substrings.Count) { continue; } } else { globalFuncs.logging.update("Error: No stadium found for " + club.Name); continue; } } // check transfer budget if (searchUI.transferBudgetMin > 0) { if (club.Finances.SeasonTransferBudget < searchUI.transferBudgetMin || club.Finances.SeasonTransferBudget > searchUI.transferBudgetMax) { continue; } } else { if (club.Finances.SeasonTransferBudget > searchUI.transferBudgetMax) { continue; } } if (searchUI.transferBudgetMin > 0) { if (club.Finances.WageBudget < searchUI.wageBudgetMin || club.Finances.WageBudget > searchUI.wageBudgetMax) { continue; } } else { if (club.Finances.WageBudget < searchUI.wageBudgetMin) { continue; } } newRow = new TeamGridViewModel(); newRow.TeamState = teamState; addTeamToGrid(club, ref newRow, curTeam); //dataTable.Add(newRow); this.Dispatcher.BeginInvoke( System.Windows.Threading.DispatcherPriority.Normal, currentResultDelegate, newRow); } this.Dispatcher.BeginInvoke( System.Windows.Threading.DispatcherPriority.Normal, finalResultDelegate); }