private static void DodajZdarzenieZmiennej(HCPSTokenizer tokenizer, List <Zdarzenie> zdarzenia, ZmianaZmiennej zmianaZmiennej) { Zdarzenie zzz = zdarzenia.Find(delegate(Zdarzenie o) { if (o is ZmianaZmiennej) { return(((ZmianaZmiennej)o).Zmienna.Nazwa == zmianaZmiennej.Zmienna.Nazwa); } return(false); }); if (zzz != null) { // połączenie zdarzeń ((ZmianaZmiennej)zzz).Akcje = (Akcje)PolaczAkcje(((ZmianaZmiennej)zzz).Akcje, zmianaZmiennej.Akcje); } else { zdarzenia.Add(zmianaZmiennej); } }
private static void DodajZdarzenieZmiennych(HCPSTokenizer tokenizer, List <Zdarzenie> zdarzenia, ZmianaZmiennych zmianaZmiennych) { Zdarzenie zzz2 = zdarzenia.Find(delegate(Zdarzenie o) { if (o is ZmianaZmiennych) { // sprawdzenie czy lista zmiennych jest taka sama if (zmianaZmiennych.Zmienne.Length == ((ZmianaZmiennych)o).Zmienne.Length) { int ident = 0; foreach (Zmienna z1 in zmianaZmiennych.Zmienne) { foreach (Zmienna z2 in ((ZmianaZmiennych)o).Zmienne) { if (z2.Nazwa == z1.Nazwa) { ident++; break; } } } return(ident == zmianaZmiennych.Zmienne.Length && zmianaZmiennych.Minimum == ((ZmianaZmiennych)o).Minimum); } return(false); } return(false); }); if (zzz2 != null) { // połączenie zdarzeń ((ZmianaZmiennych)zzz2).Akcje = (Akcje)PolaczAkcje(((ZmianaZmiennych)zzz2).Akcje, zmianaZmiennych.Akcje); } else { zdarzenia.Add(zmianaZmiennych); } }
private static void DodajZdarzenie(HCPSTokenizer tokenizer, List <Zdarzenie> zdarzenia, Zdarzenie zdarzenie) { if (zdarzenie is ZmianaZmiennej) { DodajZdarzenieZmiennej(tokenizer, zdarzenia, (ZmianaZmiennej)zdarzenie); return; } if (zdarzenie is ZmianaZmiennych) { DodajZdarzenieZmiennych(tokenizer, zdarzenia, (ZmianaZmiennych)zdarzenie); return; } throw new ParsingScriptException(string.Format(UI.Language.Instance.GetString(UI.UIStrings.UnsupportedEventType), zdarzenie)); }