public int CompareTo(object obj) { Pretekar dalsi = (Pretekar)obj; if (this.pocetKol > dalsi.pocetKol) { return(-1); } if (this.pocetKol < dalsi.pocetKol) { return(1); } else { if (this.casPoslednehoKola < dalsi.casPoslednehoKola) { return(-1); } if (this.casPoslednehoKola > dalsi.casPoslednehoKola) { return(1); } else { return(0); } } }
public void Penalizacia(Pretekar pretekar, string casovePenale) { if (pretekar == null) { throw new ArgumentException("Nie je zvoleny pretekar!"); } else if (casovePenale == string.Empty) { throw new ArgumentException("Prazdne pole pre penalizaciu!"); } else if (!TimeSpan.TryParse(casovePenale, out TimeSpan casovePenale1) || casovePenale1.Days > 0 || (casovePenale1.Hours < 0 || casovePenale1.Minutes < 0 || casovePenale1.Seconds < 0 || casovePenale1.Milliseconds < 0)) { throw new ArgumentException("Zly ciselny format pre penalizaciu!"); } else { pretekar.casPoslednehoKola += casovePenale1; pretekar.casPoslednehoKolaStr = $"{pretekar.casPoslednehoKola.Hours }:{pretekar.casPoslednehoKola.Minutes}:{pretekar.casPoslednehoKola.Seconds},{pretekar.casPoslednehoKola.Milliseconds / 10}"; pretekar.casovePenale += casovePenale1; pretekar.casovePenaleStr = $"{pretekar.casovePenale.Hours }:{pretekar.casovePenale.Minutes}:{pretekar.casovePenale.Seconds},{pretekar.casovePenale.Milliseconds / 10}"; PriemernaRychlost(pretekar); pretekar.OnPropertyChanged("casovePenaleStr"); } }
private void OKButton2_Click(object sender, RoutedEventArgs e) { string pohlavie; if (muzRadioButton.IsChecked == true) { pohlavie = "Muz"; } else { pohlavie = "Zena"; } try { Pretekar pretekar = new Pretekar(menoTextBox.Text, vekTextBox.Text, pohlavie, krajinaComboBox.Text); if (pretekar.pohlavie == "Muz") { spravcaPretekarov1.PridatMuza(pretekar); spravcaPretekarov1.Uloz(spravcaPretekarov1.zoznamMuzov, spravcaPretekarov1.cestaMuzi); //spravcaPretekarov1.UlozObservable(spravcaPretekarov1.premennyZoznamMuzov, spravcaPretekarov1.cestaPremenniMuzi); } else { spravcaPretekarov1.PridatZenu(pretekar); spravcaPretekarov1.Uloz(spravcaPretekarov1.zoznamZien, spravcaPretekarov1.cestaZeny); //spravcaPretekarov1.UlozObservable(spravcaPretekarov1.premennyZoznamZien, spravcaPretekarov1.cestaPremenneZeny); } Close(); } catch (Exception ex) { MessageBox.Show(ex.Message, "Chyba", MessageBoxButton.OK, MessageBoxImage.Exclamation); } }
public void PriemernaRychlost(Pretekar pretekar) { if (pretekar.casPoslednehoKola == new TimeSpan(0, 0, 0, 0, 0)) { pretekar.priemernaRychlost = 0; } else { pretekar.priemernaRychlost = Math.Round(((pretekar.pocetKol * dlzkaKola) / ((pretekar.casPoslednehoKola.TotalHours * 3600) + (pretekar.casPoslednehoKola.TotalMinutes * 60) + (pretekar.casPoslednehoKola.TotalSeconds) + (pretekar.casPoslednehoKola.TotalMilliseconds / 1000))), 2); pretekar.OnPropertyChanged("priemernaRychlost"); } }
public void PridatKolo(Pretekar pretekar) { if (pretekar == null) { throw new ArgumentException("Nie je zvoleny pretekar!"); } else if (pretekar.pocetKol == pocetKol) { throw new ArgumentException("Pretekar uz odbehol posledne kolo pretekov. Nemozno mu pridat kolo!"); } else { pretekar.pocetKol++; pretekar.OnPropertyChanged("pocetKol"); } }
public void DiskvalifikovatPretekara(Pretekar pretekar, List <Pretekar> pretekars, ObservableCollection <Pretekar> pretekaris) { if (pretekar == null) { throw new ArgumentException("Nie je zvoleny pretekar!"); } else if (pretekars == null) { throw new ArgumentException("Zoznam pretekarov je prazdny!"); } else { pretekars.Remove(pretekar); ZoradZoznam(pretekars, pretekaris); } }
private void PenalizaciaZenaButton_Click(object sender, RoutedEventArgs e) { try { Pretekar bezec = (Pretekar)zenyListBox.SelectedItem; spravcaPretekov1.zoznamPretekov[0].Penalizacia(bezec, trestneSekundyZenaTetxBox.Text); spravcaPretekov1.zoznamPretekov[0].PriemernaRychlost(bezec); spravca.ZoradZoznam(spravca.zoznamZien, spravca.premennyZoznamZien); spravcaPretekov1.zoznamPretekov[0].UrciPoradie(bezec, spravca.premennyZoznamZien); muziListBox.SelectedItem = bezec; spravca.Uloz(spravca.zoznamZien, spravca.cestaZeny); //spravca.UlozObservable(spravca.premennyZoznamZien, spravca.cestaPremenneZeny); } catch (Exception ex) { MessageBox.Show(ex.Message, "Chyba", MessageBoxButton.OK, MessageBoxImage.Exclamation); } }
private void PridajKoloZenaButton_Click(object sender, RoutedEventArgs e) { try { Pretekar bezec = (Pretekar)zenyListBox.SelectedItem; spravcaPretekov1.zoznamPretekov[0].PridatKolo(bezec); spravcaPretekov1.zoznamPretekov[0].UrcenieCasuPoslednehoKola(bezec, casovacView.stopwatch.Elapsed); spravcaPretekov1.zoznamPretekov[0].PriemernaRychlost(bezec); spravca.ZoradZoznam(spravca.zoznamZien, spravca.premennyZoznamZien); spravcaPretekov1.zoznamPretekov[0].UrciPoradie(bezec, spravca.premennyZoznamZien); zenyListBox.SelectedItem = bezec; spravca.Uloz(spravca.zoznamZien, spravca.cestaZeny); //spravca.UlozObservable(spravca.premennyZoznamZien, spravca.cestaPremenneZeny); } catch (Exception ex) { MessageBox.Show(ex.Message, "Chyba", MessageBoxButton.OK, MessageBoxImage.Exclamation); } }
public void UrciPoradie(Pretekar pretekar, ObservableCollection <Pretekar> pretekari) { pretekar.poradie = pretekari.IndexOf(pretekar) + 1; pretekar.OnPropertyChanged("poradie"); }
public void UrcenieCasuPoslednehoKola(Pretekar pretekar, TimeSpan CasPoslednehoKola) { pretekar.casPoslednehoKola = CasPoslednehoKola; pretekar.casPoslednehoKolaStr = $"{pretekar.casPoslednehoKola.Hours }:{pretekar.casPoslednehoKola.Minutes}:{pretekar.casPoslednehoKola.Seconds},{pretekar.casPoslednehoKola.Milliseconds / 10}"; pretekar.OnPropertyChanged("casPoslednehoKolaStr"); }
public void PridatZenu(Pretekar pretekar) { zoznamZien.Add(pretekar); premennyZoznamZien.Add(pretekar); ZoradZoznam(zoznamZien, premennyZoznamZien); }
public void PridatMuza(Pretekar pretekar) { zoznamMuzov.Add(pretekar); //premennyZoznamMuzov.Add(pretekar); ZoradZoznam(zoznamMuzov, premennyZoznamMuzov); }